网络对抗技术 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段钊阳的更多相关文章

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

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

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

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

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

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

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

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

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

    目录 Exp4 恶意代码分析 一.基础问题 问题1: 问题2: 二.系统监控 1. 系统命令监控 2. 使用Windows系统工具集sysmon监控系统状态 三.恶意软件分析 1. virustota ...

  6. 20155312 张竞予 Exp4 恶意代码分析

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

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

    2018-2019 20165311 网络对抗 Exp4 恶意代码分析 2018-2019 20165311 网络对抗 Exp4 恶意代码分析 实验内容 系统运行监控(2分) 恶意软件分析(1.5分) ...

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

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

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

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

随机推荐

  1. js格式化时间 js格式化时间戳

    一个js格式化时间和js格式化时间戳的例子. 代码:/** * 时间对象的格式化; */Date.prototype.format = function(format) { /* * eg:forma ...

  2. 拦截TextBox 双击消息

    Option Explicit Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLo ...

  3. ETL 脚本任务

    Public Sub Main()        '        ' Add your code here        '        Dim sbWA As New StringBuilder ...

  4. 使用ES-Hadoop 6.5.4编写MR将数据索引到ES

    目录 1. 开发环境 2. 下载地址 3. 使用示例 4. 参考文献 1. 开发环境 Elasticsearch 6.5.4 ES-Hadoop 6.5.4 Hadoop 2.0.0 2. 下载地址 ...

  5. 2015年传智播客JavaEE 第168期就业班视频教程day45-ERP项目-0107-其他子系统

    一套ERP系统中一定会有CRM,不可能说我所有数据都是散着放的,你想用就随便写一个.你出去和人聊,一定得说我这里有什么有什么,然后你就可以和人说你做的是进销存.人家要问CRM或者说财务系统你就说那不是 ...

  6. C++实现:把一个文件夹里的冗余文件(.txt)删除

    代码很简单,调用了MFC里的几个函数.这里的冗余判断,是要遍历文件内容,进行两两比较. 需要注意的地方有两点: 1.源文件里头文件<afx.h>必须放在最前面.这里是为了避免nafxcwd ...

  7. mybatis调用存储过程获得取返回值

    总体思路:map传值 controller: Map<String,Object> m=new HashMap<String,Object>(); m.put("na ...

  8. 解题报告-1012. Numbers With Repeated Digits

    Given a positive integer N, return the number of positive integers less than or equal to N that have ...

  9. dedecms实例化对象

    1.建表 2.创建实体类 4.tc文件加载该实体类 5.用的时候,引入tc.php文件,并实例化

  10. numpy中三维数组转变成二维数组

    numpy中reshape()函数对三维数组进行转换成二维数组,见下面例子: >>>a=np.reshape(np.arange(18),(3,3,2)) >>> ...