记录一次内存取证

2024-05-28 13:52
文章标签 内存 记录 一次 取证

本文主要是介绍记录一次内存取证,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.情景复现

我姐姐的电脑坏了。我们非常幸运地恢复了这个内存转储。你的工作是从系统中获取她所有的重要文件。根据我们的记忆,我们突然看到一个黑色的窗口弹出,上面有一些正在执行的东西。崩溃发生时,她正试图画一些东西。这就是我们从崩溃时所记得的一切。

注意:此挑战由 3 个flag组成。

2.flag1

2.1获取系统版本号

volatility_2.6_win64_standalone.exe -f MemoryDump_Lab1.raw imageinfo

2.2查看控制台运行命令

volatility_2.6_win64_standalone.exe -f MemoryDump_Lab1.raw --profile=Win7SP1x64 cmdsc

2.3查看控制台输出

volatility_2.6_win64_standalone.exe -f MemoryDump_Lab1.raw --profile=Win7SP1x64 consoles

2.4base64解密得到了第一个flag1

echo 'ZmxhZ3t0aDFzXzFzX3RoM18xc3Rfc3Q0ZzMhIX0=' |base64 -d获取到flag:flag{th1s_1s_th3_1st_st4g3!!}

flag{th1s_1s_th3_1st_st4g3!!}

3.Flag2

3.1 分析进程信息

volatility_2.6_win64_standalone.exe -f MemoryDump_Lab1.raw --profile=Win7SP1x64 consoles

3.2 进程数据保存

mspaint.exe 为windows自带画图工具,为PID 2424的mspaint.exe程序以dmp格式保存出来就可以了

volatility_2.6_win64_standalone.exe -f MemoryDump_Lab1.raw --profile=Win7SP1x64 memdump -p 2424 -D D:\BaiduNetdiskDownload\raw的内存取证\lab1

3.3 文件调整格式

mv 2424.dmp 2424.data(linux)

3.4 图片提取

使用gimp工具去打开图片文件

gimp 2424.data

3.5 调整图像数值

设置上合适的宽度和高度还有移度,就能看到图片的文字了

3.6 图像变换

竖直翻转旋转180度

3.7 获取到flag

获取到flag值为: flag{good_boy_good_girl}

4.Flag3

4.1 获取命令行下运行的程序cmdline

4.2 检索文件

文件保存在\Alissa Simpson\Documents\目录下

4.3 dumpfiles提取文件

volatility_2.6_win64_standalone.exe -f MemoryDump_Lab1.raw --profile=Win7SP1x64 dumpfiles -Q 0x000000003fa3ebc0 -D ./

4.4 解压

使用压缩工具进行尝试解压,有解压密码,注释中提示解压密码为 Alissa的NTLM hash值(大写)

Password is NTLM hash(in uppercase) of Alissa's account passwd.
密码是 Alissa 帐户密码的 NTLM 哈希(大写)。

4.5 使用hashdump获取hash值

volatility_2.6_win64_standalone.exe -f MemoryDump_Lab1.raw --profile=Win7SP1x64 hashdump

然后转化为大写

a = 'f4ff64c8baac57d22f22edc681055ba6'
print(a.upper())F4FF64C8BAAC57D22F22EDC681055BA6

4.6 获取flag

使用上述密码解压file.None.0xfffffa8001034450.rar文件,得到文件:flag3.png

flag为:flag{w3ll_3rd_stage_was_easy}

这篇关于记录一次内存取证的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1010757

相关文章

C++高效内存池实现减少动态分配开销的解决方案

《C++高效内存池实现减少动态分配开销的解决方案》C++动态内存分配存在系统调用开销、碎片化和锁竞争等性能问题,内存池通过预分配、分块管理和缓存复用解决这些问题,下面就来了解一下... 目录一、C++内存分配的性能挑战二、内存池技术的核心原理三、主流内存池实现:TCMalloc与Jemalloc1. TCM

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

统一返回JsonResult踩坑的记录

《统一返回JsonResult踩坑的记录》:本文主要介绍统一返回JsonResult踩坑的记录,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录统一返回jsonResult踩坑定义了一个统一返回类在使用时,JsonResult没有get/set方法时响应总结统一返回

Redis过期删除机制与内存淘汰策略的解析指南

《Redis过期删除机制与内存淘汰策略的解析指南》在使用Redis构建缓存系统时,很多开发者只设置了EXPIRE但却忽略了背后Redis的过期删除机制与内存淘汰策略,下面小编就来和大家详细介绍一下... 目录1、简述2、Redis http://www.chinasem.cn的过期删除策略(Key Expir

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

java对接海康摄像头的完整步骤记录

《java对接海康摄像头的完整步骤记录》在Java中调用海康威视摄像头通常需要使用海康威视提供的SDK,下面这篇文章主要给大家介绍了关于java对接海康摄像头的完整步骤,文中通过代码介绍的非常详细,需... 目录一、开发环境准备二、实现Java调用设备接口(一)加载动态链接库(二)结构体、接口重定义1.类型

apache的commons-pool2原理与使用实践记录

《apache的commons-pool2原理与使用实践记录》ApacheCommonsPool2是一个高效的对象池化框架,通过复用昂贵资源(如数据库连接、线程、网络连接)优化系统性能,这篇文章主... 目录一、核心原理与组件二、使用步骤详解(以数据库连接池为例)三、高级配置与优化四、典型应用场景五、注意事

SpringBoot实现文件记录日志及日志文件自动归档和压缩

《SpringBoot实现文件记录日志及日志文件自动归档和压缩》Logback是Java日志框架,通过Logger收集日志并经Appender输出至控制台、文件等,SpringBoot配置logbac... 目录1、什么是Logback2、SpringBoot实现文件记录日志,日志文件自动归档和压缩2.1、

qtcreater配置opencv遇到的坑及实践记录

《qtcreater配置opencv遇到的坑及实践记录》我配置opencv不管是按照网上的教程还是deepseek发现都有些问题,下面是我的配置方法以及实践成功的心得,感兴趣的朋友跟随小编一起看看吧... 目录电脑环境下载环境变量配置qmake加入外部库测试配置我配置opencv不管是按照网上的教程还是de

Java内存区域与内存溢出异常的详细探讨

《Java内存区域与内存溢出异常的详细探讨》:本文主要介绍Java内存区域与内存溢出异常的相关资料,分析异常原因并提供解决策略,如参数调整、代码优化等,帮助开发者排查内存问题,需要的朋友可以参考下... 目录一、引言二、Java 运行时数据区域(一)程序计数器(二)Java 虚拟机栈(三)本地方法栈(四)J