首页
社区
课程
招聘
[分享]恶意代码分析之必备家当
发表于: 2011-9-14 10:16 119885

[分享]恶意代码分析之必备家当

2011-9-14 10:16
119885
工欲善其事,必先利其器。希望这个帖子能为有兴趣进入反病毒行业的朋友提供一些基本信息。

先说说硬件:
条件允许的情况下,2条不同网络运营商提供的线路,2台或以上的电脑,具体配置自己感觉满意就行
虽然用虚拟机也可以,但难免某些恶意代码有虚拟机检测机制,所以能用真机就尽量用了

接下来是必备软件:
Windows XP(别嫌弃老,老有老的好处,轻便+省事)
IDA Pro(虽然市面上还有别的反汇编工具,一是因为IDA强大,二是因为反病毒行业必备,如果哪位兄弟非要用别的,面试时被BS千万别说没提醒过。另外Hex-rays的反编译插件确实很强大,但是太贵了没闲钱买,另一方面养成自己动手丰衣足食的好习惯后其实也不差那个插件)
OllyDbg(同上,行业必备。但说实话,个人很少用,不是说它不好,而是IDA的注释太重要了,能静态IDA的绝不调试,即便实在要调试,能用IDA自带的调试器搞定的就直接搞定了,实在不行再换Olly)
WinDbg(同上,行业必备,调试驱动利器。和前者一样,个人很少用,也不是说它不好,只不过大多驱动直接用IDA静态也就够了)
Wireshark(截数据包必备利器。和前者一样,个人很少用,也不是说它不好,只是分析时我很少会真让恶意代码彻底跑起来,有需要或是静态逆出来,或是直接从调试器里抓出来了)

还有几款小软件,个人比较喜欢,但不是必须的
010 Editor
DeDe
Ghost
Hiew
LordPE
WinHex

除此之外还需要一些监测小软件,其实有很多免费的或共享的,但出于减少被恶意代码忽悠的考虑,所以个人觉得能写的还是自己写好,就算不能写,也尽量选个不知名的。

系统变化监测
API监测
Rootkit监测

其他用于测试的备用软件:
各类服务器(HTTP, SMTP, FTP, IRC等等)
各类常见IM(QQ,MSN,YAHOO等等)
Microsoft Office(各个版本的安装文件)
Adobe Acrobat Reader(各个版本的安装文件)
Adobe Flash Player(各个版本的安装文件)

最后提一下恶意代码样本的基本分析流程(不包含特征码提取):
1. 恢复系统镜像(避免在已感染的环境下被其他信息误导)
2. 快速查看是否有可疑字符串
3. 快速查看代码入口地址是否有被感染痕迹
4. 运行,监测并记录系统变化以确定是否是恶意代码
5. 如果需要的话,用IDA静态分析
6. 如果需要的话,写一些辅助脚本或代码协助分析
7. 如果需要的话,用调试器调试
8. 如果需要的话,对相关域名,服务器,邮件地址等做背景调查
9. 文档化相关内容
10. 备份所有相关文件

当然,对于在杀软工作的朋友来说,通常还会需要提取特征码(一般是在静态分析之前),也可能会需要写修复工具,但那些工作细节不同公司会有不同的要求和流程,这里就不多做讨论了。

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 6
支持
分享
最新回复 (113)
雪    币: 343
活跃值: (40)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
2
支持乌龟大师
2011-9-14 10:19
0
雪    币: 599
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
支持楼主,楼主最近很活跃啊,多发好文让我们学习啊。
2011-9-14 10:41
0
雪    币: 27
活跃值: (90)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
4
乌龟大师 ?
2011-9-14 10:42
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
来看看 学习下。
2011-9-14 10:56
0
雪    币: 768
活跃值: (515)
能力值: ( LV13,RANK:460 )
在线值:
发帖
回帖
粉丝
6
乌龟大师-》龟仙人? 哈哈~
2011-9-14 10:59
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
7
几乎全静态哦,境界高啊,不过病毒分析多了,的确很容易辨认出它的意图,有时候见到调用的函数基本可以猜
到一二,IDA 那个调试器实在用不惯,差距啊
2011-9-14 11:02
0
雪    币: 259
活跃值: (10)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
8
龟大师,支持!
2011-9-14 11:02
0
雪    币: 967
活跃值: (1138)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
9
哥 来点实在的
来个分析案例吧
2011-9-14 11:20
0
雪    币: 10051
活跃值: (158)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
乌龟大师,,感觉神秘的人物。。。
SysinternalsSuite 工具包
http://www.nirsoft.net/   里面的一些工具也是不错的。
2011-9-14 11:22
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
ida 不会用,自我感觉很失败
2011-9-14 11:31
0
雪    币: 503
活跃值: (80)
能力值: (RANK:280 )
在线值:
发帖
回帖
粉丝
12
sysinternalsuite和nirsoft都是非常不错工具包,我自己以前也用过一些他们的工具

