How to class-dump AppStore app

2019-04-08 10:33发布

问题:

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?

回答1:

All AppStore apps are encrypted. In order to use class-dump you need to decrypt (crack) them. You have two options:

  1. Download cracked ipa of the app. Cracked apps are already decrypted and you can class-dump or disassemble them. This will work only for paid apps. You will not find cracked free apps for obvious reasons.
  2. Crack it yourself. There are tools in Cydia for that - Rasticrac, for example. They are easy to use and will do all the work. When finished you will get cracked ipa. For free apps it's your only option.

On the other hand, built-in apps like Safari are not encrypted.



回答2:

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