Exp4 恶意代码分析 ——20164325王晓蕊
1.实践目标
- 监控你自己系统的运行状态,看有没有可疑的程序在运行。
- 分析一个恶意软件,就分析Exp2或Exp3中生成后门软件;分析工具尽量使用原生指令或sysinternals,systracer套件。
- 假定将来工作中你觉得自己的主机有问题,就可以用实验中的这个思路,先整个系统监控看能不能找到可疑对象,再对可疑对象进行进一步分析,好确认其具体的行为与性质。
2.实践内容
2.1系统运行监控
使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述一下分析结果。目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓包的情况下只能猜),你觉得它这么干合适不。如果想进一步分析的,可以有针对性的抓包
2.1.1使用计划任务监控系统
- 通过:以下命令,创建计划任务
netstat4325
schtasks /create /TN netstat4325 /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > c:\netstat 4325.txt"
- 在桌面建立一个netstatlog.txt文件,内容为:
date /t >> c:\ netstatlog.txt
time /t >> c:\ netstatlog.txt
netstat -bn >> c:\ netstatlog.txt
修改为.bat脚本文件(我的方法:创建txt文本文件,使用记事本写入后通过修改文件名来修改文件格式,我好像是直接在下一步的操作中改变的文件名,把txt改为了bat。)
- 打开任务计划程序,可以看到我们新创建的这个任务:
- 双击打开这个任务,点击"操作",再进行编辑。
- 在执行此批处理文件很长时间后,我打开netstatlog.txt进行查看,发现已经记录了一段时间的联网记录。我觉得数据足够多的时候,就开始了下一步的分析。
- 用excel分析数据。(学习了学长学姐的方法)
1.导入文本数据:新建excel文件->选择上方“数据”->选择“获取外部数据”->选择“自文本”
2.选择记录连接情况的文本netstatlog.txt,点击“导入”
3.进入文件导入向导第一步,选中“分隔符号”,点击“下一步”
4.进入文件导入向导第二步,选中全部分隔符号,点击“下一步”
5.进入文件导入向导第三步,列数据格式选择常规,点击“完成”。
- 对数据进行统计学分析:
1.首先查看所有联网程序的联网次数,具体excel操作如下:
①首先选中我们要分析的列:
②其次点击上方“插入”->“数据透视表”->“数据透视图”
③默认选择在一个新工作表中生成
②将该字段拖动到下方的“轴字段”和“数值”两个区域中
分析:
首先可以看到TCP是最多的。
其次是“[vmware-hostd.exe]”和“[vmware.exe]”也就是我的虚拟机,因为我在运行着我的虚拟机没有关。
再是[mDNSResponder.exe]他不是病毒或恶意程序,一般会在安装 Adobe CS3 Photoshop 或 Apple Safari 后出现,他是一个名为 Bonjour 的服务,是 Apple 公司的产品。安装后以 Windows 服务形式存在,可以在 Services.msc 里看到。
[QQ.exe]运行的QQ软件。
[AppleMobileDeviceService.exe] 是用于苹果移动设备包括(Iphone,ipad,ipod,itouch)的相关程序。这个进程正是iTunes软件对苹果移动设备提供支持的服务,无危险。
其他的都是些windows管理进程,我装的2345的软件,以及浏览器之类的进程。
2.1.2使用sysmon工具
- 创建配置文件20164325wangxiaor.xml,文件中包含指令(使用老师的代码)
- 在官网上下载了sysmon工具,超级简单,而且很快没有很长时间下载。
一键安装命令: sysmon -accepteula -i -n
- 在任务管理器中看到sysmon.exe已经在运行了
- 在事件查看器里查看日志
图标“计算机”右键,点击打开“管理”。点击左侧“系统工具”->“事件查看器”->应用程序和服务日志/Microsoft/Windows/Sysmon/Operational
- 利用Sysmon具体分析日志
这里我选择了自己实验二中生成的后门进行分析(命名为20164325cc_backdoor.exe)
启动回连、安装到目标主机。
进行分析:
如上图可看出可以看到目的地为kali的ip,发出的为主机的ip,还有显示出后门的来源和端口、网关等详细信息
我还看了其他的信息,我的电脑访问了很多不同地区的联通,我也不知道这是为什么。还有一些是自己主机的,我的电脑还访问了vmware的服务器,还有网络连接不通的时候访问的服务器,还有qq,2345啥的程序,浏览器上都可以找到这些ip的内容,也有人分析是不是病毒,所以我觉得还是很好的。
也可以查找筛选,来找到自己需要的内容。
2.2恶意软件分析(1.5分)
(静态分析)
2.2.1使用VirusTotal分析恶意软件
- 将生成的后门程序上传到VirusTotal中(也可以使用VirusScan工具),毒率还是挺高。
- 查看这个恶意代码的基本属性
可以看出它的SHA-1、MD5摘要值、文件类型、文件大小,以及TRiD文件类型识别结果。(注:TRiD通过读取文件头,根据特征码进行文件类型匹配。)
- 还可以看到加壳情况
- 以及该恶意代码的算法库支持情况
2.2.2使用PEiD分析恶意软件
- 安装好PEiD后,先检测先前未加壳的后门程序:
- 再检测加壳后的后门程序,PEiD成功检测出了加壳的相关信息:
(动态分析)
2.2.3使用Process Monitor分析恶意软件
- 汉化版下载网址http://www.pc6.com/softview/SoftView_15853.html
- 打开后查找后门进程
- 可以看到进程的详细信息
- 还可以查看堆栈
2.2.4使用Process Explorer分析恶意软件
直接搜索下载Process Explorer
- 靶机运行后门程序进行回连时,在 Process Explorer工具中查看到其记录。
- 回连的时候找到后门进程
- 也可以详细查看该进程使用的CPU,虚拟内存空间、物理内存空间、I/O等
2.2.5使用systracer分析恶意软件
Systracer下载网址http://www.onlinedown.net/soft/397250.htm
要抓了以下状态: 打开未植入后门的win7保存快照,命名为Snapshot #2 将木马植入win7,对win7注册表、文件等进行快照,保存为Snapshot #3 打开kali的msfconsle,win7运行木马,回连kali,win7下再次快照,保存为Snapshot #4 在kali中对靶机进行查看文件操作ls,win7下再次快照,保存为Snapshot #5
(读取、添加、删除了哪些注册表项)
下面是将snapshot#2与snapshot#3进行比较:可以通过注册表发生了修改,有些内容是不是还不可查看,这样增加的减少的改变的都可以很明显的显示出来,还是有些不可见的内容。
(读取、添加、删除了哪些文件)
下面是Snapshot #2和Snapshot #4的对比,后门回连kali的变化:
绿色就是新增,蓝色就是改变
3.实践后问题回答
1问
- 用windows自带的schtasks,设置计划任务,对主机的进程进行记录等。
- 用sysmon工具,配置好想要监控的端口、注册表信息、网络连接等信息,通过其生成的日志文件进行查看。
- 用Process Explorer工具,监视进程执行情况和调用的程序库。
2问
- 同样采用以上工具
- 用wireshark查看数据包,分析地址内容;
- systracer进行快照的对比;
- peid查看有没有壳。
4.实践总结与体会
此次实验很要分析很多东西,但是我的分析并没有很完善,因为有些东西我掌握的还不是那么的扎实,知道的还不是那么的全面,但是经过此次实验学到了很多能捕捉进程的工具和方式方法,我就更能了解到自己电脑都干了什么,就像老师说的一样,在我们休息的时候电脑就会满世界的跑,真的对之后的种种很有帮助。
这次实验我并没有错误分析,因为我做的比较顺利,系统和工具没有出现很大问题;就只有在一开始改文件名的时候出现了小问题,但是我也都比较轻松地解决了。我觉得我的问题主要出现在最后使用systracer分析恶意软件的部分,感觉到了systracer的复杂和全面,能很清楚的分析读取、添加、删除了哪些注册表项,读取、添加、删除了哪些文件!