动态运行程序行为:自动打开了网页:www.malwareanalysisbook.com/ad.html

静态分析使用IDA

标红线的这两个API是针对COM(组件对象模型)进行的操作

不清楚IDA对于CLSID和IID格式的解读,在systemlookup网址没有查询到对应的

查看对应的strings也没有找到与动态执行相关的URL,psz就是这个URL的值(UNICODE,可能格式不同导致IDA没有识别)

在Imports中查看对应的API函数,也没有找到与打开网页相关的

于是想到用PEID:VC++6.0

strings


然后可以实现个啥呢:在winhex之中找到这个字符串,任意修改如下:


问题1:如何实现持久化驻留

没找到~~~


问题2:程序目的

打开URL


问题3:程序完成执行的时间

没有找到特别明显的时间函数。打开完网页程序应该就算结束了


这几个问题回答的好没有水平。。。

关键是没有分析清楚这个程序是怎么打开这个URL的


PLUS:

首先是这个CLSID和IID到底是什么(书上146页)

CLSID:代表COM组件中的类

IID:代表COM组件中的接口

这几个值就是书上COM举例的哈~

CLSID:{0002DF01-0000-0000-C000-000000000046},表示Internet Explorer

(这个值出现了很多次,需要多次查询才能找到这个)

IID:{D30C1661-CDAF-11D0-8A3E-00C04FC9E26E},表示IWebBrowser2


来自书后的答案:

调用Navigate函数之后,会执行一些清理函数,然后程序终止。

这个程序不会持久化的安装它自己,并且也不会修改系统。仅仅简单地显示一个一次性的广告。

当遇到如此简单的程序时,应该考虑是可疑的(是不是有其他没有分析到的地方)。也可能是随着额外的恶意代码一起打包,它只是其中的一个组件而已。