Exp4 恶意代码分析

一、基础问题

问题1:

如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所以想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控?

答:

  1. 利用系统命令查看系统各项状态,并将查看结果保存为日志。使用计划任务为命令设置执行间隔,通过监控系统一段时间的运行状态来监控系统。
  2. 使用具有监控系统功能的可靠软件来实现系统监控。

问题2:

如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息?

答:

  1. 使用systracer工具对确定的恶意软件进行行为分析。
  2. 使用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个字节。

接下来我们获取一下他的摄像头看看会有什么结果

可以看到他们是有一个通信过程的,而且是有数据传递的。

四、实验总结和体会

本次实验中最大的特点就是重在防御,并不再像之前几次实验一样,需要作出一个能控制或查看别人计算机的程序,而是要检测自己的计算机有没有被别人注入恶意程序,也就是老师说的从一个坏人变为了一个害怕被攻击的好人。

通过本次实验,我们学会了使用多种工具来对计算机系统进行状态分析,从而抓出我们系统里可能存在的恶意程序或软件。这些工具不仅有最基础的命令这样的“土工具”,也有像wriesharksysmon这样的系统工具和网络工具,既拓宽了我们的知识面又学到了一项新的技能,真的是受益匪浅。

2018-2019-2 网络对抗技术 20162329 Exp4 恶意代码分析的更多相关文章

  1. 2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析

    2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分析Exp2或Exp3中生成后门 ...

  2. 2018-2019-2 网络对抗技术 20165206 Exp4 恶意代码分析

    - 2018-2019-2 网络对抗技术 20165206 Exp4 恶意代码分析 - 实验任务 1系统运行监控(2分) (1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP ...

  3. 2018-2019-2 网络对抗技术 20165317 Exp4 恶意代码分析

    2018-2019-2 网络对抗技术 20165317 Exp4 恶意代码分析 实验要求 1.系统运行监控 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一段时间 ...

  4. 2018-2019-2 网络对抗技术 20165225 Exp4 恶意代码分析

    2018-2019-2 网络对抗技术 20165225 Exp4 恶意代码分析 实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2是分析一个恶意软件,就分析Exp2或Exp ...

  5. 2018-2019-2 网络对抗技术 20165336 Exp4 恶意代码分析

    2018-2019-2 网络对抗技术 20165336 Exp4 恶意代码分析 1.实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2是分析一个恶意软件,就分析Exp2或E ...

  6. 2018-2019-2 20165236 《网络对抗技术》Exp4 恶意代码分析

    2018-2019-2 20165236 <网络对抗技术>Exp4 恶意代码分析 一.1.实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行; 1.2是分析一个恶意软件, ...

  7. 2018-2019-2 网络对抗技术 20165316 Exp4 恶意代码分析

    2018-2019-2 网络对抗技术 20165316 Exp4 恶意代码分析 一.原理与实践说明 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分析Exp2 ...

  8. 2018-2019-2 网络对抗技术 20165228 Exp4 恶意代码分析

    2018-2019-2 网络对抗技术 20165228 Exp4 恶意代码分析 1.如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪 ...

  9. 2018-2019-2 网络对抗技术 20165308 Exp4 恶意代码分析

    2018-2019-2 网络对抗技术 20165308 Exp4 恶意代码分析 实验过程 一.系统运行监控 (1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一 ...

随机推荐

  1. mysql,mycat的demo

    一直都是使用公司架构师提供的mycat,今天得空自己尝试了以下: 1.首先安装jdk(官网建议1.7及以上版本),mysql(我安装的是5.7.19-0ubuntu0.16.04.1,设置账号密码为r ...

  2. QButtonGroup按钮组

    继承  QObject 提供 一个抽象的按钮容器, 可以将多个按钮划分为一组,不具备可视化的效果,一般放的都是可以被检查的按钮 import sys from PyQt5.QtWidgets impo ...

  3. pythonのdjango Form简单应用。

    Form表单有两种应用场景: 1.生成HTML标签. 2.验证输入内容. 如果我们在django程序中使用form时,需要在views中导入form模块 from django import form ...

  4. L2-011 玩转二叉树 (25 分) (树)

    链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805065406070784 题目: 给定一棵二叉树的中序遍历和前序 ...

  5. vs2013、vs2015使用.net4.5框架智能提示英文转成中文

    安装完VS2013.VS2015使用.net framework 4.5框架时,代码补全中智能提示信息全是英文解决方案:关闭VS2013.VS2015:将zh-Hans 目录替换以下目录 C:\Pro ...

  6. Mongodb 相关链接

    http://www.cnblogs.com/lanceyan/tag/mongodb/

  7. Beta 冲刺(5/7)

    目录 摘要 团队部分 个人部分 摘要 队名:小白吃 组长博客:hjj 作业博客:beta冲刺(5/7) 团队部分 后敬甲(组长) 过去两天完成了哪些任务 ppt制作中 数据集标注 接下来的计划 制作p ...

  8. wqy的easy

    题解不再赘述,\(wqy\) 写的很详细了,记点细节. \(A:\) \(n+1\) 位置也要差分一下,否则无法保证正确性. \(B:\) 贪心喜提二十分...充分考虑时间和\(std\)复杂度的关系 ...

  9. shell 变量、参数、数组章节笔记

    // 变量名和等号之间不能有空格 hello="123456"; echo $hello; // 花括号只是帮助识别变量边界 echo ${hello}; // unset 删除变 ...

  10. MapReduce词频统计

    自定义Mapper实现 import org.apache.hadoop.io.IntWritable; import org.apache.hadoop.io.LongWritable; impor ...