2019-2020-2 20175312 陶光远《网络对抗技术》Exp4 恶意代码分析
一、实验内容
1.1、正确使用msf编码器
一、实验目标与内容
1.实践目标
监控你自己系统的运行状态,看有没有可疑的程序在运行。
分析一个恶意软件,就分析Exp2或Exp3中生成后门软件;分析工具尽量使用原生指令或sysinternals,systracer套件
假定将来工作中你觉得自己的主机有问题,就可以用实验中的这个思路,先整个系统监控看能不能找到可疑对象,再对可疑对象进行进一步分析,好确认其具体的行为与性质。
2.实践内容
2.1 系统运行监控
(1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述分析结果。
(2)安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点是可疑行为。
2.2分析该软件在(1)启动回连,(2)安装到目标机(3)及其他任意操作时(如进程迁移或抓屏,重要是你感兴趣)。
该后门软件
读取、添加、删除了哪些注册表项
读取、添加、删除了哪些文件
连接了哪些外部IP,传输了什么数据
二、实践步骤
1.使用schtasks指令监控系统
1.1.使用命令schtasks /create /TN netstat5312 /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > c: etstatlog.txt" 创建计划任务nestat5312
解析:
TN是TaskName的缩写,我们创建的计划任务名是netstat5312;
sc表示计时方式,我们以分钟计时填MINUTE;
TR是Task Run,要运行的指令是netstat
bn,b表示显示可执行文件名,n表示以数字来显示IP和端口;
表示输出重定向,将输出存放在c: etstatlog.txt文件中
1.2.在C盘中创建一个名为netstat5312.bat的脚本文件,写入以下内容:
date /t >> c:
etstat5312.txt
time /t >> c:
etstat5312.txt
netstat -bn >> c:
etstat5312.txt
1.3.打开任务计划程序,可以看到新创建的这个任务:
1.4.双击此任务,点击操作->编辑,将程序或脚本改为我们创建的netstat5312.bat文件,点击确定。
1.5.在常规 栏勾选不管用户是否登录都要运行、使用最高权限运行
1.6.接下来等待脚本执行一段时间(这段时间内要保持开机联网状态),就可以在netstat5312.txt文件中查看到这段时间内的联网记录
1.7.将存储的数据导入到excel表中进行整理
1.8.整理好的数据图表如下:
1.9.从图表中我们可以看出,联网最多的程序有360浏览器、腾讯课堂、wps等,没有发现什么可疑的程序。
2.使用sysmon工具监控系统#
2.1.下载Sysinternals套件,Sysmon是该套件中的一个工具,可以监控几乎所有的重要操作。
2.2.确定要监控的目标。对信任的程序设置白名单。
2.3.明确了要监控的目标后,在Sysmon所在的目录下创建相应的配置文件sysmon20175312.xml了,如下:
各标签的概念:
exclude相当于白名单,不用记录。include相当于黑名单。onmatch意为匹配。
ProcessCreate表示进程创建
NetworkConnect是网络连接
CreateRemote是远程线程创建。这里使用“include”选择记录目标为explorer.exe、svchost.exe、firefox.exe、winlogon.exe和powershell.exe 的远程线程,这些程序的详细含义可以参考学姐的博客
FileCrete Time是进程创建时间
2.4.以管理员身份打开cmd,进入sysmon所在的文件夹,输入Sysmon.exe -i sysmon20175312.xml。
2.5.打开计算机管理,查看事件查看器,在应用程序和服务日志/Microsoft/Windows/Sysmon/Operational中,可以看到按照配置文件的要求记录的新事件,以及事件ID、任务类别以及详细信息。
2.6.最早的一条日志就是找到我们创建的sysmon20175312.xml配置文件
3.恶意软件分析
3.1.采用virustotal网站对恶意软件进行分析
3.2.Process Explorer工具
其作用是实时显示文件系统、注册表、进程/线程的活动。
第一步:查找进程
第二步:查看该进程具体信息
3.3.用wrieshark补包分析
(1)使用实验二生成的后门程序回连kali虚拟机#
(2)wrieshark补包分析,可以发现后门回连过程中建立了完整的三次握手,设置相应的ip过滤器后,可以具体观察每次执行命令后新增的包
3.4.使用Systracer进行分析
(1)首先下载并安装Systracer
(2)点击右侧的take snapshot,存储快照。
快照一(Snapshot #1):未移植后门程序
快照二(Snapshot #2):植入后门程序
快照三(Snapshot #3):运行后门程序并在kali中实现回连
快照四(Snapshot #4):执行webcam_snap命令
快照五(Snapshot #5):关闭监控
如下图,已完成五次快照
挑选快照三和快照四进行对比分析,可以看到后门程序对注册表和文件的修改操作:
三、实验后回答问题
1.如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所以想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
答: 使用Windows任务计划netstat查看网络连接情况,使用Process Explorer监控进程,使用wireshark捕包,分析数据包使用sysmon工具,配置好想要监控的端口、注册表信息、网络连接等信息,通过其生成的日志文件进行查看
2.如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
答: 采用virustotal网站对恶意软件进行分析,可以使用Process Explorer工具监控相关进程和线程的活动,可以通过systracer工具进行相关的分析,查看它对注册表和文件的修改。
四、实验总结
本次实验完成的相对顺利,只在最后分析快照的时候遇到了一些问题,后门程序本来就在主机上,之前也使用过,且之前实验用到的后门程序我都存在主机中,拍快照一时我只是把后门程序换了个位置而没有一个个删除,可能就是因为这点,快照一和快照二没有什么明显的差距,最后不得已就选择分析了肯定有很大区别的快照三和快照四,效果不错
本次实验中我学会了监控你自己系统的运行状态的方法,也知悉了分析恶意软件的方法,收获良多,虽然写实验博客的时候很繁琐,但对巩固提升也是很有意义的。