一、基础问题回答
- 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
可以用window7自带的schtasks,或者下载Sysmon进行对电脑的监控,不过分析起来,需要每一个都点开看,比较繁琐。或者使用wireshark抓包检测流量等进行分析,对于每一包分析起来有很多数据进行辅助,比如端口信息啦,源ip地址啦;或者使用PE Explore分析恶意软件里的内容,还有就是病毒分析网站自带的文进行文分析报告,我们也可以从哪里读取一些我们需要的数据。
- 如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
去网站上扫描分析文件、用Wireshark进行抓包分析、systracer查看具体进程改变的注册表信息、sysmon用来监视和记录系统活动看看日志分析什么的、等等一系列上面的。如果能熟练掌握上述工具,能做到更好的网络攻防了。
实践内容
1.使用schtasks指令监控系统运行
在C盘目录下建立一个netstatlog5219.bat文件,用来将记录的联网结果格式化输出到netstatlog.txt文件中,netstatlog.bat内容为:
date /t >> c:\netstatlog.txt
time /t >> c:\netstatlog.txt
netstat -bn >> c:\netstatlog.txt
2.在命令行中输入指令schtasks /create /TN netstat /sc MINUTE /MO 2 /TR "d:\netstatlog.bat"创建任务,每隔两分钟记录联网内容
得到创建的txt文件
3.打开netstatlog.txt文件查看记录内容,刚开始打开的时候出现以下问题:
可能是权限不够,设置为以管理员身份运行之后仍然无法完成联网记录。出现的问题和上面一样,我去翻学长学姐的博客发现他们并没有很好地解决这个问题。于是我上网搜索,看了很多办法。
给你所需要程序右键属性-兼容性-以管理员身份运行此程序
只在计划任务里设置最高权限运行没用...必须相应的程序也设置
得到了解答。
于是成功了,下面贴上一些主要步骤的图片。
打开计划任务,运行netstatlog这个任务。
右键,属性将如图所示的按钮点亮,问题终于解决了。
下面进行相关分析
进程监控到的有腾讯安全管家
、有道云笔记、
UC浏览器等(其中有一些我也不知道是什么的.exe =_=)。
二 ,安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为。
先下载好sysmon,地址在这Sysmon v7.01
首先要对软件进行配置,以下是一些说明:记录所有网络连接就可以简单写为
一般都是写成类似下面的规则,会过滤掉一些。exclude相当于白名单,是那些不用记录的内容。include相当于黑名单。对于一般的使用电脑的人来说使用白名单更安全,凡是不了解都记录。
以下为xml文件
<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">vmware.exe</Image>
<Image condition="end with">iexplorer.exe</Image>
<Image condition="end with">WeChat.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>
安装完成之后,看看sysmon是否在运行。
如图所示,已经在运行中。
打开事件查看器,如下图:
做一些活动后,查看sysmon的一些记录,我有如下发现:
这个是我用IE浏览器的显示
这个是我使用wireshark时的显示:
之后使用kali进行后门回连。
sysmon立即捕捉到后门程序的运动
之后使用查找功能,进行筛选,否则在2000+个选项中选出你想要的是很难的,如下图:
我们可以清楚地看到后门程序是如何一步步潜入我们的电脑中的。
首先是网络连接检测
之后是进程创建,之后再kali端就可以对本机电脑进行操作了。
操作完成后,在kali端退出监听,事件查看器中也显示了进程终止的显示。
由此就完成了一次完整的监视。
三、使用SysTracer工具分析恶意软件
1.使用SysTracer工具建立以下五个快照:
- 1.一开始在目标主机上进行快照保存为Snapshot #1;
- 2.在虚拟机中生成后门软件,将文件传到目标主机后快照保存为Snapshot #2;
- 3.在虚拟机开启监听的情况下,在目标主机运行后门程序后快照保存为Snapshot #3;
- 4.在虚拟机对目标主机进行截图后在目标主机中快照保存为Snapshot #4;
- 5.在虚拟机获取目标主机摄像头后在目标主机快照保存为Snapshot #5.
2.快照结果比对分析:
(1)快照1和快照2:
可以看到在ncat文件夹下多了我们传输的backdoor.exe:
也可以看到在传输过程中有网络诉求
(2)快照2和快照3:
成功回连之后发现增加了一些注册表键
(3)快照3和快照4:
注册表信息又有变化
4)快照4和快照5:
获取目标主机摄像头后快照发现传输过来的程序有网络诉求
四、使用wireshark分析恶意代码文件传输情况
1.通过虚拟机向目标主机发送恶意代码,使用wireshark进行抓包,我们抓到了虚拟机与主机的三次握手包
2.建立连接之后具体看一下数据包的内容,这个包是从虚拟机发到主机的,端口是5219,使用IPv4协议
3.同时wireshark还捕捉到我的虚拟机和其他IP地址的连接情况。
四、使用virscan分析恶意软件
1.在病毒分析网站上分析之前我们自己生成的后门程序
(1)发现有21/39的杀软能够查杀到这个恶意代码
(2)可以根据下图看到这个代码由PACKER:UPolyX v0.5加的壳
(3)此病毒能建立到一个指定的套接字连接,并且能够删除注册表键和注册表键值
五、使用PE Explore分析恶意软件
1.使用PE Explore打开可执行文件,可以看出文件的编译时间是2009年7月7日00:09:45,链接器版本号为6.0
2.看一下这个文件的导入表中包含的dll文件:
(1)ADVAPI32.dll可实现对注册表的操控
(2)WSOCK32.dll和WS2_32.dll用于创建套接字
实验总结与体会
本次实验对自己的主机进行了一些监控,发现有一些恶意代码杀软真的检测不出,一些程序真的是默默地在计算机里搞一些事情,甚至在没有开机的情况下,都可以进行一些连接。以后不能只靠着杀毒软件了,我们学习的还都只是皮毛,有太多的我们不知道的东西潜伏者,我们应该在平时多多提高防范意识,多用老师提供的软件进行实时监测,在以后的学习工作中绝对会受益匪浅的。还是那句话,要靠自己啊。。。