20145322 《网络攻防》恶意代码分析
20145322 《网络攻防》恶意代码分析
一、基础问题回答
1.总结一下监控一个系统通常需要监控什么、用什么来监控。
通常监控以下几项信息:
系统上各类程序和文件的行为记录以及权限
注册表信息的增删添改
监控软件:
TCPview工具查看系统的TCP连接信息
wireshark进行抓包分析
sysmon用来监视和记录系统活动
2.如果在工作中怀疑一台主机上有恶意代码,请设计下你准备如何找到对应进程、恶意代码相关文件。
使用tcpview工具检测有哪些程序在进行网络连接
使用PE解析软件查看可疑进程的详细信息,查看其是否加壳,分析调用的DLL及其函数用途
去专业网站扫描可疑进程,查看测评分数也可分析文件行为
使用抓包软件分析进程网络连接传输的数据
使用Dependency Walker来分析是否有关于注册表的异常行为等。
二、实践过程记录
1.恶意代码的静态分析
在专业网站进行测试:
分析文件行为:
结果有建立到一个指定套接字连接的行为、自行删除注册表键和值的行为以及检测自身是否被调试的行为。
2.使用PE解析软件查看可疑进程的详细信息
通过“导入表(Import)”,查看这个程序都调用了哪些dll文件:
ADVAPI32.dll:调用这个dll可以实现对注册表的操控,
WSOCK32.dll和WS2_32.dll:用于创建套接字,即会发生网络连接。
使用PEID
Nothing found 说明没加壳,不识别该编译器。
此时可以查看反汇编之后的代码:
使用Dependency Walker
从上图可知,通过查看DLL文件的函数,该可执行文件会删除注册表键和注册表键值。
TCPview工具
通过查看每个进程的联网通信状态,初步判断其行为。
SysTracer工具
打开攻击机msfconsle,开放监听;win7下对注册表、文件、应用情况进行快照,保存为Snapshot #1
win7下打开木马test.exe,回连kali,win7下再次快照,保存为Snapshot #2
kali中通过msf发送文件给win7靶机,win7下再次快照,保存为Snapshot #4
kali中对win7靶机进行屏幕截图,win7下再次快照,保存为Snapshot #3
通过“compare”操作来比较每次快照文件的区别。
对比Snapshot #1和Snapshot #2,可以看到注册表里面出现了新的端口。
对比Snapshot #2和Snapshot #3 安装到目标机时,文件内容监控发现多了个文件。
对比Snapshot #4和Snapshot #3。可以发现启动回连时注册表发生变化了,截屏时注册表也发生了变化。
netstat命令设置计划任务
在D盘中创建一个netstat5322.bat文件
在TXT中写:
date /t >> d:\netstat5322.txt
time /t >> d:\netstat5322.txt
netstat -bn >> d:\netstat5322.txt
新建一个触发器:
操作选项栏的启动程序设为我们的netstat5322.bat,参数为>>d:\netstat5322.txt。
运行任务,发现d盘下出现netstat5322.txt文件,但是没有显示出我们想要的网络连接记录信息,而是显示了“请求的操作需要提升”,用管理员权限运行即可。