Worm/Autorun.aq病毒样本分析
之前一直莫得时间去搞这个,今天我就拿我珍藏已久的病毒样本来做一次病毒分析报告。
这份病毒样本是我从科任老师那里提取的,当然只是提取病毒样本不会包含用户隐私信息。
搭建环境
- 系统:Windows7 x64
- 系统盘:36G
- 网络:隔离网络
释放病毒样本
好家伙,这个u盘是被多个病毒交叉感染了。火绒安全软件正常报读,但是并不完全。
目前我放眼看去,iexplore.vbs[1],360SANDBOX.exe[2],物理大师(高中物理)[3]三种病毒。
他们的关系图
理论上,两个文件夹病毒不能共存,而且根据这些第2个病毒的特性应该只会出现在根目录,但是他却出现在了后面的目录,应该是被老师移动过,怪不得保留了这么久没被安全软件ban掉。
前面两种病毒我都比较熟悉,所以就先先讲后面那个我一直挺好奇的。
测试前准备
我们用到的工具/软件有:
- 火绒安全软件
- 火绒剑
- 7-zip
- 影子系统
这次准备比较简单,凑合着用。
开始测试
开始运行
先将其中一病毒作为研究对象,安全软件过白,火绒剑过滤一下其他的东西。开始第一次运行
第一次运行
环境:Windows7 x64 sp1 原版镜像(未更新)默认设置
过程:程序正常运行,病毒开始释放并感染系统,注册启动项,文件映像劫持等操作
结果:由于在Windows7默认设置下系统目录需要管理员权限,而病毒是针对xp层面开发的并没有申请权限。所以所有操作都失效了,病毒仍旧常驻后台
但是鉴于目前国内绝大多数的Windows7系统都是采用gho系统,gho系统为了用户从Windows xp过渡到Windows7习惯,一般上都会默认关闭 用户账户控制(UAC) 那么当软件清单中提出需要管理员权限时系统将自动给予管理员权限,所以我们重新运行一次。
第二次运行(管理员)
环境:Windows7 x64 sp1 原版镜像(未更新)通用设置(关闭UAC)
过程:程序正常运行,病毒开始释放并感染系统,注册启动项,文件映像劫持等操作
结果:病毒正常工作,正常感染。
运行结果
可以看到病毒会感染 我的文档 和 用户文件夹
运行后病毒会打开被感染文件夹并常驻后台,
通过启动项我们可以看到,病毒的主程序(C:\WINDOWS\Fonts\Fonts.exe),我们可以通过这个来定位病毒源文件。
病毒会隐藏自己,自动关闭了系统的显示隐藏文件选项。
这个病毒非常狡猾,利用了系统只会列举 C:\WINDOWS\Fonts\*.ttf 这个特性隐藏自己。也就是资源管理器是肯定看不到病毒的,我们只能换一个软件。就用火绒剑打开
非常狡猾,火绒剑居然拿他没办法。一碰就闪退,所以我这里就换了7-zip查看
经过校验发现,他释放的这几个文件都是一样的都是病毒本体。启动一下任务管理器看看
好家伙,它把任务管理器给劫持了。(这里我也是第一次看到这种技术,知道有但是没有真实的操作过,涉及知识盲点就先不解释)先禁用安全软件启动任务管理器
可以看到让任务管理器还是可以打开的,而且也没啥问题。就是每次运行火绒会报毒(触发运行主程序了),也就意味着它可能只是劫持这个软件在这个软件启动的时候他也会启动。新知识+1,这个方法可以考虑做一个程序插件了。
从图片可以看出到处都是它的身影啊,看来感染范围挺广的。这也是我第一次看到涉及范围这么广的病毒。
火绒的启动项管理工具也无法启动,被自己拦截了他也劫持了svchost.exe和drivers.exe。
可以看到它修改的注册表项,改了九个。删掉就恢复正常了(但是病毒常驻后台又会马上给你改回来)
导出报告
总结
启动流程
- C:\Users\ddmt\Desktop\Skypee.exe 被启动
- 释放 C:\WINDOWS\SysWOW64\dllcache\tskmgr.exe
- 常用文件关联项 HKEY_LOCAL_MACHINE\SOFTWARE\Classes\mscfile\shell\open\command\ 到 C:\WINDOWS\pchealth\Global.exe
- 映像劫持项 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\ctfmon.exe\Debugger 到 C:\WINDOWS\Fonts\Fonts.exe
- 映像劫持项* HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\*.exe\
- 初始启动项 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\RunOnce\ 到 C:\WINDOWS\system32\dllcache\Default.exe
- 初始启动项 HKEY_USERS\S-1-5-21-251379643-2718642849-604241239-1000\Software\Microsoft\Windows\CurrentVersion\RunOnce\ C:\WINDOWS\system32\dllcache\Default.exe
- 启动项 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run\ 到 C:\WINDOWS\system\KEYBOARD.exe
- 修改WinNT ExplorerRun项 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run\sys C:\WINDOWS\Fonts\Fonts.exe
- 释放 C:\WINDOWS\SysWOW64\dllcache\Recycler.{645FF040-5081-101B-9F08-00AA002F954E}\svchost.exe
- 释放 C:\WINDOWS\SysWOW64\dllcache\Recycler.{645FF040-5081-101B-9F08-00AA002F954E}\Global.exe
- 释放 C:\WINDOWS\SysWOW64\dllcache\Recycler.{645FF040-5081-101B-9F08-00AA002F954E}\system.exe
- 释放 C:\WINDOWS\Fonts\Fonts.exe
- 释放 C:\WINDOWS\SysWOW64\drivers\drivers.cab.exe
- 释放 C:\WINDOWS\SysWOW64\dllcache\Global.exe
- 释放 C:\WINDOWS\SysWOW64\dllcache\svchost.exe
- 释放 C:\WINDOWS\system\KEYBOARD.exe
- 释放 C:\WINDOWS\SysWOW64\dllcache\Default.exe
- 释放 C:\WINDOWS\Help\microsoft.hlp
- 释放 C:\WINDOWS\Cursors\Boom.vbs
- 释放 C:\WINDOWS\Fonts\tskmgr.exe
- 释放 C:\WINDOWS\Media\rndll32.pif
- 释放 C:\WINDOWS\SysWOW64\dllcache\Recycler.{645FF040-5081-101B-9F08-00AA002F954E}\system.exe
- 启动 C:\WINDOWS\SysWOW64\dllcache\Recycler.{645FF040-5081-101B-9F08-00AA002F954E}\Global.exe
上文中带*号的为略写,即为目录下的*.exe均匹配且被修改。上面的是火绒的报告(我有所补充)
但是火绒的报告并不完全,我还发现了这个病毒的其他行为,补充如下:
- 写入 *:\MS-DOS.com
- 写入 *:\autorun.inf(设置自动运行,但是该特性只在xp往前的系统有。之后的系统一般不会被执行)
这个病毒能同时使用exe,com等后缀。在感染u盘,磁盘时也会使用exe和com同时感染以达到混淆安全软件的目的。
杀毒
使用火绒安全软件杀毒
使用快速查杀能正常扫描和识别,但未能完全清除宾病毒。以下项目无法被完全清除
- *:\MS-DOS.com
- *:\autorun.inf
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\*.exe\
因此我们需要进行全盘查杀,但是全盘查杀仍然未能完全修复电脑由于病毒导致的故障,以下项目无法被完全清除
因此还需要借助火绒系统修复工具来解决:
至此病毒算是完全被清除了,如果你的u盘曾经中毒过也需要全盘查杀。
手动杀毒
这个没啥难度,不过因为这个病毒劫持点比较多,建议全程使用cmd处理
反编译报告
理论上要有,但是我不会。
补充内容
测试用我发现这个病毒在感染其他文件后会自动随机伪装大小,这样的话md5值就会不一样,这就给当时的安全软件带来了非常大的查杀难度。而且它可以伪装的大小貌似没有限制,有500m的也有50m的有些安全软件会忽略掉大文件这样的话病毒就难以被清除。
对于随机文件大小这个技术,我见识过,就是利用空数据重复的去填充因此我还做了一次测试:
随机空数据填充有一个特点就是使用压缩软件压缩后会变回真实的大小,我就分别用了一个,两个,四个病毒进行压缩40m-->16m;40m+100m-->16m;40m+40m+100m+100m-->16m。基本符合预期,但是哪有16m这么大的病毒呢?如果有那这个也太大了点吧,于是我就从内存提取了一下病毒样本。
仅有236kb,非常神奇啊。知识盲区无法解释
Comments 1 条评论
博主 ddmt