• 20155216 Exp4 恶意代码分析


    20155216 Exp4 恶意代码分析

    实践内容

    使用schtasks指令监控系统运行

    先在C盘目录下建立一个netstatlog.bat文件和netstatlog.txt文件,将记录的联网结果格式化输出到netstatlog.txt文件中,netstatlog.bat内容为:

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

    打开Dos命令行,输入指令 schtasks /create /TN netstat /sc MINUTE /MO 2 /TR "c: etstatlog.bat" 创建一个每隔两分钟记录计算机联网情况的任务:

    之后查看一下netstatlog.txt文件:

    显示结果为:请求的操作需要提升。

    此时重新创建文件,并以使用管理员身份运行命令行,显示结果还是一样。

    于是更换windows环境,使用win7 x64位环境:

    显示结果为:请求的操作需要提升。

    于是又更换环境——windows xp

    终于给面子了。

    还有一种方法:在win8.1环境下运行,以管理员身份启动命令行,键入命令后

    以管理员身份运行一下netstatlog.bat。

    可在计划任务中找到此进程,其状态为准备就绪,若要停止,可将进程直接删除。

    使用sysmon工具监控系统运行

    下载sysmon v7.0

    在Sysmon.exe同目录下建立文件:test.txt,并输入以下XML:

    <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 -i test.txt ,进行安装:

    给出提示,无法进行安装。

    <Sysmon schemaversion="3.10"> 改为正确的版本号: <Sysmon schemaversion="4.00">

    再次以管理员身份运行:

    输入指令: Sysmon.exe -c test.txt ,进行配置:

    之后使用win+R,输入 eventvwr 打开事件查看器。

    进入 应用程序和服务日志 > Microsoft > Windows > Sysmon > Operational。

    事件日志

    双击某一个日志可查看其具体信息,如启动事件查看器。

    事件1

    也能看到很多进程创建的日志:

    事件2

    进程改变文件创建时间:

    事件3

    也能通过查找功能查找到下午查实验使用后门回连的日志记录:

    网络连接工作:可以很清楚地看到运行程序的源端口、目的端口、源IP地址、目的IP地址以及使用的协议类型。

    以管理员权限键入 Sysmon.exe -u 停止日志的记录,并删除之前的记录。

    TCPView

    TCPView是用来监测TCP连接的工具,在开启后门的情况下,打开工具就可以看到通过TCP和UDP协议运行的进程的源地址、目的地址以及相应端口和连接状态。

    双击某进程可查看到进程的具体路径,也可终止进程。

    尝试window后门回连,可以很清楚的看到这个进程。

    procmon工具

    使用procmon工具也能清晰地查看进程运行状态、路径。

    双击一个进程也可直接查看其细节:

    Wireshark分析

    利用生成的后门回连成功:

    可以观察到kali虚拟机多次对被植入后门主机发送建立连接请求,被植入后门主机对部分请求进行回应。

    使用systracer工具分析恶意软件

    下载systrace,安装时各选项默认

    建立三个快照

    对比分析

    在不回连后门的情况下,回连的情况下和输入dir的情况下,对比快照。使用view观察新增项目(绿色项),能够发现5216.exe的动态:

    PEiD工具

    这是一个检测是否加壳的软件。

    先检测未加壳的文件,提示为nothing found。

    检测加壳的文件,提示为加壳软件的版本,而且检测速度很快。

    实验后回答问题

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

    可使用systrace观察系统此刻进程运行情况较之前的变化,若发现可疑项,再使用TCPView或sysmon对进程进行详细监控。

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

    可使用schtasks指令、wiresharkTCPView或sysmon对进程进行详细监控,进一步获取其网络连接信息、相关联进程信息和对其它进程的影响。

    实验总结与体会

    本次实验使用了较多的进程和网络监控工具。其中大部分的工具功能还是相似的。在怀疑某个进程有问题时,可使用多个工具对其进行监控,观察其网络连接等情况,找到文件的路径,进行加壳等各种检测以确定是否为恶意程序。一般情况系统同时运行的程序较多,可先使用systrace观察进程改变项,再使用其他合适监控进程,对可疑的进程进行筛选,找到有问题的进程。

  • 相关阅读:
    POJ 3258 (NOIP2015 D2T1跳石头)
    POJ 3122 二分
    POJ 3104 二分
    POJ 1995 快速幂
    409. Longest Palindrome
    389. Find the Difference
    381. Insert Delete GetRandom O(1)
    380. Insert Delete GetRandom O(1)
    355. Design Twitter
    347. Top K Frequent Elements (sort map)
  • 原文地址:https://www.cnblogs.com/LeeX1997/p/8780403.html
Copyright © 2020-2023  润新知