动态运行程序行为:自动打开了网页: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函数之后,会执行一些清理函数,然后程序终止。
这个程序不会持久化的安装它自己,并且也不会修改系统。仅仅简单地显示一个一次性的广告。
当遇到如此简单的程序时,应该考虑是可疑的(是不是有其他没有分析到的地方)。也可能是随着额外的恶意代码一起打包,它只是其中的一个组件而已。