实验环境
VMware workstation pro
Windows 2003 虚拟机
PS:作为一个用win10折腾了一天本实验的人,在这里和所有和我一样使用win10的铁头娃提个醒,尽量不要用win10虚拟机,老老实实用 win 2003虚拟机。
首先win10默认是没有组策略的,尽管可以使用设置bat文件配置组策略,但是实验给的配套软件在win10都不兼容。
当然,你可以继续头铁,在微软官网下载适配win10的SysinternalsSuite软件组合,实现类似的监控功能,但是这套组件的学习成本太高了,readme文件是英文描述,所以我在研究了几个SysinternalsSuite的软件之后就放弃了。
SysinternalsSuite下载地址:
https://download.sysinternals.com/files/SysinternalsSuite.zip
实验目的
-
搭建虚拟机,设置安全的病毒运行环境
-
了解监控病毒行为的常用工具
-
掌握病毒行为监控软件的使用方法
-
使用病毒行为监控软件捕获病毒行为
实验原理
计算机病毒为达到其目的,会对操作系统做一些改动
这种改动体现为对文件、进程、注册表和网络等进行操作,监控病毒的这些行为是快速分析病毒的捷径。
本次实验是以keylogger.exe
病毒为例
keylogger.exe
是一种监视病毒,旨在记录用户的键盘输入,包括复制和粘贴的信息
黑客可以使用键盘记录器窃取个人或财务信息,例如银行详细信息,然后可以出售或利用这些信息来牟利
实验内容
搭建病毒分析实验室
设置受限文件夹:
设置受限文件夹的目的是为了限制病毒的行为,从而防止病毒对计算机造成破坏
设置共享文件夹:
这一步是为了在主机与虚拟机之间传送文件,也可以使用VMwareTools实现
虚拟机断网:
防止病毒与远程主机交互,在后面的操作中可以注意到打开server.exe之后会出现一个用于远程通信的进程,很有可能是把keylogger记录的本地键盘输入数据发给远程黑客的
病毒运行前观察
- 不存在隐藏文件夹
C:\WINDOWS\r_GUID[F481B223-3705-45B3-B9AB-C0D9A3FDEBB4]
- 不存在如下文件:
C:\WINDOWS\r_GUID[F481B223-3705-45B3-B9AB-C0D9A3FDEBB4]\ debugsrv.exe
C:\WINDOWS\r_GUID[F481B223-3705-45B3-B9AB-C0D9A3FDEBB4]\debugsrv.exe_bug.log
- 不存在进程:
debugsrv.exe
- 注册表
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
中没有键值:
MSWDebugServer
这些文件或者注册表的键值增加都是在运行运毒之后才出现的
思考设置受限文件夹的目的是什么
是为了限制病毒的行为,从而防止病毒对计算机造成破坏
软件限制策略是本地安全策略的一个组成部分,管理员通过设置该策略对文件和程序进行标识,将它们分为可信任和不可信任两种,通过赋予相应的安全级别来实现对程序运行的控制。这个措施对于解决未知代码和不可信任代码的可控制运行问题非常有效。
安全级别分为“不允许的”和“不受限制的”两种。其中,“不允许的”将禁止程序的运行,不论用户的权限如何;“不受限的”允许登录用户使用他所拥有的权限来运行程序。
观察 keylogger.exe 病毒行为,记录监控软件所观察 到 Keylogger 对文件、注册表和进程的修改。
过滤掉不需要监控的程序和进程
vmtoolsd.exe:ctfmon.exe:TPAutoconnect.exe:Lsass.exe:FileMon.exe:Regmon.exe:tcpview.exeprocexp.exe:System
只关注成功写入的项:
用到的各个病毒分析软件
IceSword
基于内核的查杀工具
Tcpview
Processes Explorer
思考,FileMon 关注值为 Create、Open、Write、Delete 的请求项,为什么主要关注这四类请求项,而不关注 Close、Directory 等请求项?
病毒对计算机的入侵一般都是伴随着文件的创建、打开、写入、删除操作
比如修改注册表、写入数据文件、完成对自身病毒的复制等等,其他操作比如关闭文件对计算机并没有太大的危害
关于病毒keylogger,回答如下问题:
- 病毒为何长期存在并难以察觉?
打开process explore
,可以发现,病毒创建了一个debugsrv.exe
的进程,备注是bug report system
,且显示为紫色(自有进程),具有很好的伪装性
-
keylogger.exe 如何实现自启动?
观察注册表,可以发现在
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
这个位置存在一个进程,可以使得病毒实现开机自启动
- 有没有其他的自启动方法?
利用组策略实现自动运行
在组策略窗口中依次展开“本地计算机策略”→“计算机配置”→“管理模块”→“系统”→“登录”,在右侧窗体双击“在用户登录时运行这些程序”,在属性窗口中如果发现已经激活了“已启用”项,就表示有程序隐藏在其中非法运行了。点击“显示”按钮,可以浏览所有自动运行的程序项,从中找到病毒启动项
利用系统服务实现自运行
病毒可以将自身注册为系统服务,来获得更高的运行权限。只要系统启动后,这些病毒服务就会抢先启动
比如在运行病毒之后显示的进程:
已经伪装成了service.exe
观察病毒 Server.exe 的行为
(确认虚拟机未连接移动设备、 断网)
-
观察病毒的运行程序是哪个文件,该文件存放的绝对路径?(Filemo.exe、Process Explorer— Procexp.exe)
debugsrv.exe
C:\WINDOWS\r_GUID[F481B223-3705-45B3-B9AB-C0D9A3FDEBB4]\debugsrv.exe
-
病毒运行后,启动了哪些进程?
- debugsrv.exe
- server.exe
- conime.exe
-
病毒如何实现自启动?(IceSword.exe)
病毒修改了注册表的启动项,从而可以自启动
- 病毒的键记录写入哪个文件中?(Filemo.exe)
- server.exe 病毒对操作系统有哪些方面的影响?
keylogger.exe
是一种监视病毒,旨在记录用户的键盘输入,包括复制和粘贴的信息
黑客可以使用键盘记录器窃取个人或财务信息,例如银行详细信息,然后可以出售或利用这些信息来牟利
server.exe
应该是用于远程通信的。因为检测到有基于tcp的网络通信,如下