不过正如主贴中提到的,对于监测类软件,以及其他类型的小工具,能自己写的,都建议自己写,不方便写又必须用的,尽量找没有知名度的同类软件替代。
一方面锻炼了自己,另一方面,每多用到一种第三方工具,也增加了一份被有针对性的陷阱耽误的可能。
2011-9-14 12:18
0
雪    币: 503
活跃值: (80)
能力值: (RANK:280 )
在线值:
发帖
回帖
粉丝
13
逆向分析的精髓就在于发现答案,而且不同的恶意代码之间如果不是有直接抄袭的话,十有八九没有任何参考价值

你提到的“实在的”,其实是逆向工程师最不应该去想的
2011-9-14 12:20
0
雪    币: 503
活跃值: (80)
能力值: (RANK:280 )
在线值:
发帖
回帖
粉丝
14
病毒分析就是个日积月累的过程,积累久了感觉就好了
IDA调试器确实没有Olly好,我只是图个注释方便,并且省了一个窗口
不过大多数时候也够用了
2011-9-14 12:24
0
雪    币: 6
活跃值: (1104)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
哈哈,总结的不错,加油
2011-9-14 12:26
0
雪    币: 503
活跃值: (80)
能力值: (RANK:280 )
在线值:
发帖
回帖
粉丝
16
人刚生下来只会吃奶,其他的不都是慢慢学来的,不是吗
若干年前我抱着softice不放,那时候还很不屑ida
2011-9-14 12:28
0
雪    币: 357
活跃值: (3133)
能力值: ( LV3,RANK:25 )
在线值:
发帖
回帖
粉丝
17
觉得ida没ollydbg强大,推荐轻量级ollydbg+各种变态插件
2011-9-14 12:34
0
雪    币: 503
活跃值: (80)
能力值: (RANK:280 )
在线值:
发帖
回帖
粉丝
18
呵呵,我没说ida比ollydbg强大啊,但是熟练了以后,静态通常比动态快,此外养成注释是个绝对是好习惯,一个好的idb也可以提供给需要分析同家族其他变种的同事参考

另外用插件个人以为不是个好习惯,插件可以解决一时的问题,但如果用多了,你也错过了很多锻炼自己的机会
2011-9-14 12:38
0
雪    币: 7008
活跃值: (1040)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
哈哈……又学习了不少,支持乌龟大师!也学学IDA!
2011-9-14 13:04
0
雪    币: 1708
活跃值: (586)
能力值: ( LV15,RANK:670 )
在线值:
发帖
回帖
粉丝
20
乌龟大师全静态分析,静态分析时,怎么快速查看程序里的字符串??
2011-9-14 13:30
0
雪    币: 357
活跃值: (3133)
能力值: ( LV3,RANK:25 )
在线值:
发帖
回帖
粉丝
21
插件是自己写的,主要协助分析,功能强大而且私有。。。非sod之类反调试。。类似于ida的f5
2011-9-14 13:32
0
雪    币: 503
活跃值: (80)
能力值: (RANK:280 )
在线值:
发帖
回帖
粉丝
22
自己有小工具,:)
也可以用ida看
2011-9-14 13:46
0
雪    币: 503
活跃值: (80)
能力值: (RANK:280 )
在线值:
发帖
回帖
粉丝
23
膜拜一下
2011-9-14 13:47
0
雪    币: 233
活跃值: (15)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
24
大师就是大师
2011-9-15 17:05
0
雪    币: 317
活跃值: (13)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
25
看裸体代码用IDA是很爽
如果带壳带混淆的玩意,像我这样的脱壳白痴碰上了一般就直接上OD调了
而且OD也有插件可以完成IDA那样的代码高亮和重命名变量的功能~
2011-9-15 17:42
0
游客
登录 | 注册 方可回帖
返回
//