• 金砖技能大赛-应急响应-内存镜像分析


    背景:作为信息安全技术人员必须能够掌握内容镜像分析、重要数据恢复、 恶意文件分析等相关技能,利用这些技能我们能够第一时间分析相关恶意文件、 分析蛛丝马迹帮助我们更好的完成应急响应工作。 应急响应阶段题目主要包含:Windows 内存镜像分析,Linux 内存镜像分析, 磁盘文件恢复,恶意程序分析等内容。

    项目 1. 内存镜像分析

    任务一 Windows 内存镜像分析 

    你作为 A 公司的应急响应人员,请分析提供的内存文件按照下面的要求找到 相关关键信息,完成应急响应事件。

    1、从内存中获取到用户admin的密码并且破解密码,以Flag{admin,password} 形式提交(密码为 6 位);   

    //列举用户及密码
    //volatility -f 1.vmem --profile=Win7SP1x86 printkey -K"SAM\Domains\Account\Users\Names"
    //从内存中获取密码哈希
    //volatility -f 1.vmem  --profile=Win7SP1x86 hivelist 
    //从内存中获取密码哈希
    volatility -f 1.vmem  --profile=Win7SP1x86 hashdump  (可以跟-f 也可以跟sam system的进程)
    //尝试利用网站解密 解不开
    md5:29fb61bd2963b1975cf435a2565af910
    mimikatz插件也可以
    使用自带的工具
    volatility -f 1.vmem --profile=Win7SP1x64 lsadump 
    得到md5   406990ff88f13dac3c9debbc0769588c 这个也是答案

    flag{admin.dfsddew}

    2、获取当前系统 ip 地址及主机名,以 Flag{ip:主机名}形式提交;

    volatility -f 1.vmem --profile=Win7SP1x64 hivelist 查看注册表 

    volatility -f 1.vmem --profile=Win7SP1x64 -o 0xfffff8a000024010 printkey

    volatility -f 1.vmem --profile=Win7SP1x64 -o 0xfffff8a000024010 printkey -K "ControlSet001"  

     答案  WIN-9FBAEH4UV8C
    volatility -f 1.vmem --profile=Win7SP1x64 netscan     (获取IP地址)

    答案 192.168.85.129

            flag{192.168.85.129:WIN-9FBAEH4UV8C}

    3、获取当前系统浏览器搜索过的关键词,作为 Flag 提交;

    volatility_2.6_win64_standalone.exe -f worldskills3.vmem --profile=Win7SP1x64 iehistory

     flag{admin@file:///C:/Users/admin/Desktop/flag.txt}

    4、当前系统中存在挖矿进程,请获取指向的矿池地址,以 Flag{ip:端口}形式 提交;

    volatility_2.6_win64_standalone.exe -f worldskills3.vmem --profile=Win7SP1x64 netscan 

     flag{54.36.109.161:2222}

    5、恶意进程在系统中注册了服务,请将服务名以 Flag{服务名}形式提交。

    上题已经看到进程

    volatility_2.6_win64_standalone.exe -f worldskills3.vmem --profile=Win7SP1x64 pslist -p 2588

    再查看服务
    volatility_2.6_win64_standalone.exe -f worldskills3.vmem --profile=Win7SP1x64 svcscan

     flag{VMnetDHCP}

    参考

    内存取证-volatility工具的使用_baynk的博客-CSDN博客_volatility工具

    一篇适用于本人电脑的kali机volatility取证教程

    内存-进程取证

    前期知识:

    pslist显示进程        cmdscan显示cmd历史命令

    在这里插入图片描述

    memdump -p 332 -D XX/ 提取进程   -p 进程号 -D 当前输出路径(导出为332.dmp)

            dump出来的进程文件,可以使用 foremost 来分离里面的文件,用 binwak -e 不推荐

    strings -e l 2040.dmp | grep flag 查找flag

    在这里插入图片描述

    使用hivelist查看注册表

    1.从内存文件中找到异常程序的进程,将进程的名称作为Flag值提交;

    pstree查看进程树  3720 这个进程PPID比PID还大。

    DLL  dlllist -p 查看一下这个进程的查看一下这个进程的DLL,发现程序是在temp目录下执行的,那这个应该就是恶意软件进程了。

    flag{3720}

    2.从内存文件中找到黑客将异常程序迁移后的进程编号,将迁移后的进程编号作为Flag值提交;

     通过*.exe的pid *

    查看一下网络连接,注意因为这个版本为2003所以无法使用netscan只能使用connections

     发现可疑test进程的pid 并且响应的ip地址与剩下两个进程相同,判断为迁移后的进程编号

    3.从内存文件中找到受害者访问的网站恶意链接,将网站的恶意链接作为Flag值提交;

    ehistory 历史记录

    4.从内存文件中找到异常程序植入到系统的开机自启痕迹,使用Volatility工具分析出异常程序在注册表中植入的开机自启项的Virtual地址,将Virtual地址作为Flag值提交;

    查看注册表hivelist

    0xe171b008就是虚拟内存

    0x1d73e008 \Device\HarddiskVolume1\WINDOWS\system32\config\software 

    解析是否存在开机自启项:

    -o 0xe200f830 printkey

    发现了windows注册表,接着访问windows下的注册表

     -o 0xe171b008 printkey -K "Microsoft\windows"
     

     -o 0xe171b008 printkey -K "Microsoft\windows\CurrentVersion\Run"

    5.从内存文件中找到异常程序植入到系统的开机自启痕迹,将启动项最后一次更新的时间作为Flag值(只提交年月日,例如:20210314)提交。

    shimcache

    参考: 记录一次内存取证_恰恰想学习的博客-CSDN博客

  • 相关阅读:
    okcc呼叫中心的的录音功能
    MySQL 多表关联一对多查询实现取最新一条数据
    基于昇腾计算语言AscendCL开发AI推理应用
    java:监听器Listener
    JS6day(DOM结点的查找、增加、删除。实例化时间)
    Unity 编辑器常用方法
    河南资信评价资质申报日期一览
    第一颗国产 单/双端口 MIPI CSI/DSI 至 HDMI 1.4 发射器 芯片LT9611
    SpringBoot自动装配原理及分析
    [源码解析] TensorFlow 分布式之 MirroredStrategy
  • 原文地址:https://blog.csdn.net/m0_58199719/article/details/127096081