2018-2019-2 网络对抗技术 20162329 Exp4 恶意代码分析
Exp4 恶意代码分析
一、基础问题
问题1:
如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所以想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控?
答:
- 利用系统命令查看系统各项状态,并将查看结果保存为日志。使用计划任务为命令设置执行间隔,通过监控系统一段时间的运行状态来监控系统。
- 使用具有监控系统功能的可靠软件来实现系统监控。
问题2:
如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息?
答:
- 使用systracer工具对确定的恶意软件进行行为分析。
- 使用wireshark网络嗅探工具对该软件的网络通信情况进行分析。
二、系统监控
1. 系统命令监控
恶意软件的目的大多都是希望通过非正常手段进入你的计算机系统,然而这个过程避免不了的就是需要进行数据的网络传输,因此,我们只要把握好网络的实时状态就可以有效防止大部分恶意软件的入侵。
Windows下为我们内置了查看网络状态的命令netstat,通过它我们可以随时查看当前计算机所有的网络连接状态,包括当前状态下的联网应用,所有网络服务的源目的IP和端口。具体功能如图:

由上图我们可以判断,我们主要使用的参数为
-a -b -n -o
但是输入一次命令我们只能看见一次结果,这时我们需要让命令可以自动运行,并且将运行结果写到文件中,方便我们统计和查看,这时就需要用到我们的计划任务了。
在设置计划任务之前我们需要将命令写为脚本,如下:
date /t >> C:\Users\Administrator\Desktop\netstat_162329.txt
//获取系统日期 追加至桌面的 netstat_162329.txt文件中
time /t >> C:\Users\Administrator\Desktop\netstat_162329.txt
//获取系统时间 追加至桌面的 netstat_162329.txt文件中
netstat -abon >>C:\Users\Administrator\Desktop\netstat_162329.txt
//获取当前网络状态信息 追加至桌面的 netstat_162329.txt文件中
为了方便查看我们还添加了获取系统日期和时间的命令,方便查看多时间的网络状态。我们需要将以上代码写入一个空白的批处理文件中,结果如下图:

然后为该批处理文件设置计划任务
Win10系统下:控制面板-->系统和安全-->管理工具-->计划任务
进入后界面如下:

点击创建任务进入创建界面:

名称可以随意取一个,然后进入操作选项卡点击新建设置执行操作。

在触发器选项卡中设置执行间隔和时间。

查看监测结果。

2. 使用Windows系统工具集sysmon监控系统状态
首先先下载软件,sysmon官方下载地址
下载解压后再文件夹中进入命令行,准备安装该工具。
根据官方说明,该工具的运行需要一个配置文件的支持,该配置文件中可表明监测内容,我的文件如下:
<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">QQBrowser.exe</Image>
<SourcePort condition="is">137</SourcePort>
<SourceIp condition="is">127.0.0.1</SourceIp>
</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命令的主要参数有三个,功能如下:
-i : 需要指定配置文件安装(启用)该工具
-c : 需要用指定文件更新当前运行状态下的配置文件继续运行
-u : 不需要参数值,卸载(停止)该工具运行
由于我们下载的工具是最新版,而老师给出的配置文件版本设置较低,所以直接运行会出现版本不匹配的问题,需要在配置文件的第一行将Schemaversion的值修改为相应版本。
安装执行,输入命令sysmon -i config_20162329.txt如图:

查看监控信息
控制面板-->系统和安全-->管理攻击-->查看事件日志
界面如图:

如图转到以下目录可以查看监控信息:
应用程序和服务日志-->Microsoft-->Windows-->sysmon-->Operational
可以点开任意事件查看其详细信息,如图:

三、恶意软件分析
1. virustotal分析恶意软件
实验使用程序为上次实验制作的后门程序,文件名为20162329_backdoor_vile1
将文件上传至virustotal网站,可以看到对该程序的行为分析如下:
2. 用wrieshark分析软件网络行为
首先用程序测试回连,成功:

打开wrieshark软件,选择当前使用的网卡,我使用的是有线所以选择以太网。

重新回连,然后找到wrieshark对应连接结果:
Windows IP为:172.16.3.212
kali IP为:172.16.3.36
只需要在源目的地址中找到相应IP就可以了,如下图:

根据wrieshark结果,我发现光是连接就发送了有480个以上TCP数据包,连续从NO.1310开始到NO.1790结束全都是,之前还有一些不连续的。
我们可以打开一个看看其中的内容:

从图中可以看到,这是一个携带数据的TCP数据包,但从数据上我们还看不出是什么,但是他足有687个字节。
接下来我们获取一下他的摄像头看看会有什么结果

