CTF-蓝帽杯 2022 初赛Misc计算机取证题目详解

2024-06-23 22:28

本文主要是介绍CTF-蓝帽杯 2022 初赛Misc计算机取证题目详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

使用工具:Volatility、Passware Kit、Arsenal Image Mounter、DiskGenius

题目文件如下:

首先要知道这些文件是什么:

dmp后缀指Dump文件,是windows系统中的错误转储文件。包含计算机程序运行时的内存信息的文件。通常操作系统或应用程序在遇到系统崩溃、死机或其他严重错误时,会自动将程序运行环境的所有信息导出到一个.dmp文件中。所以可以利用该文件帮助程序员诊断程序运行过程中的错误,还可以获取账户、密码等敏感信息。因此,为了保护计算机安全和隐私,应该限制程序访问和存储.dmp文件。E01后缀是电子数据取证分析工具EnCase的一种证据文件格式。国内外的取证软件基本都支持E01镜像的制作。

所有工具和实验文件下载链接

https://download.csdn.net/download/m0_62574258/89471204

目录

小题1

小题2

小题3

小题4

答案


小题1

题目描述:现对一个windows计算机进行取证,请从内存镜像中获得taqi7的开机密码,得到的flag请使用NSSCTF{}形式提交。

题目相关文件保存到/root/test目录下,如下图

用两种解法

解法一:使用Volatility工具

(1)先用imageinfo判断当前的镜像信息,分析出是哪个操作系统

python2 vol.py -f /root/test/1.dmp imageinfo

可以看到推荐Profile为Win7SP1x64

(2)然后查看用户密码的hash值,profile指定为Win7SP1x64,然后指定hashdump

python2 vol.py -f /root/test/1.dmp --profile=Win7SP1x64 hashdump

(3)得到taqi7用户的密码哈希值为7f21caca5685f10d9e849cc84c340528,在线解密得密码明文为anxinqi

(4)也直接破解哈希值(需要安装mimikatz插件),它是一种用于提取Windows用户名和密码的工具。

python2 vol.py -f /root/test/1.dmp --profile=Win7SP1x64 mimikatz

直接得到taqi7密码明文为anxinqi

解法二:使用Passware Kit工具

(1)打开Passware Kit工具,选择Memory Analysis内存分析

(2)选择1.dmp文件

(3)得到结果为anxinqi

小题2

题目描述:现对一个windows计算机进行取证,制作该内存镜像的进程Pid号是多少?得到的flag请使用NSSCTF{}形式提交。

使用Volatility 工具的pslist指令列出所有进程,然后找制作该内存镜像的进程MagnetRAMCaptu.exe

python2 vol.py -f /root/test/1.dmp --profile=Win7SP1x64 pslist

MagnetRAMCaptu.exe进程的PID为2192

小题3

题目描述:现对一个windows计算机进行取证,bitlokcer分区某office文件中存在的flag值为?得到的flag请使用NSSCTF{}形式提交。

(1)把G.E01和1.dmp都使用Arsenal Image Mounter工具挂载到电脑上

可以看到电脑上多了个E盘

但是该磁盘使用了BitLocker加密,所以无法打开

(2)选择passware kit的Full Disk Encryption功能然后选择BitLocker,由于我们有内存镜像,所以选择I have a memory image,这样就可以不用暴力破解,因为内存中通常会有恢复密钥。加密的镜像文件选择G.E01,内存镜像选择1.dmp

破解结果如下

破解恢复密钥为:368346-029557-428142-651420-492261-552431-515438-338239

而且还得到解密后的镜像G-decrypted.dd

(3)在DiskGenius中使用刚刚破解的恢复密码解锁磁盘

(4)恢复结果如下,有一个word、一个ppt、一个密码本、加密后的txt

(5)打开ppt和word都需要密码

(6)将得到的密码本添加到password kit工具中,选择添加字典文件

(7)选择得到的pass.txt,然后勾选保持原始的数据顺序

(8)然后选择添加的字典进行字典攻击

(9)ppt破解结果如下,得到ppt的密码为287fuweiuhfiute

word破解结果如下,得到word的密码为688561

(10)使用密码打开word发现没有flag,打开ppt结果如下

小题4

题目描述:现对一个windows计算机进行取证,TrueCrypt加密中存在的flag值为?得到的flag请使用NSSCTF{}形式提交

(1)小题3还得到一个名为新建文本文档的txt文件,该文件大小很大,且内容是乱码,推测是加密后的镜像

(2)由于题目说明了是TrueCrypt加密,然后选择passware kit的Full Disk Encryption功能然后选择TrueCrypt,选择I have memory image

要解密的文件选择新建文本文档.txt,内存镜像选择1.dmp

(3)得到解密后的镜像新建文本文档-unprotected.txt

(4)将新建文本文档-unprotected.txt改名为新建文本文档-unprotected.dmp,然后使用Arsenal Image Mounter将其挂载到电脑上

(5)然后打开DiskGenius,点击恢复文件,得到一个名为哈哈哈的压缩包

(6)打开该压缩包,发现需要密码

(7)使用passware kit导入该文件,发现写着可以快速解密,所以尝试用1到6位数字组合暴力破解,结果如下

(8)使用密码解压压缩包,得到一个txt文件,内容如下

答案

(1)NSSCTF{anxinqi}

(2)NSSCTF{2192}

(3)NSSCTF{b27867b66866866686866883bb43536}

(4)NSSCTF{1349934913913991394cacacacacacc}

这篇关于CTF-蓝帽杯 2022 初赛Misc计算机取证题目详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

MySQL数据库双机热备的配置方法详解

《MySQL数据库双机热备的配置方法详解》在企业级应用中,数据库的高可用性和数据的安全性是至关重要的,MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种方式来实现高可用性,其中双机热备(M... 目录1. 环境准备1.1 安装mysql1.2 配置MySQL1.2.1 主服务器配置1.2.2 从

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

MyBatis常用XML语法详解

《MyBatis常用XML语法详解》文章介绍了MyBatis常用XML语法,包括结果映射、查询语句、插入语句、更新语句、删除语句、动态SQL标签以及ehcache.xml文件的使用,感兴趣的朋友跟随小... 目录1、定义结果映射2、查询语句3、插入语句4、更新语句5、删除语句6、动态 SQL 标签7、ehc

详解SpringBoot+Ehcache使用示例

《详解SpringBoot+Ehcache使用示例》本文介绍了SpringBoot中配置Ehcache、自定义get/set方式,并实际使用缓存的过程,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录摘要概念内存与磁盘持久化存储:配置灵活性:编码示例引入依赖:配置ehcache.XML文件:配置

从基础到高级详解Go语言中错误处理的实践指南

《从基础到高级详解Go语言中错误处理的实践指南》Go语言采用了一种独特而明确的错误处理哲学,与其他主流编程语言形成鲜明对比,本文将为大家详细介绍Go语言中错误处理详细方法,希望对大家有所帮助... 目录1 Go 错误处理哲学与核心机制1.1 错误接口设计1.2 错误与异常的区别2 错误创建与检查2.1 基础

k8s按需创建PV和使用PVC详解

《k8s按需创建PV和使用PVC详解》Kubernetes中,PV和PVC用于管理持久存储,StorageClass实现动态PV分配,PVC声明存储需求并绑定PV,通过kubectl验证状态,注意回收... 目录1.按需创建 PV(使用 StorageClass)创建 StorageClass2.创建 PV

Python版本信息获取方法详解与实战

《Python版本信息获取方法详解与实战》在Python开发中,获取Python版本号是调试、兼容性检查和版本控制的重要基础操作,本文详细介绍了如何使用sys和platform模块获取Python的主... 目录1. python版本号获取基础2. 使用sys模块获取版本信息2.1 sys模块概述2.1.1

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D

Redis 基本数据类型和使用详解

《Redis基本数据类型和使用详解》String是Redis最基本的数据类型,一个键对应一个值,它的功能十分强大,可以存储字符串、整数、浮点数等多种数据格式,本文给大家介绍Redis基本数据类型和... 目录一、Redis 入门介绍二、Redis 的五大基本数据类型2.1 String 类型2.2 Hash

Java中的.close()举例详解

《Java中的.close()举例详解》.close()方法只适用于通过window.open()打开的弹出窗口,对于浏览器的主窗口,如果没有得到用户允许是不能关闭的,:本文主要介绍Java中的.... 目录当你遇到以下三种情况时,一定要记得使用 .close():用法作用举例如何判断代码中的 input