20155218 《网络对抗技术》 MAL_恶意代码分析

实验内容:

1、使用schtasks指令监控系统运行

  • 1、在C盘下新建一个文本文档,输入一下内容后,更名为netstatlog.bat
date /t >> c:\netstatlog.txt
time /t >> c:\netstatlog.txt
netstat -bn >> c:\netstatlog.txt
  • 2、以管理员身份运行powershell或者cmd,并输入指令
schtasks /create /TN netstat /sc MINUTE /MO 2 /ru "System" /TR "d:\netstatlog.bat"

其中,TN是TaskName的缩写,我们创建的计划任务名是netstat5303;sc表示计时方式,我们以分钟计时填MINUTE;TR=Task Run,要运行的指令是 netstat -bn,b表示显示可执行文件名,n表示以数字来显示IP和端口。

  • 3、在netstatlog.txt中就可以看到一些记录
2018/04/13 周五
17:49
请求的操作需要提升。
2018/04/13 周五
17:49
请求的操作需要提升。
2018/04/13 周五
17:51 活动连接 协议 本地地址 外部地址 状态
2018/04/13 周五
17:52 活动连接 协议 本地地址 外部地址 状态
TCP 192.168.1.107:49461 180.163.251.163:80 SYN_SENT
[SoftupNotify.exe]
TCP 192.168.1.107:49462 106.120.160.155:80 SYN_SENT
[360tray.exe]
TCP 192.168.1.107:49463 106.120.160.155:80 SYN_SENT
[360tray.exe]
2018/04/13 周五
17:53 活动连接 协议 本地地址 外部地址 状态
TCP 192.168.1.107:49479 180.163.251.163:80 SYN_SENT
[360tray.exe]
2018/04/13 周五
17:54 活动连接 协议 本地地址 外部地址 状态
TCP 192.168.1.107:49482 122.193.207.44:80 SYN_SENT
[DgService.exe]
TCP 192.168.1.107:49483 210.52.217.139:80 SYN_SENT
[360tray.exe]
TCP 192.168.1.107:49484 210.52.217.139:80 SYN_SENT
[360tray.exe]
TCP 192.168.1.107:49485 210.52.217.139:80 SYN_SENT
[360tray.exe]
2018/04/13 周五
17:55

用excel对schtasks得到的数据进行分析

  • 删除重复的ip地址剩余185个;

    20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

  • 导入到whois查看ip

    20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

  • 4、遇到的问题:

    (1)20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

    程序无法执行,原因就在于我的运行条件中的设置,需要使用电源才能执行,而我正好没接电源。20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

2、使用sysmon工具监控系统运行

  • 根据老师要求需要记录一下三个事件:

    20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

  • 1、 sysmon微软Sysinternals套件中的一个工具,要使用sysmon工具先要配置文件

<Sysmon schemaversion="3.10">
<!-- 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>
</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>
  • 2、配置好文件之后,要先使用Sysmon.exe -i C:\Sysmoncfg.txt指令对sysmon进行安装:

    20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

    出现小错误,但是但是按照提示做就可以了;
  • 3、在事件查看器里查看相应的日志:

    20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP
  • 4、对Sysmoncfg.txt配置文件进行修改,重点监视80和443端口的联网情况
<Sysmon schemaversion="3.10">
<!-- 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">SogouExplorer.exe</Image>
</NetworkConnect> <NetworkConnect onmatch="include">
<DestinationPort condition="is">80</DestinationPort>
<DestinationPort condition="is">443</DestinationPort>
</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>

prcess creation :使用netasta.exe程序来统计联网信息的事件的建立。

20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

process terminaled :使用netasta.exe程序来统计联网信息的事件的终止。

20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

network connection

20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

3、使用systracer工具分析恶意软件

使用systracer工具建立了4个状态的快照

  • 未放入病毒
  • 注入病毒
  • 运行病毒
  • kali执行命令

    20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

回连执行后,可以程序打开的端口和handles信息:

20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

4、使用火绒剑

-实现成功回连后,查看火绒剑的进程监控:

20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

-查看其回连ip地址;

20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

-查看其调用栈,并且可以进行反汇编

20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

-查看进程,可以发现20155218.exe为未知文件;

20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

5、使用VirusTotal分析恶意软件

  • 把生成的恶意代码放在VirusTotal进行分析:66个杀软共有15个查出;

    20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP
  • 查看该恶意代码的基本情况:20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP
  • 该恶意代码的算法库支持情况:20155218 《网络对抗技术》 MAL_恶意代码分析-LMLPHP

6、实验问题回答

(1) 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。

我会从一下方面:1、注册表;2、系统服务;3、开机启动项;4、文件创建;5、网络连接情况;6、钩子;7、内核 进行监控,可以使用systracer,sysmon,火绒剑等工具监控;

如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。

我可以使用wireshark查看其具体信息,比如用的什么协议,回连ip是多少,也可以使用火绒剑查看其调用的栈和其相关进程;

7、实验总结与体会

这个实验中,我们要学习如何分析恶意代码,从而知道如何设计恶意代码,在分析恶意代码的时候,有比较简单的工具,但需要大量的分析总结,也有比较成熟的软件,能够较快的查看到相关的信息。常在河边走,哪有不湿鞋,经常弄这个恶意代码,说不定哪天自己就被攻击了(模糊的记得好像有个虚拟机与我的mac采用了无缝连接,有点慌),使用这些工具可以监控自己的电脑,感觉放心了不少。

05-11 20:13