首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GDB调试保护

GDB调试保护
EN

Stack Overflow用户
提问于 2013-05-20 04:39:52
回答 1查看 377关注 0票数 1

我正在尝试逆向工程的cydia应用程序(二进制)和使用GDB与IDA Pro。

似乎有一些调试保护,因为main()不在bt堆栈中,并且我无法访问任何函数,class-dump-z和IDA Pro都清楚地显示了这些函数。

BT堆栈中的最后两个条目是:

代码语言:javascript
复制
_mh_execute_header<br>
_mh_execute_header<br>

这就是main()应该在的地方。

以前有没有人见过这些?

根据我所读到的内容,ptrace()不会让你附加这个进程,但这个可以让我。我试图绕过sysctl(),但我认为这种方法也没有被使用过。

有谁知道它还可能是什么吗?

另外,我没有源文件。

EN

回答 1

Stack Overflow用户

发布于 2013-05-20 04:51:15

你的问题非常不清楚。你到底在问什么?

main()不在bt堆栈中,

这对于完全剥离的可执行文件来说是很常见的。如果您运行nm a.out | grep main但没有看到main,那么main就不会出现在任何堆栈跟踪中。

仅凭这一点并不一定能证明应用程序正在使用任何反调试技术。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16639269

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档