首页
社区
课程
招聘
[求助]按照zhuliang帖子 调试程序发现问题
发表于: 2013-6-7 10:02 7516

[求助]按照zhuliang帖子 调试程序发现问题

2013-6-7 10:02
7516

经过破解的ipa cryptid为0

但当IDA 加载完之后仍有部分sub—存在 这是什么问题? 求助

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 1098
活跃值: (193)
能力值: (RANK:210 )
在线值:
发帖
回帖
粉丝
2
两个可能的原因。一个是ida的版本是不是不低于ida6.2   
二是可能二进制文件里本来就不带相应函数的符号信息。因为经过编译后符号信息会丢失的。

有的可执行程序带有全部符号信息。但并不是所有程序都会带。没带的话,ida只能显示出sub_开头了的。
2013-6-7 12:18
0
雪    币: 1098
活跃值: (193)
能力值: (RANK:210 )
在线值:
发帖
回帖
粉丝
3
如果没能识别出来的函数是objective-c函数)的话,改用ida6.2以上能看出来。

如果不是objective-c函数,没办法知道原来的函数名了。只能通过分析程序,根据函数的上下文,给它重新起个有意义的名字。
2013-6-7 12:24
0
雪    币: 496
活跃值: (286)
能力值: ( LV13,RANK:400 )
在线值:
发帖
回帖
粉丝
4
.....什么意思?

符号是保存在PDB文件中。exe中根本不带调试符号信息,最多是一个PDB文件的路径。

如果IDA没有PDB可以把一个exe里面的所有的sub给你翻译成符号,那就不会有所谓的逆向工程了。

学逆向还是先把调试技能打扎实点。

keywords:symbols; pdb
2013-6-7 12:27
0
雪    币: 43
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
谢谢各位的回复
2013-6-7 14:19
0
雪    币: 183
活跃值: (563)
能力值: ( LV9,RANK:150 )
在线值:
发帖
回帖
粉丝
6
ios程序 一般是用gcc 或者 clang 编译的。。内置的符号信息。。没有windows的 pdb符号文件。。。

用gcc编译的时候 如果加上了  -fvisibility=hidden 编译选项、 不带-g 、并且strip过了。。。就没有函数符号了。。

ida 只能显示  sub_xxxx
2013-6-8 23:07
0
雪    币: 1098
活跃值: (193)
能力值: (RANK:210 )
在线值:
发帖
回帖
粉丝
7
说得很对。windows下的符号信息除了可以存在于pdb文件中还可以存在于PE文件中。
2013-6-9 01:15
0
雪    币: 496
活跃值: (286)
能力值: ( LV13,RANK:400 )
在线值:
发帖
回帖
粉丝
8
擦 原来是这样啊。。
好吧。。我以为是是在分析PE程序。。

受教了!
2013-6-10 12:29
0
游客
登录 | 注册 方可回帖
返回
//