Reputation:
I installed "Class Dump" from Cydia to get application header files.
But there is a problem.
I can use class-dump in default app.
For example, I ran this command:
class-dump -H /Applications/MobileSafari.app/MobileSafari -o /Headers/safari
and could get header files in "/Headers/safari/".
But AppStore app, for example,
I ran this command:class-dump -H /var/mobile/Applications/BFF...../Dropbox.app/Dropbox -o /Headers/dropbox
and terminal works, but garbled characters appeared (ScreenShot) and then terminal crashed.
How can I get AppStore app header files?
Upvotes: 5
Views: 12072
Reputation: 16467
If you have a Jailbroken iOS device, you can install Frida on the device, then install Grapefruit on your mac.
Once Grapefruit is running and you have connected to your iOS device, you will be able to see all of the classes (and Frameworks) used in any app on your device.
Upvotes: 0
Reputation: 4848
You have to decrypt these applications because all applications from the AppStore are encrypted and you obviously can't class-dump encrypted applications.
So, without cracking anything, you can just use dumpdecrypted from Stefan Esser in order to decrypt the application (then keep the decrypted binary for yourself!).
You'll just have to compile dumpdecrypted yourself, then send dumpdecrypted.dylib to your device and use it :
DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/mobile/Applications/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/Scan.app/Scan mach-o decryption dumper
Upvotes: 3
Reputation: 9570
All AppStore apps are encrypted. In order to use class-dump you need to decrypt (crack) them. You have two options:
On the other hand, built-in apps like Safari are not encrypted.
Upvotes: 8