问题
分析恶意代码Lab11-03.exe
和Lab11-03.dll
确保这两个文件在分析时位于同一个目录下
1. 使用基础静态分析过程,你可以发现什么有趣的线索?
解答:我们还是按照书上的步骤走一遍
我们想做基本的静态分析
我们查看Lab11-03.exe
的导入函数,这里我们会看到,从KERNEL32.DLL
中导入了这些函数,其中几个被标黄的比较有趣,比如这个CompareStringW
这个函数,会告诉我们可能这个程序会比较某个字符串和某个字符串,然后还有文件的创建和复制用CopyFileA
和CreateFileA
还有一个CreateProcessA
说明这个代码可能会创建一个进程
之后我们查看Lab11-03.dll
的导入函数
在Lab11-03.dll
中,我们可以发现一些有趣的DLL
比如这个USER32.DLL
下面的WINSTA.DLL
这个,这个DLL
是用于
您可以使用 Windows 系统评估工具 (WinSAT) API 启动对计算机硬件配置的正式和临时评估,检索计算机的基本分数和评估的每个子组件的分数, 以及检索评估的详细信息, 例如评估的处理器的详细信息。
然后它上面的POWERPROF.DLL
是
powrprof.dll是微软Microsoft Windows电源管理配置工具相关模块
再上面的MSIMG32.DLL
是
msimg32.dll是Windows图形设备接口GDI相关模块,用于支持新的API应用程序接口和GDI32相关特性
而在USER32.DLL
中,导入了这些函数
其中有个GetWindowsTextA
是用来
将指定窗口标题栏 (如果有) 的文本复制到缓冲区中。如果指定的窗口是控件, 则复制控件的文本
但是, GetWindowText无法在其他应用程序中检索控件的文本
这些函数都比较奇怪,我们下面来看看字符串吧,还是先看exe
文件中的
我们可以看见,第一个字符串是cmd.exe
,这说明这个程序有可能会去调用cmd.exe
,第二个字符串是command.com
,是个域名,加上前面的cmd.exe
,我们感觉这个东西很有可能是个远控
当然我们细心点也可以看见这个程序是用Microsoft Visual
编译的
除了上面那些易于理解的字符串,我们还会发现怎么两个路径和一些看起来像是命令的一些字符串
C:\WINDOWS\System32\inet_epar32.dll
C:\WINDOWS\System32\%s
cisvc.exe
net start cisvc
其中,net start
命令是用来在Windows
上启动一个服务的
而这个cisvc
,在MSDN
中的解释是
Cisvc.exe在基于Windows XP或Windows Server 2003的计算机上充当索引服务。 我们可能会发现索引服务(Cisvc.exe)中的CPU使用率在某些情况下增加到100%,即有问题的操作系统使用REMOVABLE内存存储设备
接下来我们来对这个Lab11-03.dll
进行静态分析一下看看会有什么东西
其中一个字符串在书中被提到了
就是这个zzz69806582
还有一个特殊的字符串是一个Windows
下的路径,包含了一个叫kernel64x.dll
的文件,这个文件我们未来分析的时候要注意一下
然后我们可以看看这个函数的导入函数有那些
这里有一个函数是CreateMutexA
,这个代码会创建一个互斥量,这里我们也需要注意一下,分析的时候注意找一下这个互斥量叫什么,然后就找到一条病毒特征了
然后我们继续往下看