首页
社区
课程
招聘
[分享]《加密与解密(第三版)》学习指引(第三章)静态分析技术
发表于: 2008-8-23 21:03 67069

[分享]《加密与解密(第三版)》学习指引(第三章)静态分析技术

2008-8-23 21:03
67069

知识就像一个圆,知道的越多,不知道的也越多.如果对于初学者来说IDA有什么困难的地方,那就是它的默认界面,按钮太多,给人一种很复杂的感觉。



点一下上图中的Main。恩,现在简单多了。一个软件可以流行起来,绝对不是因为它的高深,而是简单易用。如果你只想给人一种很专业的感觉, OD就足够了,如果你想把事情变得简单。那么请往下看。
       
首先让我们来回顾各小节隐藏的信息,我以为猜测每个功能存在的理由,是一件有趣的事。

3.2.5交叉参考: 程序各部分存在联系,而只要定位到其中一部分,便可以顺藤摸瓜找到关键代码.
3.2.6参考重命名、3.2.7标签用法:记录分析结果,备忘之用
3.2.8 进制的转换:为满足不同人理解数字的习惯服务。
3.2.9代码和数据转换、3.2.10字符串:现在,即使IDA不能很好处理,我们也可以自己处理了。
3.2.11数组、3.2.12结构体、3.2.13枚举类型、3.2.14堆栈变量和3.2.16 FLIRT:程序由高级语言编译而来,自然保留着某种高级语言的特性。更细致的分析记录功能,更可读的汇编代码。
3.2.15 IDC脚本:可编程的,自动完成任务的接口。更高的自由度,使自动解决重复劳动变成可能
更细致的备忘功能,意味着可以应付耗时更长的程序分析任务。例如你希望得到杀软客户端的反病毒技术细节,IDA会是你最好的选择。
更自由的交互功能,意味着用户可以完成更复杂的分析任务。例如你希望得到某网游保护系统的技术细节,IDA会是你最好的选择。
1. 使用PEID或FILEINFO识别出程序所使用的高级语言
2. 按照3.2.16 FLIRT的介绍,选择对应的高级语言函数识别库
3. 按照3.4.2逆向工程初步中介绍的方法使用3.2.5交叉参考功能
4. 找到关键代码之后尝试使用3.2.17介绍的Hex-Rays Decompiler,通过F5取得更易于阅读的源代码
5. 为了应付复杂的情况,可能需要3.2.9代码和数据转换3.2.10字符串,甚至自由度更高的3.2.15 IDC脚本
6. 通过3.2.6参考重命名3.2.7标签的用法3.2.11数组3.2.12结构体3.2.13枚据类型,记录分析结果,作备忘之用。
7. 使用3.3可执行文件的修改介绍的方法完成任务

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 7
支持
分享
最新回复 (49)
雪    币: 1505
能力值: (RANK:210 )
在线值:
发帖
回帖
粉丝
2
支持下笨笨熊熬夜写教程
2008-8-23 22:08
0
雪    币: 65
活跃值: (811)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
3
坚决支持!!!
2008-8-25 17:25
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
斑竹辛苦了!!!
2008-8-25 22:54
0
雪    币: 107
活跃值: (1693)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
5
很多帖子里都能感觉到楼主说的话很有哲理
2008-8-26 00:24
0
雪    币: 250
活跃值: (33)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
6
IDA 很好很强大
可是我水平太差 不会弄

尤其是邪恶的 Hex-Ray Decompiler
2008-8-26 20:05
0
雪    币: 212
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
版主辛苦了,学习了。(书还没看)o(∩_∩)o...
2008-8-26 21:33
0
雪    币: 199
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
很不错,支持你!
2008-8-27 15:41
0
雪    币: 226
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
感谢楼主的总结,收藏
2008-8-27 16:26
0
雪    币: 414
活跃值: (10)
能力值: ( LV9,RANK:460 )
在线值:
发帖
回帖
粉丝
10
这种导引适合我等菜鸟学习,很好。
2008-8-29 20:26
0
雪    币: 212
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
支持,IDA开始就看了你的IDA实例教程~
2008-8-29 23:37
0
雪    币: 6092
活跃值: (744)
能力值: ( LV4,RANK:45 )
在线值:
发帖
回帖
粉丝
12
斑竹太强大了 .........................
期待更多指导
2008-8-31 15:04
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
坚决支持
斑竹熬夜写教程
2008-8-31 16:17
0
雪    币: 199
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
纯支持。。。
2008-9-1 09:50
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
谢谢,对于一个像我这样盲目的初学者来说,帮助太大了!
2008-9-3 22:32
0
雪    币: 446
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
坚决支持
............
2008-9-8 17:05
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
支持 支持。。。
先收藏先!
半夜了,没时间看,明天还要上班!
有时间再慢慢研究!!
2008-9-10 00:33
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
18
http://bbs.pediy.com/showthread.php?t=31023
IDA相关文章的翻译主题集合

中的译文都打不开,好像很久了,还没整理好吗 ?

要学会一样东西,就是要去用它,记得以前第一次见到的时候,无法入手,后来基础好了些,有点感觉了,但还是被 OD 占据了我所有的时间,到现在,我几乎什么东西都用 IDA 打开看看再说
2008-9-19 14:16
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
谢谢了。楼主
2008-9-19 16:55
0
雪    币: 206
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
这么好的东东 不留下 帖子支持 太对不起自己了
2008-9-23 15:33
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
很好很强大,书看刚看完第二章
2008-9-30 14:41
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
大声的说声谢谢,支持你,我也会好好努力的
2008-10-4 19:34
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
太感谢了!这正是我们新手所需要的。
2008-10-5 18:24
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
斑竹辛苦了,学习了 ,很好,谢谢!
2008-10-6 21:08
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
谢谢,太需要这样的帮助了。。
2008-10-10 08:28
0
游客
登录 | 注册 方可回帖
返回
//