2017-2018-2 20155225《网络对抗技术》实验四 恶意代码分析
系统运行监控
使用计划任务
先在网上找了篇博客学习一下如何使用schtasks命令。
我们需要用到的参数如下:
schtasks /create /tn TaskName /tr TaskRun /sc MINUTE [/mo {1 - 365}]/tn TaskName 指定任务的名称。 /tr TaskRun 指定任务运行的程序或命令。 /sc schedule 指定计划类型,有效值MINUTE表示指定计划的单位时间为分钟。/mo modifier 指定任务在其计划类型内的运行频率,默认值为1。
为了记录日期和时间,需要用到bat批处理文件
又学习了一下如何写批处理文件
批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令
>、>>二者都是输出重定向命。>命令在清除掉原有文件中的内容后才把新的内容写入原文件>>命令会另起一行把新的内容追加到原文件中。time,显示和设置DOS的系统时间。[格式] time [hh[:mm[:ss[.cc]]]date,显示和设置DOS的系统日期。[格式] date [MM-DD-YY]netstat,显示与IP 、TCP 、UDP 和ICMP 协议相关的统计数据-b显示包含于创建每个连接或监听端口的可执行组件-n以数字形式显示地址和端口号。所以,最后bat文件如下:date /t >> c:\netstatlog.txttime /t >> c:\netstatlog.txtnetstat -bn >> c:\netstatlog.txt
schtasks /end /tn 20155225netstat // 结束定时任务schtasks /delete /tn 20155225netstat // 结束定时任务
最后发现如下这些应用进程和服务:
kbasesrv.exe是,金山WPS Office内置静默自动安装的,劫持主页。
- HaozipSvc.exe网上说这是好压暗装的挖矿进程,难道我的电脑被利用来挖矿了?
- SGPicFaceTool这是搜狗输入法表情辅助工具,据说有bug。
- svchost.exe这个系统进程总是在不停的下载数据。以为是中毒,其实这只是微软的一个服务而已,作用是使用空闲的宽带在后台传送文件。
- taskhost.exe进程是Windows7/8/10自带的一个进程,负责Windows运行计划任务。
- 发现有wuauserv这个进程,网上有人说是病毒,也有人说wuauserv是window update自动更新服务。
diagtrack是诊断跟踪服务,用于收集Windows组件的功能性问题数据。
使用sysmon工具
- 首先写配置文件
怎么写配置文件,参考微软官方文档,里面有用法和例子。
要求监控系统的进程创建、文件创建、网络连接,如下:
![image](https://images2018.cnblogs.com/blog/1071233/201804/1071233-20180412191523373-1177163748.png)
* //监控除microsoft和windows签名的进程创建。 microsoft windows //监控cmd创建文件的时间 cmd.exe
//监控火狐和IE浏览器的网络连接 firefox.exe //火狐浏览器
iexplorer.exe //IE浏览器
2.写好配置文件后,用指令Sysmon.exe -i C:\Sysmoncfg.txt,进行安装:
安装时出现了一个错误:
提示说,ProcessCreate里的Signature是意外元素,并且要求是其他一些与进程创建相关的元素,修改为监控由cmd作为父进程创建的进程,如下。
* //监控由cmd作为父进程创建的进程。 cmd.exe //监控cmd创建文件的时间 cmd.exe
//监控火狐和IE浏览器的网络连接 firefox.exe //火狐浏览器
iexplorer.exe //IE浏览器
修改之后,成功安装。
然后去查看日志,通过dos命令eventvwr.exe进入事件查看器,在日志在应用程序和服务日志/Microsoft/Windows/Sysmon/Operational下,可以看到sysmon监控到的各种记录。
分析几个具体事件:
进程终止事件,这是一个关闭QQ的记录
网络连接监控事件,这是一个火狐浏览器访问117.122.217.19的记录,可以看到这是一个https连接,访问的443端口。
进程创建事件,这是我创建计划任务的记录,因为配置文件里我指定监控了父进程,所以可以看到父进程是cmd。
恶意软件分析
用systracer工具,抓取后门植入后,回连时,获取截屏时,获取击键记录时,四个阶段的快照如下:
对比快照一和快照二,发现以下变化:
- HKEY_CURRENT_USER这个根键保存了当前登录的用户信息。这个根键下Key_HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}\Count下有五个值发生了变化。分别是
- HRZR_PGYFRFFVBA(REG_BINARY)
- P:\Hfref\Nqzvavfgengbe.CP-20170223YQRU\Qrfxgbc\evire.rkr(REG_BINARY)
- Zvpebfbsg.Jvaqbjf.Furyy.EhaQvnybt(REG_BINARY)
- pzq.rkr(REG_BINARY)
- FlfGenpre.rkr(REG_BINARY)
可以看到修改了三个rkr文件,rkr文件就是windows下的exe文件,是微软采取的顺序加密算法加密的结果。而且这5个值都是REG_BINARY类型的。
Key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Reliability Analysis\RAC 可靠性分析
Key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Profiles 联网列表
Key_HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Tencent\QQPCMgr\QMDL 腾讯的软件
- Key HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control 系统控制
Key HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services 系统服务
Key HKEY_USERS\QMConfig
Key HKEY_USERS\S-1-5-21-2845182390-1485456730-4082423690-500 配置
对比快照二和快照三,变化少了很多,只有两个点:
- Key HKEY_USERS\S-1-5-21-2845182390-1485456730-4082423690-500\Software\Microsoft\Windows\CurrentVersion\Explorer
- Key_HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist 用户帮助键
对比快照三和快照四,多了一些控制键的改变,毕竟截屏和控制键没关系,而获取击键记录就需要一些控制设置了。
用wireshark抓包分析一下呢。
可以看到,我的控制端IP是192.168.226.129,靶机IP是192.168.226.135,首先是DHCP服务分配了靶机IP地址,然后是回连控制端,建立了TCP连接,之后我使用dir命令,查看了靶机的当前目录,传输了很多数据过来,如下图所示:
问题回答
3.1实验后回答问题
(1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
监控的操作肯定要跟恶意代码的特征行为相关的啦,但是有一些恶意代码共性的行为,比如修改注册表,连接远程控制端等等,先监控这些共性特征,再分析具体行为后,再缩小监控范围。
(2)如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
已经确定某个进程有问题之后,就需要利用各种恶意代码分析工具了。比如systracer。
实验总结与体会
这次实验第一感觉就是信息太多,特别考验我们的信息处理能力,特别是在分析注册表修改的时候,一个点进去又会扯出很多问题,深刻感觉自己知识的缺乏,很多内容看不懂,还需要继续探究学习。