20155321 《网络攻防》 Exp4 恶意代码分析
计划任务监控
- 在C盘根目录下建立一个netstatlog.bat文件(先把后缀设为txt,保存好内容后记得把后缀改为bat),内容如下:
date /t >> c:\\netstatlog.txt
time /t >> c:\\netstatlog.txt
netstat -bn >> c:\\netstatlog.txt
如下图所示,此处要用到管理员权限
-
netstatlog.bat文件的作用:记录的联网结果,按格式输出到相同目录下的netstatlog.txt文件中。
-
用指令
schtasks /create /TN netstat /sc MINUTE /MO 2 /TR "c:\\netstatlog.bat"
创建任务来记录每隔两分钟计算机的联网情况。如下图所示,
-
在实验时可发现每隔两分钟.txt文件就会有一次更新,从内容上看可发现.txt文件记录了哪些进程在运行着
sysmon工具监控
sysmon
微软Sysinternals
套件中的一个工具,可以从码云项目的附件里进行下载,要使用sysmon
工具先要配置文件,此处直接用教程上的配置文件,但因我是在Sysmon
官网上下载的,因此版本号要改为4.00
- 配置好后,使用指令
Sysmon.exe -i C:\\Sysmoncfg.txt
对sysmon进行安装,结果如下所示
- 命令行下输入eventvwr命令打开应用程序和服务日志,在
Microsoft->Windows->Sysmon->Operational
下找到相应的记录文件,如下图所示
- 以下是我截取的事件查询器下的几条信息
这是启动QQ时检测到的
这是使用百度时检测到的
这是使用有道云笔记时检测到的
使用wireshark进行分析
- 使用wireshark也可以抓到kali虚拟机回连到主机的TCP三次握手包,如下图所示:
使用Process Monitor分析恶意软件
Process Monitor
是一款由Sysinternals
公司开发的包含强大的监视和过滤功能的高级Windows
监视工具,可实时显示文件系统、注册表、进程/线程的活动。- 打开软件,可以看出其对各个进程的详细记录,从图中可看到在实验过程中我曾使用过的
Sysmon
软件
使用Process Explorer分析恶意软件
- 在虚拟机下通过
PE explorer
打开文件2015321_1.exe
,可以查看PE文件编译的一些基本信息,导入导出表等。 - 可看到文件的编译时间、链接器等基本信息:
- 实验时,我在用kali虚拟机进行回连时可以从下图中发现被捕获到了
使用PEiD分析恶意软件
- PEiD是一款著名的查壳工具,其功能强大,几乎可以侦测出所有的壳,其数量已超过470 种PE 文档 的加壳类型和签名。
- 先测试了实验2生成的后门程序,可从结果看出,此文件是一个不正当的文件:
- 测试了实验三使用的后门文件,可以查看恶意软件的壳的相关信息,以及其所使用的编译器版本
使用VirusTotal分析恶意软件
- 把实验三生成的恶意代码放在VirusTotal进行分析,结果如下:
可从上图中看出,在64个杀软中,有26个测出病毒,说明此文件时很有问题的。 - 在
detail
处可看到此文件的相关信息,包括摘要值等等
- 该恶意代码支持的算法库情况
实验后回答问题
-
如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所以想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
- 方法一:可以使用
sysmon
软件进行监测,它每两分钟会将运行的程序以日记的方式记录下来,我认为可以选择你自己认为最有可能被攻击的时段去查看有无恶意代码在运行。 - 方法二:可以使用
systracer注册表分析
方法进行,在最开始建立一个快照,在你觉得可能有恶意代码入侵的时候再建立一个快照,然后以对比的方式找出不同,也会有机会找到恶意代码。 - 方法三:可以使用wireshark抓包的方法,通过查看是否有回连操作找到是否有恶意代码在运行。
- 方法一:可以使用
-
如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
- 使用systracer进行快照对比
- 使用PEiD查看自己认为有问题的执行文件是否有加壳等其他信息
- 可以在
virscan
上将怀疑的程序放上去进行扫描,看信息
实验总结与体会
- 我觉得通过本次实验收获还是不少的,不仅仅是因为学会了几种不同软件去监测的自己电脑,不像之前对这方面的知识基本上是空白的,除此之外,我觉得最重要的是它给我提供了一种思路,当我觉得自己的电脑可能是有恶意代码入侵的时候我可以有办法去查到关于这恶意代码的相关信息,从而进行相应的防范措施。