Exp4 恶意代码分析 20164323段钊阳
网络对抗技术 20164323 Exp4 恶意代码分析
1、如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
监控注册表和文件改动、端口占用、进程驻留等操作。可使用本次实验的netstat记录网络连接情况然后分析,当然wireshark等工具也可以使用。
2、如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
可通过查看sysmon日志找到该进程邻近或同一时刻的进程动态,源IP、目的IP,端口号和进程号等,以及进一步分析它所创建的子进程。
实验内容
任务一:使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述一下分析结果。目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓包的情况下只能猜),你觉得它这么干合适不。如果想进一步分析的,可以有针对性的抓包。
1、在windows命令行下输入命令
schtasks /create /TN 20164323netstat /sc MINUTE /MO /TR "cmd /c netstat -bn > c:\netstatlog.txt
"创建名20164323netsta的任务计划

> TN:Task Name,本例中是netstat > SC: SChedule type,本例中是MINUTE,以分钟来计时。本例中设置为5分钟 > MO: MOdifier > TR: Task Run,要运行的指令是 netstat -bn,b表示显示可执行文件名,n表示以数字来显示IP和端口
2、通过notepad创建netstatlog.bat
内容如下:
date /t >> c:\netstatlog.txt time /t >> c:\netstatlog.txt netstat -bn >> c:\netstatlog.txt
然后将其放到C盘根目录下(需要管理员权限)

3、编辑任务操作
进入管理工具,在任务计划程序中找到刚创建的任务20164323netstat

将操作页面里的启动程序修改为netstatlog.bat,并且在常规页面里开启以最高权限执行以防权限不够无法在C根目录创建.txt文件

4、由于是每隔一分钟就记录网络情况,所以此时可以看到netstatlog.txt里已经有更新的内容。(然后等待很长一段时间)

5、用excel生成图表分析

任务二:安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为
1、创建20164323monconfig.txt作为sysmon的配置文件
内容如下:
<Sysmon schemaversion="4.20">
<!-- Capture all hashes -->
<HashAlgorithms>*</HashAlgorithms>
<EventFiltering>
<!-- Log all drivers except if the signature -->
<!-- contains Microsoft or Windows -->
<ProcessCreate onmatch="exclude">
<Image condition="end with">chrome.exe</Image>
</ProcessCreate>
<FileCreateTime onmatch="exclude" >
<Image condition="end with">chrome.exe</Image>
</FileCreateTime>
<NetworkConnect onmatch="exclude">
<Image condition="end with">chrome.exe</Image>
<SourcePort condition="is"></SourcePort>
<SourceIp condition="is">127.0.0.1</SourceIp>
</NetworkConnect>
<NetworkConnect onmatch="include">
<DestinationPort condition="is"></DestinationPort>
<DestinationPort condition="is"></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>
启动sysmon
下载sysmon,解压。
安装sysmon:以管理员身份执行命令sysmon.exe -i C:\20164323moncfig.txt
会提示出错,输入命令sysmon -accepteula -i -n;

就会在任务管理器中看到sysmon.exe已经在运行了

在事件查看器里查看日志
图标“计算机”右键,点击打开“管理”。点击左侧“系统工具”->“事件查看器”->应用程序和服务日志/Microsoft/Windows/Sysmon/Operational

运行之前制作的后门回连我的kali

