20164305 徐广皓 Exp4 恶意代码分析

mac2022-06-30  14

 

实践目标

 

1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行。

1.2是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件;分析工具尽量使用原生指令或sysinternals,systracer套件。

1.3假定将来工作中你觉得自己的主机有问题,就可以用实验中的这个思路,先整个系统监控看能不能找到可疑对象,再对可疑对象进行进一步分析,好确认其具体的行为与性质。

实践内容

 2.1系统运行监控(1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述一下分析结果。目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓包的情况下只能猜),你觉得它这么干合适不。如果想进一步分析的,可以有针对性的抓包。(2)安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为。  2.2恶意软件分析(1.5分)  (1)启动回连  (2)安装到目标机(3)及其他任意操作时(如进程迁移或抓屏,重要是你感兴趣)。(3)读取、添加、删除了哪些注册表项(4)读取、添加、删除了哪些文件(5)连接了哪些外部IP,传输了什么数据(抓包分析)

1. 系统运行监控——计划任务

创建计划任务,使系统每1分钟自动检测到有哪些程序在连接我们的网络。

1 schtasks /create /TN 20164305 /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > e:\20164305.txt" TN:Task Name,本例中是netstatSC: SChedule type,本例中是MINUTE,以分钟来计时MO: MOdifierTR: Task Run,要运行的指令是 netstat-bn,b表示显示可执行文件名,n表示以数字来显示IP和端口

在E盘根目录下新建20164305.bat(重命名更改类型),用于计时

1 date /t >>e:\20164305.txt 2 time /t >>e:\20164305.txt 3 netstat -bn >>e:\20164305.txt

控制面板->系统与安全->管理工具->任务计划程序,修改 计划属性

一定要使用最高权限运行,否则则会出现请求不成功的情况

选择刚才编辑好的脚本,添加到设置中

一段时间后,记录得到数据(实际上1个小时,电脑没电了自己关机了)

对获得的数据进行分析

发现TCP和360使用网络情况较多,对svhost比较好奇,然后就去查了一下

然后又去搜索了一下Microsoft.Photos.exe

emmm有点慌。。。一会去研究研究能不能了解了它

2. 系统运行监控——利用Sysmon

安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为。

写配置文件

写与自己想要监控的事件相对应的配置文件。编写20164305.xml,内容如下:

1 <Sysmon schemaversion="4.00"> 2 <!-- Capture all hashes --> 3 <HashAlgorithms>*</HashAlgorithms> 4 <EventFiltering> 5 <!-- Log all drivers except if the signature --> 6 <!-- contains Microsoft or Windows --> 7 <DriverLoad onmatch="exclude"> 8 <Signature condition="contains">microsoft</Signature> 9 <Signature condition="contains">windows</Signature> 10 </DriverLoad> 11 12 <NetworkConnect onmatch="exclude"> 13 <Image condition="end with">chrome.exe</Image> 14 <Image condition="end with">iexplorer.exe</Image> 15 <SourcePort condition="is">137</SourcePort> 16 <SourceIp condition="is">127.0.0.1</SourceIp> 17 </NetworkConnect> 18 19 <CreateRemoteThread onmatch="include"> 20 <TargetImage condition="end with">explorer.exe</TargetImage> 21 <TargetImage condition="end with">svchost.exe</TargetImage> 22 <TargetImage condition="end with">winlogon.exe</TargetImage> 23 <SourceImage condition="end with">powershell.exe</SourceImage> 24 </CreateRemoteThread> 25 </EventFiltering> 26 </Sysmon>

安装Sysmon, .\sysmon.exe -i e:\20164305.xml (win10中要加.\否则会报错)

在控制面板->系统与安全->管理工具->事件查看器->应用程序和服务日志-> Microsoft -> Windows -> sysmon -> Operational中找到日志

然后筛选日志信息,并导出查看

利用Sysmon具体分析日志

这里我选择了自己实验二中生成的后门20164305_backdoor.exe进行分析

先进行回连

然后输入查看目录的命令

然后利用wireshark进行分析

可以看到,其先进行了TCP的三次握手,之后再进行数据的传输。

3.恶意软件分析

网站上查看后门程序的行为分析。

可以看出这个后门程序是利用upx加壳的恶意代码,但功能未知

利用软件分析exe

首先是恶意软件,返回加壳结果

然后对一个安全软件进行检测,发现什么都没发现o(╥﹏╥)o

利用wireshark对恶意软件执行过程进行分析

与前面步骤相同,使用回连程序进行回连

然后监听整个后门过程,对其TCP连接过程进行分析

前一部分为Linux使用mns启动过程所用的网络连接

然后与虚拟机端口(Windows主机)进行tcp三次握手

然后进行指令调用等操作。

试验后回答问题

如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控? 利用sysmon工具,配置好想要监控的端口、注册表信息、网络连接等信息,通过其生成的日志文件进行查看利用wireshark查看数据包,TCPview也可以,但是没那么全面利用systracer进行快照,比照注册表、文件等信息利用Process monitor、Process Explorer如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息? 同样采用以上工具,用wireshark查看数据包,systracer进行快照的对比(注册表、文件等),peid查看是否加壳,Process Explorer查看调用的程序库、dll库等

实验总结与体会

杀软有助于普通用户对自己的电脑进行监控,就像图形化界面对于不熟练运用命令行的用户使用方便相同,利用检测工具能从最原始的角度发现系统情况与问题,而不是简单依靠杀软来维护系统安。

转载于:https://www.cnblogs.com/zui-luo/p/10665349.html

最新回复(0)