Exp4 恶意代码分析 20164303 景圣
Exp4 恶意代码分析
实验内容
实验点一:系统运行监控
(1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述一下分析结果。目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓包的情况下只能猜),你觉得它这么干合适不。如果想进一步分析的,可以有针对性的抓包。
(2)安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为。
1、使用schtasks指令监控系统
- 通过
schtasks /create /TN netstat4303 /sc MINUTE /MO 5 /TR "cmd /c netstat -bn > c:\netstat4303.txt"命令,创建计划任务netstat4303,如下图所示:

- 在C盘中创建一个
netstat4303.bat脚本文件,可以先创建txt文本文件,使用记事本写入内容后通过修改文件名来修改文件格式得到目标文件

- 在其中写入以下内容:
date /t >> c:\netstat4303.txt
time /t >> c:\netstat4303.txt
netstat -bn >> c:\netstat4303.txt

- 在"开始"中,打开任务计划程序,可以看到创建的任务
netstat4303。

- 双击打开这个任务,点击"操作",再点击“编辑”。

- 将"程序或脚本"内容改为刚才创建好的
netstat4303.bat批处理文件。点击"确定"。 
- 在常规选项中勾选使用最高权限运行。
- 在执行此批处理文件一段时间后打开生成的netstat4303.txt记事本进行查看,发现记录此时已足够进行分析,将这些数据导入Excel中。

- 创建一个Excel文件并打开,点击数据->自文本->导入文本文件->选择
netstat4303.txt

- "文本导入向导"处选择"分隔符号"

- 将"分隔符号"中所有种类选中

- 点击插入—>数据透视表,可以详细显示每一个外网连接时,本机的IP及端口:

通过透视表可以看到连接次数比较多的是TCP、friefox.exe、SearchUI.exe等。SearchUI.exe是小娜(Cortanar)的搜索进程,Thunder.exe是迅雷下载器软件相关程序,WeChat.exe是微信电脑版的进程。电脑中没有发现可疑的恶意软件进程。
2、使用sysmon工具监控系统
1.首先进入微软官网下载sysmon

2.在安装的目录下创建“20164303.xml”文件,内容如下:

<Sysmon schemaversion="4.20">
<!-- 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>
<Image condition="end with">firefox.exe</Image>
<SourcePort condition="is">137</SourcePort>
<SourceIp condition="is">127.0.0.1</SourceIp>
<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">firefox.exe</TargetImage>
<TargetImage condition="end with">svchost.exe</TargetImage>
<TargetImage condition="end with">winlogon.exe</TargetImage>
<SourceImage condition="end with">powershell.exe</SourceImage>
</CreateRemoteThread>
<ProcessCreate onmatch="include">
<Image condition="end with">chrome.exe</Image>
<Image condition="end with">iexplorer.exe</Image>
<Image condition="end with">firefox.exe</Image>
</ProcessCreate>
<FileCreateTime onmatch="exclude" >
<Image condition="end with">firefox.exe</Image>
</FileCreateTime>
<FileCreateTime onmatch="include" >
<TargetFilename condition="end with">.tmp</TargetFilename>
<TargetFilename condition="end with">.exe</TargetFilename>
</FileCreateTime>
</EventFiltering>
</Sysmon>


3.输入“sysmon64.exe -i ”安装sysmon
若提示“You need to launch as an Administrator”,以管理员身份打开命令行就可以了。


4.输入“sysmon64.exe -c 20164303.xml”配置sysmon
提示版本不同,将“20164303.xml”文件中 <Sysmon schemaversion="3.10"> 改为 <Sysmon schemaversion="4.20">
我看到其他同学的博客都出现这样的情况,于是在创建xml文件时就写成了4.20。果然顺利配置,没有出现状况

5.win10下,左下角开始菜单右击->事件查看器->应用程序和服务日志->Microsoft->Windows->Sysmon->Operational。
在这里,可以看到按照配置文件的要求记录的新事件,以及事件ID、任务类别、详细信息等等。

6.查看后门软件的信息
- 打开kali,运行木马文件,使其回连kali攻击机。查看日志,通过搜索关键字可以找到相关的后门文件:

打开详细信息,可以看到这个后门映像文件的具体位置、源IP和端口、目的IP和端口等。主机号是192.168.1.4,端口号是4303,是攻击机的信息。

实验点二:恶意软件分析
分析该软件在(1)启动回连,(2)安装到目标机(3)及其他任意操作时(如进程迁移或抓屏,重要是你感兴趣)。该后门软件
(3)读取、添加、删除了哪些注册表项
(4)读取、添加、删除了哪些文件
(5)连接了哪些外部IP,传输了什么数据(抓包分析)
3、使用VirusTotal分析恶意软件
- 把生成的恶意代码
4303.exe放在VirusTotal进行分析,基本情况如下:

- 点击
Details可以查看基本属性以及加壳情况
可以看出它的SHA-1、MD5摘要值、文件类型、文件大小,以及TRiD文件类型识别结果。
- 以及该恶意代码的算法库支持情况:

4、使用Process Monitor分析恶意软件
- 双击打开可执行文件,可以看到各个进程的详细信息,如下图所示:

主要可以看到进程的进程标识符、文件的位置、运行结果以及其他的详细信息。
5、使用Process Explorer分析恶意软件
- 双击打开可执行文件,win10运行木马,回连kali时,我们可以看到Process Explorer对其进行的记录:

比起Process Monitor来说Process Explorer还可以看到进程占用CPU的情况、文件大小以及运行起来后占用的空间。
6、使用PEiD分析恶意软件
- 安装好PEiD后,先检测Exp3中未加壳的后门程序:

- 再检测使用UPX加壳后的
20165233shellcode.upxed.exe,PEiD成功检测出了加壳的相关信息:

可以看出,PEiD的主要功能是检测加壳的情况,对文件本身并不会提供太多信息。
7、使用systracer分析恶意软件
先在win10虚拟机安装SysTracer软件。
基本步骤如下:
将木马植入win10,对win10注册表、文件等进行快照,保存为Snapshot #1
打开kali的msfconsle,win10运行木马,回连kali,win10下再次快照,保存为Snapshot #2
在kali中对靶机进行查看文件操作
ls,win10下再次快照,保存为Snapshot #3

点击右下角“Compare”,比较三个快照的不同之处。


可以看到,systracer会提供注册表的变化情况,后门进程的相关信息也比较信息,旁边的列表使用不同的颜色进行标注,寻找起来比较方便。
实验基础问题回答
1、如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
(1)使用windows自带的schtasks,设置一个计划任务,每隔一定的时间对主机的联网记录等进行记录。
(2)使用sysmon工具,通过修改配置文件,记录相关的日志文件。
(3)使用Process Explorer等工具,监视进程执行情况。
2、如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
(1)使用systracer工具对恶意软件的信息进行具体分析。
(2)使用wireshark进行抓包从而获取恶意程序与主机的通信。
(3)将文件上传到VirusTotal进行检测。
实验总结与体会
在实验之前,我对于计算机防护的理解是装个杀毒软件,现在才发现有很多方法来保护我们的电脑。这些方法可能有些繁琐,需要我们的耐心,但是比杀毒软件更加有效及时。在现在黑客技术发展迅速,追求零日攻击的时代,杀毒软件并不能完全保证我们计算机的安全,掌握这些工具的使用方法将会比安装杀毒软件得到更加有效的防护。
Exp4 恶意代码分析 20164303 景圣的更多相关文章
- 2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分析Exp2或Exp3中生成后门 ...
- 2018-2019 20165237网络对抗 Exp4 恶意代码分析
2018-2019 20165237网络对抗 Exp4 恶意代码分析 实验目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2是分析一个恶意软件,就分析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-2 20165239《网络对抗技术》Exp4 恶意代码分析
Exp4 恶意代码分析 实验内容 一.基础问题 1.如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用什么方法来监控. •使用w ...
- 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分) ...
随机推荐
- foreach next 操作数组指针移动问题
2018年10月20日10:39:40 先说结论,foreach 维护的是一套属于自己的数组指针 会在操作数据的时候,分裂一套变量地址,即使你强制使用 & 取地址一样会分裂,不会引用同一套指针 ...
- IP的面向无连接状态
ip是面向于无连接的状态,在发包前,不需要建立与对端目标地址之间的连接. ip采用面向无连接的原因? 面向连接比无连接复杂,此外每次通信前都要事先建立连接,会降低处理速度.需要有连接时可以委托上一层提 ...
- Mybatis动态排序问题
参考https://blog.csdn.net/LitongZero/article/details/83753813 注意事项:使用这样连续拼接两个注入参数时,只能用${},不能用#{}.
- Nginx 安装后 相关错误解决
1,安装 https://blog.csdn.net/wxyjuly/article/details/79443432 nobody 改为了 www /configure --user=www --g ...
- [LeetCode] 70. Climbing Stairs_ Easy tag: Dynamic Programming
You are climbing a stair case. It takes n steps to reach to the top. Each time you can either climb ...
- libcurl.a 跨平台
编译成libxxx.a文件后, 通过lipo把多个不同架构的文件合并起来成为一个文件 在build setting 设置 head search path , library search path ...
- python集合set相关操作
定义: 1.不同元素组成 2.无序 3.集合中的元素必须是不可变类型 创建集合 1 s = {1,2,3,4,5,6,7,8} 1.定义可变集合 1 2 3 >>> set_test ...
- 关于PL/SQL Developer与Oracle客户端
这是一个很简单的知识点,但这些年遇到过太多初学者反而受其困扰,所以还是决定记录一下. 背景:国内使用Oracle的群体,几乎都会使用PL/SQL Developer这个图形化的工具进行日常数据维护.这 ...
- 六、latex中的特殊字符
- 异常将上下文初始化事件发送到类的侦听器实例.[org.springframework.web.context.ContextLoaderListener] org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class p
严重: 异常将上下文初始化事件发送到类的侦听器实例.[org.springframework.web.context.ContextLoaderListener]org.springframework ...