查询得到进程号为3452
在日志中以进程号为关键词搜索相关信息
首先找到了我的后门程序
日志名称: Microsoft-Windows-Sysmon/Operational
来源: Microsoft-Windows-Sysmon
日期: // ::
事件 ID:
任务类别: Network connection detected (rule: NetworkConnect)
级别: 信息
关键字:
用户: SYSTEM
计算机: LAPTOP-TH3K87JU
描述:
Network connection detected:
RuleName:
UtcTime: -- ::46.020
ProcessGuid: {1283ad99-93c1-5ca8--0010a9cbc502}
ProcessId:
Image: D:\作业\gongxiang\4323met.exe
User: LAPTOP-TH3K87JU\dzy
Protocol: tcp
Initiated: true
SourceIsIpv6: false
SourceIp: 192.168.38.1
SourceHostname: LAPTOP-TH3K87JU
SourcePort:
SourcePortName:
DestinationIsIpv6: false
DestinationIp: 192.168.38.128
DestinationHostname:
DestinationPort:
DestinationPortName:
事件 Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="Microsoft-Windows-Sysmon" Guid="{5770385F-C22A-43E0-BF4C-06F5698FFBD9}" />
<EventID></EventID>
<Version></Version>
<Level></Level>
<Task></Task>
<Opcode></Opcode>
<Keywords>0x8000000000000000</Keywords>
<TimeCreated SystemTime="2019-04-06T11:55:47.962346900Z" />
<EventRecordID></EventRecordID>
<Correlation />
<Execution ProcessID="" ThreadID="" />
<Channel>Microsoft-Windows-Sysmon/Operational</Channel>
<Computer>LAPTOP-TH3K87JU</Computer>
<Security UserID="S-1-5-18" />
</System>
<EventData>
<Data Name="RuleName">
</Data>
<Data Name="UtcTime">-- ::46.020</Data>
<Data Name="ProcessGuid">{1283AD99-93C1-5CA8--0010A9CBC502}</Data>
<Data Name="ProcessId"></Data>
<Data Name="Image">D:\作业\gongxiang\4323met.exe</Data>
<Data Name="User">LAPTOP-TH3K87JU\dzy</Data>
<Data Name="Protocol">tcp</Data>
<Data Name="Initiated">true</Data>
<Data Name="SourceIsIpv6">false</Data>
<Data Name="SourceIp">192.168.38.1</Data>
<Data Name="SourceHostname">LAPTOP-TH3K87JU</Data>
<Data Name="SourcePort"></Data>
<Data Name="SourcePortName">
</Data>
<Data Name="DestinationIsIpv6">false</Data>
<Data Name="DestinationIp">192.168.38.128</Data>
<Data Name="DestinationHostname">
</Data>
<Data Name="DestinationPort"></Data>
<Data Name="DestinationPortName">
</Data>
</EventData>
</Event>

任务三:恶意软件分析
分析该软件在(1)启动回连,(2)安装到目标机(3)及其他任意操作时(如进程迁移或抓屏,重要是你感兴趣)。该后门软件
(3)读取、添加、删除了哪些注册表项
(4)读取、添加、删除了哪些文件
(5)连接了哪些外部IP,传输了什么数据(抓包分析)
1、使用VirusTotal分析恶意软件

将后门程序丢到VirusTotal中进行分析,并得到SHA-1、MD5摘要值、文件类型、大小、TRiD文件类型识别结果和算法库支持情况

2、使用Process Monitor分析恶意软件
先反弹连接kali,并且得到进程号10892

发现有很多记录,找出需要的很不容易得到结果

3、使用Process Explorer分析恶意软件

4、使用PEiD分析恶意软件
加壳:

不加壳:

5、使用systracer分析恶意软件
正常运行和成功回连
通过compare发现注册表里出现了改动

查看后门软件的“opened handles”来对比

Wireshark进行抓包分析
其先进行了TCP的三次握手,之后再进行数据的传输,如图所示,带有PSH,ACK的包传送的便是执行相关操作指令时所传输的数据包。