可以看到他们是有一个通信过程的,而且是有数据传递的。
四、实验总结和体会
本次实验中最大的特点就是重在防御,并不再像之前几次实验一样,需要作出一个能控制或查看别人计算机的程序,而是要检测自己的计算机有没有被别人注入恶意程序,也就是老师说的从一个坏人变为了一个害怕被攻击的好人。
通过本次实验,我们学会了使用多种工具来对计算机系统进行状态分析,从而抓出我们系统里可能存在的恶意程序或软件。这些工具不仅有最基础的命令这样的“土工具”,也有像wrieshark、sysmon这样的系统工具和网络工具,既拓宽了我们的知识面又学到了一项新的技能,真的是受益匪浅。
2018-2019-2 网络对抗技术 20162329 Exp4 恶意代码分析的更多相关文章
- 2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分析Exp2或Exp3中生成后门 ...
- 2018-2019-2 网络对抗技术 20165206 Exp4 恶意代码分析
- 2018-2019-2 网络对抗技术 20165206 Exp4 恶意代码分析 - 实验任务 1系统运行监控(2分) (1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP ...
- 2018-2019-2 网络对抗技术 20165317 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165317 Exp4 恶意代码分析 实验要求 1.系统运行监控 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一段时间 ...
- 2018-2019-2 网络对抗技术 20165225 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165225 Exp4 恶意代码分析 实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2是分析一个恶意软件,就分析Exp2或Exp ...
- 2018-2019-2 网络对抗技术 20165336 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165336 Exp4 恶意代码分析 1.实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2是分析一个恶意软件,就分析Exp2或E ...
- 2018-2019-2 20165236 《网络对抗技术》Exp4 恶意代码分析
2018-2019-2 20165236 <网络对抗技术>Exp4 恶意代码分析 一.1.实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行; 1.2是分析一个恶意软件, ...
- 2018-2019-2 网络对抗技术 20165316 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165316 Exp4 恶意代码分析 一.原理与实践说明 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分析Exp2 ...
- 2018-2019-2 网络对抗技术 20165228 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165228 Exp4 恶意代码分析 1.如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪 ...
- 2018-2019-2 网络对抗技术 20165308 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165308 Exp4 恶意代码分析 实验过程 一.系统运行监控 (1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一 ...
随机推荐
- RabbitMQ installation
以windows环境测试 Erlang http://www.erlang.org/downloads 下载并安装 运行时软件 Erlang OTP 21.3 Windows 64-bit Binar ...
- Android项目打包遇com.android.builder.internal.aapt.v2.Aapt2Exception: AAPT2 error: check logs for details
查了网上很多处理都是在项目的gradle.properties中添加下面的配置,再编译就通过了: android.enableAapt2=false
- Keras的一些功能函数
摘自: https://www.cnblogs.com/Anita9002/p/8136357.html 1.模型的信息提取 # 节点信息提取 config = model.get_config() ...
- vue api学习之nextTick的理解
对于 Vue.nextTick 方法,之前没有听说过,突然听到别人提起,貌似作用挺大.以下为学习心得.官方文档上这样定义:在下次 DOM 更新循环结束之后执行延迟回调.在修改数据之后立即使用这个方法, ...
- Git首次配置
用户身份配置 安装好Git后的第一步是设置用户名和电子邮件地址.这一步是很重要的,因为以后这将作为你每一次提交的个人信息,写入所创建的提交中,不可更改. git config --global use ...
- android 给view添加阴影
1.方法一: 使用 CardView 布局 <android.support.v7.widget.CardView xmlns:android="http://schemas.andr ...
- 【easy】189. Rotate Array
题目标签:Array 题目给了我们一个数组 和 k. 让我们 旋转数组 k 次. 方法一: 这里有一个很巧妙的方法: 利用数组的length - k 把数组 分为两半: reverse 左边和右边的数 ...
- maven父子模块deploy 问题
1.问题描述:直接 deploy 子某块,但第三者确不能引用 jar(jar down不下来,但pom不报错) 原因:父子模块项目必须保证父模块pom deploy后,再 deploy 子模块才能被引 ...
- 前端开发,走浏览器缓存真的很烦,拒绝浏览器走缓存从meta标签做起!
<meta http-equiv="Cache-Control" content="no-cache" /> <meta http-equiv ...
- zigbee 信道
以zigbee nxp5169 信道是:11-26 15d0f1-170923 15 ----- 信道 d0f1--- 是zigbee 物理地址 170923---时间2017年9月 ...