20155217《网络对抗》Exp04 恶意代码分析
20155217《网络对抗》Exp04 恶意代码分析
实践内容
- 使用schtasks指令监控系统运行
- 使用sysmon工具监控系统运行
- 使用virscan分析恶意软件
- 使用systracer工具分析恶意软件
- 使用Process Explorer分析恶意软件
- 使用Process Monitor分析恶意软件
- 使用wireshark分析恶意软件回连情况
- 使用PEiD分析恶意软件
使用schtasks指令监控系统运行
- 在C盘目录下建立
netstatlog.bat
文件,用来将记录的联网结果格式化输出到netstatlog.txt
文件中,netstatlog.bat
内容为:
date /t >> c:\netstatlog.txt
time /t >> c:\netstatlog.txt
netstat -bn >> c:\netstatlog.txt
- 打开Windows下命令提示符,输入指令
schtasks /create /TN netstat /sc MINUTE /MO 2 /TR "c:\netstatlog.bat"
指令创建一个每隔两分钟记录计算机联网情况的任务。 - 之后查看
netstatlog.txt
文件,都是正常联网的应用。
- 隔天再次查看了这一天当中记录的主机联网日志,并未发现异常。
出现的小问题
在最初运行netstatlog.bat
的时候,会出现需要提高权限的情况。
所以我在运行netstatlog.bat
时右键单击,点击以管理员身份运行,之后在打开txt文件就能正常显示信息啦。
使用sysmon工具监控系统运行
- 使用
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>
- 配置好文件后,先使用
Sysmon.exe -i C:\Sysmon.txt
指令对sysmon进行安装:
- 启动之后,便可以到事件查看器里查看相应的日志:
- 我查看了其中一部分事件的详细信息。
- 此事件是之前运行Sysmon.exe文件创建的:
- 此事件是存储360浏览器的缓存数据的:
- 此事件记录的是运行wps:
- 之后,我对
Sysmoncfg.txt
配置文件进行了修改,重点是监视80和443端口的联网情况,发现了一个SoftupNotify.exe
的未知进程,百度之后发现竟然是一个蠕虫病毒的名字= =,还是安装在了360本身自建的文件夹里。然后我就搜,发现SoftupNotify.exe
是360软件管家的升级助手文件,通常会在开机的时候,或者在软件进行升级的时候会自动启动此进程。闹了一个误会,罪过罪过。其他就没什么异常情况了。
- 对配置文件的修改如下:
<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">WeChat.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>
使用virscan分析恶意软件
- 在virscan网站上查看上次实验所做的后门软件的文件行为分析:
- 可以看到其启动回连主机的部分IP地址以及端口号,还有对注册表键值进行了删除:
- 还有反调试和创建事件对象的行为:
使用systracer工具分析恶意软件
- 共建立了3个快照,分别是:有后门程序但未回连时、后门程序回连时、执行指令操作时。
- 将恶意软件植入后回连,成功后发现注册表发生了变化。
- 对比未回连时和回连时可以发现后门程序建立了主机到Kali的tcp连接,进行了回连;后门程序对注册表项进行了修改:
- 对比回连时和输入指令时可以看到后门程序对文件、注册表等都进行了增改:
使用wireshark分析恶意软件回连情况
- 在恶意软件进行回连时,在Windows主机上用
netstat
可以查看TCP连接的情况,其中就有后门程序所建立的TCP连接:
- 使用
wireshark
进行抓包后可以看到,其先进行了TCP的三次握手
,之后再进行数据的传输,如图所示,带有PSH,ACK
的包传送的就是执行相关操作指令时所传输的数据包:
使用PEiD分析恶意软件
- PEiD是一个常用的的查壳工具,可以分析后门程序是否加了壳:
使用Process Monitor分析恶意软件
使用Process Explorer分析恶意软件
- 打开
Process Explorer
,在Process
栏点开explorer.exe前面的小加号,运行后门程序5227test32.exe,界面上就会出现它的基本信息。
- 双击后门程序那一行,点击不同的页标签可以查看不同的信息:
- 其调用的
ntdll库
,ntdll.dll
是重要的Windows NT内核级文件,描述了windows本地NTAPI
的接口。当Windows启动时,ntdll.dll就驻留在内存中特定的写保护区域,使别的程序无法占用这个内存区域。
基础问题回答
- 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
- 可以使用systracer工具比较某个程序的执行前后计算机注册表、文件、端口的变化情况。
- 可以使用Wireshark进行抓包分析,然后查看该程序联网时进行了哪些操作。
- 使用netstat命令设置一个计划任务,指定每隔一定时间记录主机的联网记录等等。
- 可以通过sysmon工具,配置好想记录事件的文件,然后在事件查看器里面查看相关文件。
- 如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
- 可以使用systracer工具比较某个程序的执行前后计算机注册表、文件、端口的变化情况。
- 可以使用Wireshark进行抓包分析,然后查看该程序联网时进行了哪些操作。
实验心得与体会
这次实验主要在参考了卢肖明学长的博客完成的,主要就是对恶意进程的监控,做的过程还算比较顺利的。通过这次实验,掌握了以前不知道的查杀检测方法,希望自己以后能更好地保护好我的电脑哦。
20155217《网络对抗》Exp04 恶意代码分析的更多相关文章
- 2018-2019 20165237网络对抗 Exp4 恶意代码分析
2018-2019 20165237网络对抗 Exp4 恶意代码分析 实验目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2是分析一个恶意软件,就分析Exp2或Exp3中生成后 ...
- 2018-2019 20165235 网络对抗 Exp4 恶意代码分析
2018-2019 20165235 网络对抗 Exp4 恶意代码分析 实验内容 系统运行监控 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一段时间并分析该文件 ...
- 2018-2019 20165319 网络对抗 Exp4 恶意代码分析
基础问题回答 1. 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用什么方法来监控 答:1.使用Windows自带的schta ...
- 2018-2019-2 《网络对抗技术》Exp4 恶意代码分析 Week6 20165311
2018-2019 20165311 网络对抗 Exp4 恶意代码分析 2018-2019 20165311 网络对抗 Exp4 恶意代码分析 实验内容 系统运行监控(2分) 恶意软件分析(1.5分) ...
- 20155207 《网络对抗》exp4 恶意代码分析 学习总结
20155207 <网络对抗> 恶意代码分析 学习总结 实践目标 1.是监控你自己系统的运行状态,看有没有可疑的程序在运行. 2.是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件 ...
- 20155207王雪纯《网络对抗》Exp4 恶意代码分析
20155207 <网络对抗> 恶意代码分析 学习总结 实践目标 1.是监控你自己系统的运行状态,看有没有可疑的程序在运行. 2.是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件 ...
- 20155338《网络对抗》 Exp4 恶意代码分析
20155338<网络对抗>恶意代码分析 实验过程 1.计划任务监控 在C盘根目录下建立一个netstatlog.bat文件(先把后缀设为txt,保存好内容后记得把后缀改为bat),内容如 ...
- 2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分析Exp2或Exp3中生成后门 ...
- 2018-2019-2 20165221『网络对抗技术』Exp4:恶意代码分析
2018-2019-2 20165221『网络对抗技术』Exp4:恶意代码分析 实验要求: 是监控你自己系统的运行状态,看有没有可疑的程序在运行. 是分析一个恶意软件,就分析Exp2或Exp3中生成后 ...
随机推荐
- Android--仿一号店货物详情轮播图动画效果
还不是很完全,目前只能点中间图片才能位移,图片外的其他区域没有..(属性动画),对了,图片加载用得是facebook的一款android图片加载库,感觉非常NB啊,完爆一切. 1.先看布局 <? ...
- FAST特征点检测算法
一 原始方法 简介 在局部特征点检测快速发展的时候,人们对于特征的认识也越来越深入,近几年来许多学者提出了许许多多的特征检测算法及其改进算法,在众多的特征提取算法中,不乏涌现出佼佼者. 从最早期的Mo ...
- Ionic命令大全
start [options] <PATH> [template] ............. Starts a new Ionic project in the specified P ...
- (转)在.net中检索HTTP请求
原文转载:https://www.west-wind.com/presentations/dotnetWebRequest/dotnetWebRequest.htm HTTP内容检索是应用程序的重要组 ...
- Prometheus Node_exporter 之 Network Netstat TCP
Network Netstat TCP /proc/net/snmp 1. TCP Segments type: GraphUnit: shortLabel: Segments out (-) / i ...
- python类的内置方法
1,__init__(self) 初始化方法,实例化一个对象的时候就会被执行 2,__call__(self,*args) 把实例对象作为函数调用,即实例化一个对象后,在对象后面加括号即可调用__ca ...
- 反向代理负载均衡调度:nginx
一.概述 反向代理:以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个 ...
- nc 命令使用详解
nc 命令介绍: Ncat is a feature-packed networking utility which reads and writes data across networks fro ...
- c语言:复合文字
复合文字的意义,相当于是在C语言中,为数组类型定义了一种类似于8之于int,'w'之于char一样的常量类型,所以从C99之后,可以在一些地方使用复合文字来代替数组使用. 复合文字的声明 (]){,, ...
- Python实例---模拟微信网页登录(day1)
第一步:创建Django项目 创建Django项目,添加App 创建静态文件夹static 修改settings.py文件 1. 取消csrf注释 2. 添加静态文件路径 # 添加静态文件路径 STA ...