#Exp4 恶意代码分析#
Exp4 恶意代码分析#
20154305 齐帅###
一、实践内容#
(一)系统运行监控##
1.Windows计划任务—schtasks。
-
输入指令
schtasks /create /TN 20154305netstat /sc MINUTE /MO 3 /TR "cmd /c netstat -bn > c:\netstatlog.txt"
-
实现每3min记录下有哪些程序在连接网络,输出结果在C盘的netstatlog.txt文件中。
解释:TN是TaskName的缩写,我们创建的计划任务名是20154305netstat;sc表示计时方式,我们以分钟计时填MINUTE;TR=Task Run,要运行的指令是 netstat -bn,b表示显示可执行文件名,n表示以数字来显示IP和端口。(from姝妍学姐博客 :)
- 我们打开文件就会看到里面已经被写了内容
如果想要系统记录时间的话需要加一个批处理配置文件 .bat,在C盘主目录下新建一个文件c:\netstatlog.bat,里面的内容为:
date /t >>c:\netstatlog.txt
time /t >>c:\netstatlog.txt
netstat -bn >>c:\netstatlog.txt
至于什么意思嘛就是那个意思的。
- 然后
win+I
打开 控制面板->系统与安全->管理工具->计划任务,找到20154305netstat任务
双击打开,对操作选项卡进行编辑,将“程序或脚本”内容替换为C盘下的netstatlog.bat文件,修改成功后运行一下程序,就可以看到不一样的统计结果了。
-
可以看到统计的结果中有了时间记录,不明觉厉!
-
等一段时间过后就可以对记录进行统计分析了,用Excel工具统计一下。
-
可以看到,联网最频繁的是
BaiduNetdisk.exe
,百度网盘,没错!因为我当时正在下 Matlab。。。 -
而且我发现WPS总会时不时的联网,偷偷跑出去,
-
在我对其IP地址进行查询的时候,竟然发现可以通过IP地址定位到这么详细的信息,恐怖!!!
2.Sysmon监控
-
先下载一个sysmon.exe 程序,当然可以用老师给的
-
安装sysmon,不过安装sysmon需要配置文件,指定它监控的内容
-
创建配置文件20154305.txt
内容为:
<Sysmon schemaversion="4.00">
<!-- Capture all hashes -->
<HashAlgorithms>*</HashAlgorithms>
<EventFiltering>
<!-- Log all drivers except if the signature -->
<!-- contains Microsoft or Windows -->
<DriverLoad onmatch="exclude">
<Signature condition="contains">microsoft</Signature>
<Signature condition="contains">windows</Signature>
</DriverLoad>
<NetworkConnect onmatch="exclude">
<Image condition="end with">chrome.exe</Image>
<Image condition="end with">iexplorer.exe</Image>
<SourcePort condition="is">137</SourcePort>
<SourceIp condition="is">127.0.0.1</SourceIp>
</NetworkConnect>
<CreateRemoteThread onmatch="include">
<TargetImage condition="end with">explorer.exe</TargetImage>
<TargetImage condition="end with">svchost.exe</TargetImage>
<TargetImage condition="end with">winlogon.exe</TargetImage>
<SourceImage condition="end with">powershell.exe</SourceImage>
</CreateRemoteThread>
</EventFiltering>
</Sysmon>
-
意思应该就是监控非官方的驱动加载、端口137的本机内的进程通话、还有除了什么什么。。。
-
输入指令
sysmon.exe -i 20154305.txt
安装(此处需要指定sysmon.exe和txt文件的绝对路径)
-
安装好之后等一段时间就可以去查看日志了
-
win+I
打开 控制面板->系统与安全->管理工具->系统日志 -
依次打开 应用程序和服务日志-> Microsoft -> Windows -> sysmon -> Operational
点击事件就可以查看信息了,我们运行起来后门木马查看一下:
-
信息嘛~还是挺详细的,不过我可能就是老师说的那种只能做到用功能,不能分析出有潜在威胁的那种吧。
-
现在我们通过筛选器将ID为1,2,3的分别筛选出来,保存为txt文本
-
然后将txt文本导入到excel表格进行统计分析。分隔符只需要选择Tab键
-
可以看到创建进程,更改时间和联网事件
咦这个utctime是什么情况,QQ浏览器3点多钟还在运行????好慌,去百度了一下这个,原来是叫“世界协调时间”,就好像这个是一个标准,北京的时间比它快8个小时,哦这就理顺了,吓我一跳
- 文件位置、拥有者、目的地址和端口号等只要你做过的事情就都会留下痕迹,遗憾的是我的分析能力真的不行,sad
(二)恶意软件分析##
1.特征库对比###
- 登录
https://www.virustotal.com
网站,上传一个后门木马,进行静态分析
行为扫描的结果还是很详细的,就简简单单的6行,都是英文对我来说太难了,只好借助翻译软件了,看图
- 大致就是这个病毒运行时会动态调用链接库,能够调用系统库自然就会有系统权限,就很危险!!!
2.SysTracer###
- 很遗憾我的SysTracer根本运行不了,下了无数个版本,中英都有,就是不能快照,只好放弃了
3.Wireshark抓包###
-
讲真,wireshark我用过的,过滤条件啥的玩的贼溜,可惜我就是不会分析里面的内容额
-
启动后门木马回连kali主机,在启动之前打开wireshark并设置过滤条件,这里就只需要一个端口=4305就可以了,抓4-5秒之后停止就行了。
- 可以看到原地址和目的地址,端口号等信息,至于再深的层次我也无能为力了:)
4.Process Monitor###
- Baidu直接下载就可以了,打开之后就会显示当前正在运行的进程,颜色很鲜艳,赞~
-
我们运行一个后门木马程序,并且在Process Monitor中找到他,说实话我还是找了好久的~
-
双击我们可以得到该进程的很多信息,只可惜我看的晕晕的,我真的觉得这个实验太难了
- 我已经把360关闭了为什么还会有360的进程,点进去一看是什么主动防御!太无耻了,我决定给他杀死三次,实验结束后我就把360卸载了。
二、实验后回答问题#
(1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。####
我认为最直接的方法使用sysmon工具,把你最怀疑的程序添加到“黑名单”中进行重点监控,其次可以用schtasks指令,虽然有广泛撒网的感觉,收集的信息量会很大,但与此同时,收集的信息也是比较全面的,直接在命令行中netstat -n命令,能够查看TCP连接的情况,使用Process Explorer,监视进程的执行
(2)如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。####
使用systracer工具建立不同的快照(当然我没有做这个:),分析某个程序执行前后计算机注册表、文件、端口的一些变化情况,使用wireshark进行抓包分析,查看进程或程序联网时进行的操作
三、实验总结与体会#
总的来说这次实验做的没有前几次做的爽,因为没有攻击,也没有病毒,而是防御更多一点吧,可能我这方面的基础太薄弱了(其实是都很薄弱),完全是一头雾水,什么也分析不出来,只觉得这些工具很厉害的样子,一种不明觉厉的感觉油然而生,但是这次实验给我最大的收获就是以后如果真的需要进行恶意代码分析了能够知道用什么工具(当然可能还会是一头雾水),总之这次实验的体验感一般吧,额(⊙o⊙)…