实验后回答问题

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

答:我会使用sysmon工具来进行监控,可以每天晚上查看一下监控到的信息,还可以利用筛选工具对数据进行分析,监控网络连接,是否创建新的进程,注册表项目以及系统日志。

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

答:最简单的方法就是使用Virscan等网站进行扫描进行分析,复杂一点的话,可以自己使用wireshark抓包然后再对抓到的数据进行分析,还可以将数据制表找到规律。

实践目标

1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行。

1.2是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件;分析工具尽量使用原生指令或sysinternals,systracer套件。

1.3假定将来工作中你觉得自己的主机有问题,就可以用实验中的这个思路,先整个系统监控看能不能找到可疑对象,再对可疑对象进行进一步分析,好确认其具体的行为与性质。

实践内容

2.1系统运行监控

(1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述一下分析结果。目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓包的情况下只能猜),你觉得它这么干合适不。如果想进一步分析的,可以有针对性的抓包。

(2)安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为。

参考:schtask与sysmon应用指导

实际日志的分析还需要发挥下自己的创造力,结合以前学过的知识如linux的文本处理指令等进行。分析的难点在于从大量数据中理出规律、找出问题。这都依赖对结果过滤、统计、分类等进一步处理,这就得大家会什么用什么了。

2.2恶意软件分析(1.5分)

分析该软件在

(1)启动回连,

(2)安装到目标机

(3)及其他任意操作时(如进程迁移或抓屏,重要是你感兴趣)。该后门软件

(3)读取、添加、删除了哪些注册表项

(4)读取、添加、删除了哪些文件

(5)连接了哪些外部IP,传输了什么数据(抓包分析)

实验过程

使用Windows计划任务schtasks监控系统运行

输入命令:

schtasks /create /TN 20155309netstat /sc MINUTE /MO 1 /TR "c:\netstatlog.bat"

创建计划任务netstat

指令解释:

TN:Task Name,本例中是netstat

SC: SChedule

type,本例中是MINUTE,以分钟来计时

TR: Task Run,要运行的指令是 netstat -bn,b表示显示可执行文件名,n表示以数字来显示IP和端口

此命令完成后,每1分钟就会监测哪些程序在使用网络,并把结果记录在netstatlog.txt文档里,为了显示日期和时间,我们通过bat批处理文件来实现。

在C盘创建一个文件netstatlog.bat,内容为:

date /t >> c:\netstatlog.txt time /t >> c:\netstatlog.txt netstat -bn >> c:\netstatlog.txt

保存后修改文件名为“netstatlog.bat”;

粘贴到C盘中,这是需要用管理员权限;

可以右键点击“编辑”用记事本查看bat文件内容。

第三步:编辑任务操作:

1.进入任务计划程序:“win+c”选择“设置”->进入“控制面板”->选择“管理工具”->进入“任务计划程序”

2.找到我们的任务20155309netstat,双击点开

3.点击下方“操作”->右侧所选项栏中“属性”->属性页面上方的“操作”

4.双击任务进入“编辑操作”界面

5.在程序脚本处点击“浏览”->选择刚才创建的“netstat.bat”,“参数可选项”为空

6.点击“确定”完成修改,详细信息处如下图:

7.查看netstat.txt文件,已经有了时间的记录,至此完成了任务的创建

每隔五分钟监控如下图:

等待一直两天;

这里需要一直保持开机联网状态,才能持续监控。

此外,如果发现netstatlog.txt没有每分钟更新一次,可能是因为设置时默认选择了“只有计算机使用交流电源时才启用此任务”,所以一旦我们不给电脑充电,任务就没法运行。解决方法就是在netstat任务属性的设置中取消选中该选项,如下图所示,然后就可以发现每隔一分钟命令行会闪现一下,其中包含netstatlog.bat中的三行指令,netstatlog.txt自己就随之更新了。

接下来我们用excel分析数据

我们要将netstatlog.txt的内容导入到Excel中。我使用的是WPS,依次点击:数据(选项卡)——导入数据——直接打开数据文件——选择数据源(找到netstatlog.txt所在文件夹,并选中)——打开。

将文本进行分割成excel表。

文件转换页面直接“下一步”

文本导入向导步骤1 ,文件类型一定要选择分隔符号;步骤2,分隔符号选择空格;步骤三,选择常规。

最后点击完成,就可以看到数据导入成功了

第六步:对数据进行统计学分析:

1.首先查看所有联网程序的联网次数,具体excel操作如下:

①首先选中我们要分析的列:

②其次点击上方“插入”->“数据透视图”

③默认选择在一个新工作表中生成

可以发现生成了一个非常直观的数据透视表

在其中,我们可以发现浏览器与蓝墨云笔记用的十分多。

二、系统监控——Sysmon工具

Sysmon是微软Sysinternals套件中的一个工具,能监控几乎所有的重要操作。

  • Sysmon安装配置

    1.根据在实验指导中的链接Sysinternals套件,下载Sysinternals Suite,然后解压。

    2.接下里,我们来新建并编辑配置文件C:\Sysmoncfg.txt。exclude相当于白名单,里面的程序或IP不会被记录,include相当于黑名单,大家可以把自己想监控的写到黑名单中~

    3.下面,我们来安装sysmon:

sysmon.exe -i Sysmoncfg.txt

注:配置文件修改后,需要用指令更新一下:

sysmon.exe -c config_file_name

需要自己配置文件

<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 -c config_file_name

安装 sysmon

依次次打开 :开始——事件查看器——应用程序和服务日志——Microsoft————Windows——Sysmon——Operational,既可以看到如下图所示的信息啦:

