20145215《网络对抗》Exp4 恶意代码分析
20145215《网络对抗》Exp4 恶意代码分析
基础问题回答
- 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
- 使用Windows自带的
schtasks指令设置一个计划任务,指定每隔一定时间记录主机的联网记录或者是端口开放、注册表信息等等; - 通过
sysmon工具,配置好想记录事件的文件,之后在事件查看器里找到相关日志文件便可以查看; - 使用
Process Explorer工具,监视进程执行情况,查看是否有程序调用了异常的dll库之类的。
- 使用Windows自带的
- 如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
- 使用
Wireshark进行抓包分析,查看该程序联网时进行了哪些操作; - 使用
systracer工具分析某个程序执行前后,计算机注册表、文件、端口的一些变化情况。
- 使用
实践内容
目录
- 使用schtasks指令监控系统运行
- 使用sysmon工具监控系统运行
- 使用virscan分析恶意软件
- 使用systracer工具分析恶意软件
- 使用wireshark分析恶意软件回连情况
- 使用Process Monitor分析恶意软件
- 使用Process Explorer分析恶意软件
- 使用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文件,大部分都是正常联网的应用,一开始不知道LMS.exe是用来干嘛的,后面百度了一下,是英特尔本地管理服务的一个进程:

隔了一天之后,再次查看了这一天当中记录的主机联网日志,没有发现什么异常,除了当时打开后门软件回连时
reverse.exe程序的联网记录:

使用sysmon工具监控系统运行
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>
配置好文件之后,要先使用
Sysmon.exe -i C:\Sysmoncfg.txt指令对sysmon进行安装:

启动之后,便可以到事件查看器里查看相应的日志:

我查看了其中一部分事件的详细信息,比如这个事件是之前做计划任务时所创建的:

例如下面的事件是搜狗浏览器对文件的创建时间进行了更改,应该也就是更新:

还有之前
reverse.exe程序运行时所创建的事件:

之后,我对
Sysmoncfg.txt配置文件进行了修改,重点是监视80和443端口的联网情况,没有发现什么异常情况,关于配置文件的编写可以参考使用轻量级工具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">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>
使用virscan分析恶意软件
在virscan网站上查看上次实验所做的后门软件的文件行为分析:

可以看到其启动回连主机的部分IP地址以及端口号,还有对注册表键值进行了删除:

还有反调试和创建事件对象的行为:

使用systracer工具分析恶意软件
使用
systracer工具建立了5个快照,分别是在主机中没有恶意软件时、将恶意软件植入到目标主机中后、恶意软件启动回连时、恶意软件执行dir命令进行查看时以及使用恶意软件获取目标主机的摄像头时:

将恶意软件植入到目标主机后,可以通过快照发现文件中多了一个
reverse.exe文件,恶意软件启动回连时,可以查看到其所建立的TCP连接以及其打开的句柄:


执行
dir命令时,恶意软件较于之前的操作好像并没有做太多更改,但是在获取主机摄像头时,可以发现,它对注册表信息进行了修改,并且也新增了很多个句柄:


使用wireshark分析恶意软件回连情况
在恶意软件进行回连操作时,在Windows主机上用
netstat命令可以查看TCP连接的情况,其中就有后门程序reverse.exe所建立的TCP连接:

使用wireshark进行抓包后可以看到,其先进行了TCP的三次握手,之后再进行数据的传输,如图所示,带有
PSH,ACK的包传送的便是执行相关操作指令时所传输的数据包:

使用Process Monitor分析恶意软件
- 使用Windows XP系统上的
Process Monitor对恶意软件进行分析时可以看到很多Explorer.exe进程,应该是恶意软件对其进程进行的伪装:

使用Process Explorer分析恶意软件
使用
Process Explorer对恶意软件进行分析时可以看到启动回连时在运行的后门程序:

点开查看其详情会发现远程主机的IP地址和端口号:

以及其调用的
advapi32.dll库,该库中所包含的函数与对象的安全性,注册表的操控以及事件日志有关:

使用PEiD分析恶意软件
- 使用
PEiD软件可以查看恶意软件的壳的相关信息,以及其所使用的编译器版本:

实验总结与体会
- 随着这几次实验对恶意代码的分析,可以看出目前的恶意代码越来越有隐蔽性,很多时候单纯靠杀软已经不能实现对恶意代码的查杀了,这也就要求我们要学会利用一些工具来对系统中的软件进行监控并分析。这次的实验便是很好的一个例子,虽然目前我并没有发现我的计算机里存在着什么可疑的程序,但是这并不代表系统里不存在恶意代码,可能只是它隐藏的更深,更难被发觉,之后我也会继续加强对恶意代码各种类的特点进行学习,从而能够更容易发现系统中所存在的一些异常行为。
20145215《网络对抗》Exp4 恶意代码分析的更多相关文章
- 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 20165325 网络对抗技术 Exp4 恶意代码分析
2018-2019-2 20165325 网络对抗技术 Exp4 恶意代码分析 实验内容(概要) 一.系统(联网)运行监控 1. 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,逐步排查并且 ...
随机推荐
- C#梳理【集合Collection】
C# 集合(Collection) 集合(Collection)类是专门用于数据存储和检索的类.这些类提供了对栈(stack).队列(queue).列表(list)和哈希表(hash table)的支 ...
- 物理服务器Linux下软RAID和UUID方式挂载方法--Megacli64
一.业务部门需求说明:公司最近来了一批服务器,用于大数据业务部署.数据节点服务器由14块物理磁盘,其中有2块是900G的盘,12块是4T的盘.在服务器系统安装时,进入系统的BIOS界面:1)将2块90 ...
- Linux系统centos6.7上安装libevent
1 下载地址:http://libevent.org/ 2.解压 tar zxvf libevent-2.0.21-stable.tar.gz 安装前请先安装 gcc yum install gcc ...
- Python中的格式化输出
百分号格式化输出 百分号默认右对齐 %s 字符串 (采用str()的显示) %r 字符串 (采用repr()的显示) %c 单个字符 %b 二进制整数 %d 十进制整数 %i 十进制整数 %o 八进制 ...
- I/O模型之二:Linux IO模式及 select、poll、epoll详解
目录: <I/O模型之一:Unix的五种I/O模型> <I/O模型之二:Linux IO模式及 select.poll.epoll详解> <I/O模型之三:两种高性能 I ...
- org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cardSalDao' defined in file [E:\GItUp\pointerCard+redis\target\gameCard-1.0-SNAPSHOT\WEB-INF\classes\cn\jbit\dao
错误信息: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cardSa ...
- bzoj千题计划319:bzoj2865: 字符串识别(后缀自动机 + 线段树)
https://www.lydsy.com/JudgeOnline/problem.php?id=2865 同上一篇博客 就是卡卡空间,数组改成map #include<map> #inc ...
- docker 系列 - 容器数据持久化和数据共享
docker 主要有两种数据存储形式, 一种是storage driver(也叫做 Graph driver), 另一种是 volume driver. stroage driver主要是存储那些无状 ...
- 【七】zuul路由网关
一.zuul是什么?zuul 包含以下两个最主要的功能:1.路由功能: 负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础.2.过滤器功能: 则负责对请求的处理过程进行干预,是实现请 ...
- Burpsuite之Burp Collaborator模块介绍
Burp Collaborator.是从Burp suite v1.6.15版本添加的新功能,它几乎是一种全新的渗透测试方法.Burp Collaborator.会渐渐支持blind XSS,SSRF ...