问题
在安装system monitor时,在按照博客编写配置文件开始执行安装后,需要把3.10改成4.20,在抓包的时候 ,我首先监听的是计算机所连接的wifi,监听了一段时间后没有发现我主机跟kali之间的数据传输,于是我重新选择虚拟网卡进行监听,抓到了两个互相通信所产生的包。
实验感想
在此次实验中,我使用了许多恶意代码分析软件,从网络连接和端口、系统注册表变化等多方面的监控,然后具体定位到某一个或某一些进程后进入深入分析。有时候杀软并不可靠,有一些我们没有发现的东西在计算机深层运行,这些就需要我们分析各种信息从而找到问题所在。
Exp4 恶意代码分析 20164323段钊阳的更多相关文章
- 2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分析Exp2或Exp3中生成后门 ...
- 2018-2019-2 20165325 网络对抗技术 Exp4 恶意代码分析
2018-2019-2 20165325 网络对抗技术 Exp4 恶意代码分析 实验内容(概要) 一.系统(联网)运行监控 1. 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,逐步排查并且 ...
- 2018-2019-2 网络对抗技术 20165206 Exp4 恶意代码分析
- 2018-2019-2 网络对抗技术 20165206 Exp4 恶意代码分析 - 实验任务 1系统运行监控(2分) (1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP ...
- 2018-2019 20165235 网络对抗 Exp4 恶意代码分析
2018-2019 20165235 网络对抗 Exp4 恶意代码分析 实验内容 系统运行监控 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一段时间并分析该文件 ...
- 2018-2019-2 网络对抗技术 20162329 Exp4 恶意代码分析
目录 Exp4 恶意代码分析 一.基础问题 问题1: 问题2: 二.系统监控 1. 系统命令监控 2. 使用Windows系统工具集sysmon监控系统状态 三.恶意软件分析 1. virustota ...
- 20155312 张竞予 Exp4 恶意代码分析
Exp4 恶意代码分析 目录 基础问题回答 (1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用什么方法来监控. (2)如果 ...
- 2018-2019-2 《网络对抗技术》Exp4 恶意代码分析 Week6 20165311
2018-2019 20165311 网络对抗 Exp4 恶意代码分析 2018-2019 20165311 网络对抗 Exp4 恶意代码分析 实验内容 系统运行监控(2分) 恶意软件分析(1.5分) ...
- 2018-2019-2 网络对抗技术 20165317 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165317 Exp4 恶意代码分析 实验要求 1.系统运行监控 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一段时间 ...
- 2018-2019-2 20165236 《网络对抗技术》Exp4 恶意代码分析
2018-2019-2 20165236 <网络对抗技术>Exp4 恶意代码分析 一.1.实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行; 1.2是分析一个恶意软件, ...
随机推荐
- 利用TortoiseGit从Github上下载代码
1.首先确保安装好了Git和TortoiseGit并在Github上有存放资源 2.将git上博客源文件克隆到本地,在本地创建好要存放资源的文件夹,之后在此文件内右键单击,可以看到下拉菜单中增加了To ...
- 【320】Python 2.x 与 3.x 的区别
通过代码移植的报错进行梳理! 1. print 函数的区别 Python 2.x 中可以加空格或者括号,但是 Python 3.x 只能是括号的 # Python 2.x >>> p ...
- 话说C# 6.0之后
最想看到的:1. 加入脚本语言支持,可以解释运行,作为程序的二次开发语言(类似于vba,python).2. 可以自定义运算符,为了安全起见,自定义运算符应该特别予以说明(类似于数学表达式,多样式的运 ...
- Go structs、slices、maps
[Go structs.slices.maps] 1.定义时*在变量名后面,使用时*在变量名前面. 2.定义struct,type在前,struct关键字在后. 3.指针可以指定struct. 4.A ...
- 在Linux(Ubuntu)下安装Arial、Times New Roman等字体
在Linux下做文档.作图的时候,可能需要用到Arial和Times New Roman等字体.但是由于版权问题,Linux一般是不直接提供这些字体的. 注意字体也是有版权的!不过有版权也不代表一定会 ...
- Luogu 3321 [SDOI2015]序列统计
BZOJ 3992 点开这道题之后才发现我对原根的理解大概只停留在$998244353$的原根是$3$…… 关于原根: 点我 首先写出$dp$方程,设$f_{i, j}$表示序列长度为$i$当前所有数 ...
- chrome url protocol 提示配置文件路径
%localappdata%\Google\Chrome\User Data\Default\Preferences 搜索对应的协议名,例如:{"x-github-client": ...
- 模拟在table中移动鼠标,高亮显示鼠标所在行,固定表头
<!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Conten ...
- python机器学习工具包scikit-learn
scikit-learn这个非常强大的python机器学习工具包 http://scikit-learn.org/stable/modules/generated/sklearn.svm.SVC.ht ...
- C#分布式事务解决方案-TransactionScope(转)
出处:C#分布式事务解决方案-TransactionScope 引用一下别人的导读:在实际开发工作中,执行一个事件,然后调用另一接口插入数据,如果处理逻辑出现异常,那么之前插入的数据将成为垃圾数据,我 ...