zoukankan      html  css  js  c++  java
  • Exp4 恶意代码分析

    Exp4 恶意代码分析

    1 基础知识

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

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

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

    2 实践过程记录

    2.1系统运行监控(2分)

    2.1.1schtasks创建定时netstat计划任务监控网络

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

    1. 输入以下命令创建计划任务netstat1214,能够每5min记录以下有哪些程序

      image-20210409214842531

      schtasks /create /TN netstat1214 /sc MINUTE /MO 5 /TR "cmd /c netstat -bn c:
      etstatlog.txt"
      
      • /create:创建计划任务
      • /TN:TaskName 指定任务的名称
      • /sc: schedule 指定计划类型
      • /MO:modifier 指定任务在其计划类型内的运行频率
      • /TR:TaskRun 指定任务运行的程序或命令。键入可执行文件、脚本文件或批处理文件的完全合格的路径和文件名。

      结合以上参数我们可以知道,该命令使用schtasks创建一个名为netstat1214的计划任务,它每5分钟执行一次"cmd /c netstat -bn c: etstatlog.txt",作用是在将cmdnetstat -bn(连接网络的程序名称)的结果放入``c: etstatlog.txt`文件中

      image-20210409220206534

    2. 由于只传入netstat -bn的结果,不方便记录查看,还需要通过bat批处理文件来实现。在C盘建立c: etstatlog.bat,内容如下:

      date /t >> c:
      etstatlog.txt
      time /t >> c:
      etstatlog.txt
      netstat -bn >> c:
      etstatlog.txt
      
    3. 打开任务程序计划,找到计划任务netstat1214

      image-20210409221225833

    4. 编辑该任务操作为启动任务使执行netstatlog.bat脚本

      image-20210409221515014

    5. netstatlog.txt中查看记录

      image-20210409222556826

    6. 将数据导入Excel

      新建xlsx文件,从外部自文本导入数据,选择netstatlog.txt

      image-20210409223011399

      原始数据类型为分隔符号,分隔符号点满,导入表

      image-20210409230433396

    7. 生成数据透视表和柱状图

      点击插入数据透视表,选中B列,将右侧周五勾上,并将周五字段拖到行和值里,并将无关的数据去掉

      image-20210412092034560

      之后再插入柱状图即可

      image-20210412091956370

    8. 分析统计数据

      image-20210412092347875

    周五 程序 汇总
    [msedge.exe] 微软浏览器 2111
    [ECAgent.exe] 1038
    [nvcontainer.exe] NVIDIA控制面板 1009
    [firefox.exe] 火狐浏览器 809
    [AppleMobileDeviceProcess.exe] IOS驱动程序 696
    [mDNSResponder.exe] Bonjour分享程序 694
    [Lsf.exe] 联想账户 636
    [svchost.exe] 微软后台传输 443
    [NutstoreClient.exe] 坚果云客户端 364
    [SangforPromoteService.exe] 深信服VPN进程 346
    WpnService Windows 推送通知进程 345
    [Video.UI.exe] 电影和电视 344
    [ShadowsocksR-dotnet4.0.exe] SSR 205
    [WeChat.exe] 微信 187
    [SearchApp.exe] 微软搜索进程 138
    [LenovoPcManagerService.exe] 联想电脑管家 64
    [AlibabaProtect.exe] 阿里巴巴安全控件 61
    [backgroundTaskHost.exe] 照片后台 36
    [Spotify.exe] Spotify播放器 33
    [Code.exe] VScode编辑器 27
    [Microsoft.Photos.exe] 微软照片 26
    WpnUserService_6729924 Windows 推送通知进程 24
    CryptSvc 认证服务进程 24
    wlidsvc office在线存储服务进程 22
    [EXCEL.EXE] Excel 22
    [BackgroundDownload.exe] 桌面壁纸下载 21
    [FenbiZhiboke.exe] 粉笔直播课 20
    [Typora.exe] Typora编辑器 18
    [iTunes.exe] iTunes播放器 14
    WpnUserService_eaabf4 Windows 推送通知进程 12
    [OfficeClickToRun.exe] Office自动更新程序 9
    [ctfmon.exe] 语言栏修复工具 8
    [ServiceHub.SettingsHost.exe] 8
    [devenv.exe] VS开发进程 7
    [igfxEM.exe] intel核显驱动 5
    [WINWORD.EXE] Word文本编辑器 5
    [java.exe] java 5
    [PerfWatson2.exe] 4
    OneSyncSvc_eaabf4 4
    [SettingSyncHost.exe] 账号同步 3
    [ServiceHub.IdentityHost.exe] VS认证控件 3
    DiagTrack 诊断跟踪服务 3
    [Lenovo.Modern.ImController.exe] 联想控制中心 3
    WpnUserService_7ba117b Windows 推送通知进程 3
    BITS 后台智能传送服务 2
    [ServiceHub.VSDetouredHost.exe] 2
    [系统] 2
    [VirtualBoxVM.exe] VirtualBox虚拟机 2
    WpnUserService_d935e Windows 推送通知进程 2
    [WhiteboardWRT.exe] 白板 1
    [cleanmgr.exe] 磁盘清理 1
    [Explorer.EXE] 1
    CDPUserSvc_d935e 1
    [GfxDownloadWrapper.exe] intel图像控制面板 1
    [Snipaste.exe] Snipaste截图 1
    [OneDriveStandaloneUpdater.exe] OneDriver 1
    wuauserv windows自动更新 1
    [taskhostw.exe] 计划任务程序 1
    [processlasso.exe] processlasso 1
    总计 9879

    根据统计数据可以知道,联网次数最多的是msedge.exe,火狐、微信等日常软件也是可查的,还有些杂七杂八的微软推送和VS控件。比较可疑的是阿里巴巴安全控件,据说监控全磁盘的文件变动。根据网上资料得知阿里系的软件自带这个控件,但启用netstatlog期间并未启动任何一个阿里系软件。

    2.1.2 sysmon监控主机

    安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为。参考:schtask与sysmon应用指导

    https://www.freebuf.com/sectool/122779.html

    1. 安装sysmon

      下载并解压老师的资源包,管理员模式打开cmd进入Sysmon.exe所在的文件夹,输入命令 sysmon -accepteula –i -n一键安装

      image-20210412185415856

    2. 配置文件

      在同路径下新建配置文件sysmon.xml,其中onmatchinclude为白名单,exclude为黑名单,内容如下(注意第一行的版本应改成和版本一样):

      <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>
            <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.exe -i sysmon.xml配置信息,之后预估更新了xml配置文件可以输入.Sysmon.exe -c sysmon5306.xml来更新

      image-20210412185855877

    3. 在事件查看器中查看日志

      打开事件查看器应用程序和服务日志MicrosoftWindowsSysmonOperational

      image-20210412190132908

    4. 使用后门文件回连

      找到实验二中的后门程序,在Kali里开监听,在Windows里运行

      image-20210412191704830

      打开事件查看器搜索后门文件名,可以看到日志记录

      image-20210412192002985

      可以看到协议、ip地址、回连kali的ip地址、源端口和目标端口等信息

    2.2恶意软件分析(1.5分)

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

    • 读取、添加、删除了哪些注册表项
    • 读取、添加、删除了哪些文件
    • 连接了哪些外部IP,传输了什么数据(抓包分析)

    该实验重点在“分析”,不是“如何使用某软件”。

    2.2.1静态分析

    1. 文件扫描

    使用VirusTotal分析恶意软件

    image-20210412194604691

    根据详细信息可以看到此文件的MD5等值,及生成、运行环境等信息

    image-20210412194836943

    1. 文件格式识别

      将后门程序放入PEiD,什么都没查到

      image-20210412195003134

      放入upx压缩壳,查到了压缩壳

      image-20210412195112433

      对先用upx压缩后用Hyperion加密的壳倒是也什么都没找到

      image-20210412195234578

    2. 反编译、反汇编

      将文件放入PE Explorer中

      image-20210412195753573

      点击引入按钮,可以看到其调用的dll链接

      image-20210412195656619

    2.2.2动态分析

    1. 快照比对

      使用SysTracer对回连前、回连后、进行快照之后可以查看到Regs、Files、Apps中增删改的信息

      image-20210412202651252

      下图中可以找到增加了后门程序的执行记录

      image-20210412202929708

      从应用的句柄中可以看到后门程序的链接记录

      image-20210412203514166

    2. 抓包分析

      打开kali端wireshark,设置过滤条件为ip.addr == 192.168.31.48 and tcp.port == 11214,可以看到从主机端回连的TCP包

      image-20210412222643318

    3. 行为监控

      打开Process Monitor可以看到系统中的详细进程记录

      image-20210412210739065

      通过配置过滤器,可以看到后门文件的进程行为

      image-20210412210720117

    3 实践中的问题

    1.执行后看不到netstatlog.txt文件、不能创建netstatlog.bat文件

    是由于C盘中无法创建txt文件。在任务计划程序中赋予任务使用最高权限运行即可创建netstatlog.txt文件。根据周昱涵同学的方法,在桌面创建netstatlog.bat文件后拖进C盘并统一管理员要求即可

    image-20210409222107890

    2.Wireshark只有USBPcap1

    管理员运行Wireshark即可

    image-20210412223420345

    4 问题回答

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

    答:可以通过schtasks设置计划netstat任务,监控联网进程的行为,也可以通过sysmon工具生成日志进行检查

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

    答:可以使用systrace进行快照对比一点一点找出详细的信息,也可以使用Wireshark抓包查找数据、传输时间等信息判断攻击方式。。

    5 实验总结与体会

    在前几次实验中一直在学着如何攻击,这次实验开始学着做检测了。让我印象比较深的是快照对比和网络日志。快照对比的方式能收集的信息极为全面,不过如果恶意攻击长期存在的话,想要从海量的数据中找到也不是件容易的事。通过几天网络日志的监控,找到了许多完全没察觉到的进程,尤其是阿里巴巴的安全控件和Windows的一堆莫名其妙的同步插件,网上说这些进程出错时还会百分百占用内存、引起风扇异响等问题,也不知道有没有几个星期没关防火墙的原因,真是amazing。

  • 相关阅读:
    冒泡排序算法
    delphi 处理图片(剪切,压缩)
    delphi 创建DLL文件 及其调用和注意事项
    对属性的认识
    timer实现Grid自动换行(连续相同的id跳到下一行)
    Form1调用Unit2类中函数
    微信二次分享不显示摘要和图片
    location.search为空导致微信拿不到code的问题
    考虑一下微信跳转的登录流程如何修改-无感知
    微信7.0(2019年1月份之后,没法使用抓包了,也许是为了安全,所以联调出问题记得看后台日志)
  • 原文地址:https://www.cnblogs.com/Ziggy29/p/14651177.html
Copyright © 2011-2022 走看看