一个受密码保护的Word病毒分析
此次分析的病毒通过伪装成“发票到期”的电子邮件并且带有密码保护的附件进行传播,带有密码保护的电子邮件可能会给人一种安全感,使其放松警惕,所以一般陌生人发来的邮件、文档,不要轻易打开。
邮件内容如下:

需要输入密码才能打开的Word文档,如下:

“Invoice.doc”附件中包含一个宏,如果用户的宏安全设置为低,则文档将自动启动宏。宏受密码保护,面对这种情况,大多数用户都不知道这份文件会在后台做些什么。
启用宏内容,如下:

受密码保护的宏内容,如下:

查看宏代码内容显示它将从hxxp//209.xxx.xx.xxx/1.exe下载文件,然后保存至%Temp%\qwerty2.exe并启动,如下:

下载后的文件qwerty2.exe分析:
qwerty2运行后首先执行一段混淆代码,然后通过“MapViewOfFile”将文件进行映射:

进行映射后的数据,如下:

将映射后的数据进行解密,通过跳转到ZwSetInformationProcess函数将DEP关闭,然后再转入解密后的数据并执行

跳转到解密后的代码并执行:


获取cpuid信息(包括型号,信息处理器)、操作系统版本、地理位置、网卡配置和IP信息

获取地理位置

动态加载Getadaptersinfo函数获取网卡配置和IP

为了防止恶意程序被多次运行Neutrino恶意软件创建互斥体:“{FC502D82-2B78-8E2F-95F0-8FA2992433F6}”

然后修改文件创建时间、设置文件属性、设置注册表Run启动,确保在受感染的机器上持久存活

动态加载CreateToolhelp32Snapshot、Module32First、Module32Next函数遍历进程模块与代码中设定好的进程模块进行比较,如果遍历到相同进程模块,则终止执行

使用IsDebuggerPresent、CheckRemoteDebuggerPresent判断程序是否正被调试。使用GetTickCount、Sleep、GetTickCount进行单步执行时间检测。使用QueryDosDevices检测虚拟机(比如:VMware),判断是否处于虚拟环境中,使用EnumWindows、GetClassName进行窗口检测


如果程序加载成功,便会加载核心程序,使用CryptStringToBinary API函数解密嵌入的C&C URL将获取的信息以 POST的方式发送到xxx.com。这些响应包会以注释形式嵌入到空白html页面中。捕获的流量包如下:


浙公网安备 33010602011771号