不同事件ID分析

5.可以看到系统一些具体活动。

事件识别码1 :进程建立
事件识别码2 :进程更改了文件创建时间
事件识别码3 :网络连接
事件识别码4 : Sysmon服务状态已变更
事件识别码5 :进程已终止
事件识别码6 :已载入驱动程式
事件识别码7 :已载入影像
事件识别码8 :创建远程线程
事件识别码9 : RawAccessRead
事件识别码10 :进程访问
事件识别码11 :文件创建
事件识别码12 :注册事件(创建和删除对象)
事件识别码13 :注册事件(值集)
事件识别码14 :注册事件(键和值重命名)
事件识别码15 :文件创建流哈希
事件识别码255 :错误

这个的事件识别码是3,证明与本地的互联网建立了连接。

这个事件识别码是1, conhost.exe是电脑触摸板相关程序。在使用触摸板时,建立进程。

该进程事件识别码是5,终止进程,Scmd.exe是MirosoftWindowsVista桌面搜索协议信程序

4.利用Sysmon具体分析日志的例子我选择了自己实验二中生成的后门20155309_backdoor.exe进行分析

使用Systracer分析恶意软件

直接用汉化版的就是爽啊。

打开界面:

点击创建快照,若如下图没有全选,可以选择——仅扫描指定项,然后将下面的全选,之后就可以点击开始啦,接着耐心等待,扫描结束之后会弹出一个框,点击OK,快照就会自己保存下来~

接下来是有后门的分析

然后做的是后门回连的分析

接下来我们再做一个dir

来一个keyscan_start的击键记录

screenshot抓屏走起

来进行差异分析:

让我们再用process explorer来分析一下

最后用peid分析一波

大功告成。

遇到的问题

问题2:在安装Sysmon时,出现下图错误,显示我配置文件中的版本时3.10,但是实际下载的版本是4.00,不匹配导致安装失败。

改用版本即可成功

2017-2018-2 20155309南皓芯 Exp4 恶意代码分析的更多相关文章

  1. 20145236《网络攻防》Exp4 恶意代码分析

    20145236<网络攻防>Exp4 恶意代码分析 一.基础问题回答 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些 ...

  2. 20145226夏艺华 网络对抗技术EXP4 恶意代码分析

    20145226夏艺华 网络对抗技术EXP4 恶意代码分析(未完成版) 回答问题 (1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作 ...

  3. 20145202马超《网络对抗》Exp4 恶意代码分析

    20145202马超<网络对抗>Exp4 恶意代码分析 1.实验后回答问题 (1)总结一下监控一个系统通常需要监控什么.用什么来监控. 虽然这次试验的软件很好用,我承认,但是他拖慢了电脑的 ...

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

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

  5. 2018-2019 20165237网络对抗 Exp4 恶意代码分析

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

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

    2018-2019-2 20165325 网络对抗技术 Exp4 恶意代码分析 实验内容(概要) 一.系统(联网)运行监控 1. 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,逐步排查并且 ...

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

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

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

    Exp4 恶意代码分析 实验内容 一.基础问题 1.如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用什么方法来监控. •使用w ...

  9. 2018-2019 20165235 网络对抗 Exp4 恶意代码分析

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

随机推荐

  1. centos7之关于时间和日期以及时间同步的应用

    在CentOS 6版本,时间设置有date.hwclock命令,从CentOS 7开始,使用了一个新的命令timedatectl. 基本概念: 一.GMT.UTC.CST.DST 时间 UTC 整个地 ...

  2. MySQL系列:数据类型、运算符及函数(5)

    1. 数据类型 MySQL支持多种数据类型,主要有数值类型.日期/时间类型和字符串类型. (1)数值类型:包括整数类型:TINYINT.SMALLINT.MEDIUMINT.INT.BIGINT,   ...

  3. [十二省联考2019]异或粽子——可持久化trie树+堆

    题目链接: [十二省联考2019]异或粽子 求前$k$大异或区间,可以发现$k$比较小,我们考虑找出每个区间. 为了快速得到一个区间的异或和,将原序列做前缀异或和. 对于每个点作为右端点时,我们维护出 ...

  4. Magento2自定义命令

    命令命名准则 命名指南概述 Magento 2引入了一个新的命令行界面(CLI),使组件开发人员能够插入模块提供的命令. Command name Command name 在命令中,它紧跟在命令的名 ...

  5. (二分查找 拓展) leetcode 69. Sqrt(x)

    Implement int sqrt(int x). Compute and return the square root of x, where x is guaranteed to be a no ...

  6. MessagePack for C#

    MessagePack for C# 快速序列化组件MessagePack介绍   简介 MessagePack for C#(MessagePack-CSharp)是用于C#的极速MessagePa ...

  7. ETL过程跑完后,使用python发送邮件

    目标库中,如果有行数为0的表,使用python发送邮件 # -*- coding:utf-8 -*- # Author: zjc # Description:send monitor info to ...

  8. 070、如何定制Calico 网络policy(2019-04-15 周一)

    参考https://www.cnblogs.com/CloudMan6/p/7552618.html     Calico默认的policy是:容器只能与同一个calico网络中的容器通信.   Ca ...

  9. JavaScript IIEF 模仿块级作用域

    前言 JavaScript没有块级作用域的概念.但是通过IIEF 立即执行函数我们可以实现块级作用域. function outputNumbers(count){ for (var i=0; i & ...

  10. JGUI源码:Accordion折叠到侧边栏实现(6)

    折叠和非折叠效果如左右图所示 代码如下 //折叠 $.fn.jAccordionfold = function() { return this.each(function() { var obj = ...