恶意代码分析实战 Lab 7-2 习题笔记

Lab 7-2

问题

1.这个程序如何完成持久化驻留?

解答: 我们可以先从静态分析开始,然后这里估计会用一下动态分析看看

图片
我们会发现这个导入库OLE32.DLL,然后导入了CoCreateInstance, OleInitialize, OleUninitialize这三个函数,这三个函数不是很常见的样子,但是导入了肯定有他的作用,我们查查看

第一个函数CoCreateInstance这个函数是这样的

图片

看不懂,什么鬼,剩下两个函数看字面意思,一个是OleInitialize也就是ole初始话的,然后OleUninitialize这个函数,是反初始话ole

然后剩下的两个DLL并没有什么有价值的导入函数,第二DLL甚至没有导入函数

图片

然后还有这么几个导入DLL没有识别出来

图片

往后我们分析一下字符串看看,还是这个老套路

图片

也没有什么有价值的字符串出现,然后书中那些个出现的函数,我是没发现,是不是因为在这个两个DLL中没被识别出来

我试试用winxp去运行看看,然后还是这个样子的

图片

依旧找不到这个DLL

无法了,我们只好开始动态分析

图片

直接点运行之后,就会跳出一个窗口,然后就开始连接这个网址

图片

我们会发现这里,删除了一个键

已删除键 (1) 快照 A 
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\Cache\Extensible Cache\MSHist012017090520170906]

然后新建了这么几个键

新添加键 (5) 快照 B 
[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Default HTML Editor] 
[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Toolbar\WebBrowser] 
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder\Favorites] 
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\Cache\Extensible Cache\MSHist012017092620170927] 

这个看样子的话,是将这个Default HTML Editor设置成了Internet Explorer,然后便是增加了一个\Toolbar\WebBrowser,这个应该是浏览器的工具栏这里的位置,然后MenuOrder\Favorites应该就是收藏夹

然后看这个得不出什么重要的结论,我们开始IDA分析吧

图片

这里的main函数,一开始是先调用了OleInitialize这个函数,然后这个函数的作用根据书中的介绍就是初始化COM,然后便是一个判断jl跳转,具体不懂的可以看看我的Lab 4的博客

这里使用了test之后然后再使用这个jl跳转,这个其实就是判断两种情况的,具体的汇编原理分析我在Lab 4里面写了,就是这么两种情况

eax >= 0 和 eax < 0

如果eax>=0的话,jl不会跳转
然后如果eax<0的话,jl就会跳转了

然后我们看看这个函数OleInitialize返回值在MSDN中的定义是这样的

如果调用成功,返回S_OKS_OK=0
如果调用失败,返回S_FALSES_FALSE==1
其他错误返回特定的错误类型,一般这些错误都是小于0

所以这个jl语句的意思就是,如果返回的是除了S_OKS_FALSE之外的错误,那就直接跳转退出程序

图片

然后如果没有跳转结束,便是这样的一个代码片段

这里IDA将这个CoCreateInstance这个函数的返回COM对象标记为了ppv,然后按照书中的做法,我们为了确定这个程序是调用了那个COM对象,所以我们要去查看riidrclsid是对应了那个功能

我们双击就可以查看这两个变量真正的值是多少了

图片

riid的值是这样的

然后rclsid是这样的

图片

所以我们就开始查呗,书中是提到这个东西在的位置的,我们通过打开注册表编辑器可以看到,CLSID在注册表中的具体位置是在这里

HKLM\SOFTWARE\Classes\CLSID\

还有

HKCU\SOFTWARE\Classes\CLSID

我们可以先看第一个位置HKLM\SOFTWARE\Classes\CLSID\的地方

图片

这里有很多的CLSID,我们来找我们IDA中发现的值

图片

第一个数是2DF01h

图片

我们最后可以找到这个值的位置

LocalServer32就会发现这个CLSID会调用什么函数

图片

这里的数据显示的是"C:\Program Files\Internet Explorer\iexplore.exe"也就是IE浏览器的可执行文件在的地方

然后我们再去找找这个位置有什么HKCU\SOFTWARE\Classes\CLSID

不过我们并没有在这个地方发现这个CLSID

图片

然后我们就查明,这个函数调用了什么程序

图片

然后如果创建那个COM对象没失败,便开始调用这一串代码

这里就是通过调用这个COM对象,来将参数也就是那个网址传进去,然后便是打开一直到http://www.malwareanalysisbook.com/ad.htmlIE窗口


2.这个程序的目的是什么?

解答: 打开一个导向http://www.malwareanalysisbook.com/ad.html网页的IE浏览器


3.这个程序什么时候完成执行?

解答: 打开完IE导向那个网址之后就结束了

本文完

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值