Can .ipa file be reverse engineered if you have the dSYM?

Some code analysis tools require you to submit your .ipa along with your .dSYM file.

Is sending the .dSYM file along with the .ipa a risk for reverse-engineering of the app? I mean, can someone get to the source code if he has both the .ipa and the .dSYM?


It's not that hard to reverse-engineer applications even without symbols.

Here's what recent versions of IDA can show you without the .dSYM:

IDA iPhone Objective-C反汇编

And if you have the Hex-Rays decompiler, you can get something like:

// CKMessagesController - (void)mailComposeController:(id) didFinishWithResult:(int) error:(id) 
void __cdecl -[CKMessagesController mailComposeController:didFinishWithResult:error:](struct CKMessagesController *self, SEL a2, id a3, int a4, id a5)
{
  struct CKMessagesController *v5; // r4@1

  v5 = self;
  objc_msgSend(self, "dismissViewControllerAnimated:completion:", 1, 0);
  objc_msgSend((void *)v5->_mailComposeController, "release");
  v5->_mailComposeController = 0;
}

Having the .dSYM will definitely make the task even easier: not only ALL the function and variable names will be there (including private ones), but probably the full types as well (structures, classes and enums). You won't be able to get the source code, but probably something pretty close to it.


不,他不会得到源代码,但知道符号名称可能有助于理解编译/反编译的代码。

链接地址: http://www.djcxy.com/p/64934.html

上一篇: ssh远程主机标识已更改

下一篇: 如果您有dSYM,可以将.ipa文件进行反向设计吗?