20145227鄢曼君《网络对抗》恶意代码分析
基础问题回答
(1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
- 可以使用systracer工具比较某个程序的执行前后计算机注册表、文件、端口的变化情况。
- 可以使用Wireshark进行抓包分析,然后查看该程序联网时进行了哪些操作。
- 使用netstat命令设置一个计划任务,指定每隔一定时间记录主机的联网记录等等。
- 可以通过sysmon工具,配置好想记录事件的文件,然后在事件查看器里面查看相关文件。
(2)如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
- 可以使用systracer工具比较某个程序的执行前后计算机注册表、文件、端口的变化情况。
- 可以使用Wireshark进行抓包分析,然后查看该程序联网时进行了哪些操作;
实验总结与体会
- 这次实验做的真的是崩溃,开始做的时候kali就出现了问题,死活回连不成功,重启了多次也没办法,后面把虚拟网络编辑器还原默认设置才终于能成功回连。使用systracer工具快照的时候快照第一次进行了将近一个小时,内心很崩溃,这真的是快照吗!而且在快照五次之后它就坏了,只能重新装。而且360这个流氓软件,明明我把生成的后门软件已经添加了很多次信任,可是他还是给我删除了,真的是用一次删除一次,添加信任也不管用。每次回连到一半它就给我把后门删了,我也很绝望啊,然后就把它关了。
实践内容
使用schtasks指令监控系统运行
- 先在C盘目录下建立一个
netstatlog.bat
文件,用来将记录的联网结果格式化输出到netstatlog.txt
文件中,netstatlog.bat
内容为:
date /t >> c:
etstatlog.txt
time /t >> c:
etstatlog.txt
netstat -bn >> c:
etstatlog.txt
- 然后打开Windows下命令提示符,输入指令
schtasks /create /TN netstat /sc MINUTE /MO 2 /TR "c: etstatlog.bat"
指令创建一个每隔两分钟记录计算机联网情况的任务:
-
第一次创建完成后,我运行这个任务,发现
netstatlog.txt
并没有显示出我们想要的网络连接记录信息,而是:请求的操作需要提升。然后发现是自己没有以管理员身份运行。重新创建之后就可以了。 -
之后查看了一下netstatlog.txt文件,大部分都是正常联网的应用,没有什么异常。
- 第二天早上再次查看了这一天当中记录的主机联网日志,还发现了打开后门软件回连时20145227.exe程序的联网记录:
使用sysmon工具监控系统运行
- 用管理员身份运行cmd,按住windows+x键,用管理员身份运行,xml文件是老师指导书里的,保存在sysmon.exe同目录下就好。输入以下指令进行安装配置。
- 右键“我的电脑”选择管理,进入事件查看器,查看日志:
- 打开kali监听,进行回连,然后再次查看:
使用virscan分析恶意软件
- 在virscan网站上查看上次实验所做的后门软件的文件行为分析:
- 可以看到更多详细的信息,比如其启动回连主机的部分IP地址以及端口号,还有对注册表键值进行了删除等等:
使用systracer工具分析恶意软件
- 使用systracer工具建立了5个快照,分别是在主机中没有恶意软件时、将恶意软件植入到目标主机中后、恶意软件启动回连时、恶意软件执行ls命令以及恶意软件执行screenshot命令之后。但是一边快照一边在kali里面使用wireshark补包分析还开了博客的网页之后电脑卡死了,等了很久之后才恢复正常,然后发现systracer就不能快照了,尝试着删除了一个快照后发现还是不能快照。想着快照一次就要接近一个小时,所以放弃了重新安装的想法......
- 将恶意软件植入到目标主机后,快照发现文件中多了一个5227.exe文件:
- Kali回连成功后注册表发生变化:
使用wireshark分析恶意软件回连情况
- 使用wireshark进行抓包后可以看到,其先进行了TCP的三次握手,之后再进行数据的传输,如图所示,带有PSH,ACK的包传送的便是执行相关操作指令时所传输的数据包:
使用PEiD分析恶意软件
- 使用PEiD软件可以查看恶意软件的壳的相关信息,以及其所使用的编译器版本: