zoukankan      html  css  js  c++  java
  • 2019-2020-2-20175332 张苗-《网络对抗技术》-exp4 恶意代码分析

    目录


    1.实践内容

    (1)系统运行监控

    使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述一下分析结果。目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓包的情况下只能猜),你觉得它这么干合适不。如果想进一步分析的,可以有针对性的抓包。
    • 创建计划任务schtasks /create /TN netstat5332 /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > c:5332log.txt"
    参数解释
    • TNTaskName的缩写,我们创建的计划任务名是netstat5332;

    • sc表示计时方式,我们以分钟计时填MINUTE

    • TRTask Run,要运行的指令是netstat

    • bnb表示显示可执行文件名,n表示以数字来显示IP和端口;

    • >表示输出重定向,将输出存放在c:5332log.txt文件中

    • 创建脚本文件netstat5332.bat用于显示记录的日期时间,内容如下:

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

    • 查看文本文件

    • 导入统计

    • 结果:

    进程使用次数从大到小排列
    [MicrosoftEdgeCP.exe]--------与浏览器关联进程

    [svchost.exe]--------微软Windows操作系统中的系统文件

    [360tray.exe]--------360安全卫士实时监控程序

    [vmware-hostd.exe]-------虚拟机程序进程

    [SearchUI.exe]-------Win10小娜搜索进程

    [vmware.exe]-------虚拟机程序

    [vmware-authd.exe]------虚拟机程序

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

    • 写配置文件,代码如下:

      <!-- 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">137</SourcePort>
          <SourceIp condition="is">127.0.0.1</SourceIp>
        </NetworkConnect>
        <NetworkConnect onmatch="include">     //记录
          <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">svchost.exe</TargetImage>
          <TargetImage condition="end with">winlogon.exe</TargetImage>
          <SourceImage condition="end with">powershell.exe</SourceImage>
        </CreateRemoteThread>
      </EventFiltering>
      </Sysmon>  
    
    • 以管理员身份运行Sysmon64.exe -i 20175332.xml

    • 打开计算机管理----查看事件查看器---应用程序和服务日志/Microsoft/Windows/Sysmon/Operational中,可以看到按照配置文件的要求记录的新事件,以及事件ID、任务类别以及详细信息。

    (2)恶意软件分析

    分析该软件在(1)启动回连,(2)安装到目标机(3)及其他任意操作时(如进程迁移或抓屏,重要是你感兴趣)。该后门软件

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

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

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

    • 使用实验三中生成后门程序进行回连
    在回连过程中无论是系统自带防火墙还是360都提示危险

    • 回连成功后进行简单的权限获取操作

    行为分析主要基于程序快照、捕包和Windows任务管理器
    任务管理器可以看到后门程序的运行

    程序快照(回连前和回连后对比)
    注册表由修改增加的痕迹,还有和cmd.exe程序相关的注册表修改

    在后门应用程序下新增加的行为

    回连后文件的改动

    抓包分析

    统计所有出现的端口和IP地址

    2.实践问题回答

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

    • sysmon工具,设置合理的配置文件

    • 使用windows任务查看器,查看是否有可疑进程

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

    • 程序快照,将运行前后结果进行对比

    3.实践总结与体会

    在实验回连的过程中,虽然是自己生成的后门程序回连,但是在具体分析中还是很难找到响应的可疑行为,尤其在数据报的分析中,由此可见在平时使用时,对于未知的恶意代码我们更是难以发现。

  • 相关阅读:
    docker基础总结
    python基础学习总结
    静默(命令行)安装oracle 11g
    java中如果函数return可能抛出异常怎么办
    Android 开发先驱的博客列表
    栈与队列
    线性表
    算法
    数据结构概论
    iOS开发中实现手势解锁
  • 原文地址:https://www.cnblogs.com/20175332zm/p/12696090.html
Copyright © 2011-2022 走看看