target:将取证工具准备好,为了后面的 fic 和盘古石取证出一点点力气做准备
这个取证题目真的很 nice,学到了不少东西呢
仿真&bypass 登录密码
这里我选择用 ftk 打开,然后进行转换格式进行仿真
然后记录下用 ftk 的技巧

在 evidence tree 下面右键项目,有个 verify Drive/image,这个可以帮助我们验证文件完整性,稍微费点时间,但是呢,我们平时使用概率不大,就是打打 ctf 的取证,不见得出题师傅会在制作的镜像中偷偷更改文件。所以上面这个功能做做了解即可
接下来我们需要做的是将 e01 镜像文件转换成 vmdk 格式的文件,然后绕过开机登录密码进行 VMware 仿真取证,有两种方式,一种是使用格式转换工具,比如StarWind V2V Convertor
,操作很简单,按照上面的说明,把选项选好即可,这里就不赘叙了,因为它转换好后,依然需要我下面在 wsl2 的 Ubuntu 子系统中进行绕过开机密码操作
操作如下:
1 | mkdir ~/mnt |
具体交互流程就是下面这样
1 | yolo@Yolo:~/Desktop$ mkdir ~/mnt |
chntpw 功能很强大,可以根据用户的 rid 进行密码更换、清除等操作
但是很可惜,有一点是 chntpw 是不支持中文用户名的,这也就会导致它显示的用户列表中是找不到我想找的嫌疑人起早王的
请看,长这样
1 | <>========<> chntpw Main Interactive Menu <>========<> |
然后我后面输入的 3e9 是通过注册表 SAM 查看的

好在,在 chntpw 中是能操作的
1 | ================= USER EDIT ==================== |
通过选项 1 做到了清除密码,接下来我们退出保存即可
使用 sync 同步下磁盘就好,然后把保存好的 vmdk 复制到有 VMware 的设备中,然后这里记录下怎么通过 vmdk 新建虚拟机,首先是自定义

中间默认的部分我不截图了

这里选择稍后
这里选择 BIOS

这里选择 IDE

这里选择使用已存在的磁盘,就是通过 Ubuntu 系统保存的那个

清除残留 linux 系统的一些东西
1 | sudo umount /mnt/vmdk |
bypass 到这里 over
取证的题目和解题过程我就不在这里重复了,在这里放一份来自 Aura 大佬的完整 wp,值得反复观看学习
膜拜 Aura 神的 wp
盘古石取证-服务器仿真
这次的服务器仿真我确实没有见过,赛后在 Aura 的 wp 帮助下,进行复现
前置:我要先拿到 keyfile 文件,因为数据盘 server2.001 被 LUKS 加密了
这是 keyfile 内容:
emZz5Yqg5a+GcG9vbOWvhumSpeaWh+S7tg==
细节问题还请浏览 Aura 神的 wp
接下来看看这两个 001 文件,分别是系统盘 server1.001 和数据盘 server2.001
第一步,我需要将两个 001 文件转换成 vmdk,这样做方便我去 VMware 挂载
第二步,以管理员身份运行 VMware,接下来我就把每一小步都记录在截图中里了







TIP
这里使用的是数据盘 vmdk!!!

然后先这样保存
第三步,我们需要去更改 vmx 文件,将这串内容粘贴到文件末尾

然后把那个 server1.vmdk 文件给复制到 vmx 文件的路径下,接下来呢,双击打开 vmx 文件即可
出现这个的时候,就说明我们成功咯,Aura 万岁
第四步,把虚拟机关掉,然后对那个数据盘进行解密,解密后再重新打开虚拟机
解密步骤如下,我使用的是 wsl2 挂载的 vmdk1 文件的
1 | sudo modprobe nbd |
挂载好后,进入 config 目录中去
1 | echo "emZz5Yqg5a+GcG9vbOWvhumSpeaWh+S7tg==" | sudo tee keyfile |
接下来回到~路径下后,使用sudo umount /mnt/vmdk
取消挂载
然后把 server1.vmdk 重新放到虚拟机配置文件下去,重新双击 vmx 文件
然后使用账号 root 和密码 P@ssw0rd 就好

仿真成功,Aura 万岁

分析服务器检材,找出服务器系统启动盘的 GUID?[标准格式:数字、字⺟、-的组合,字⺟⼤写]
启动盘是那个 sda 分区,得到的 guid 就是下面的那个223DCB83-82B0-4C62-864A-DB28D84735B8
找出服务器⽹关 IP?[标准格式:1.1.1.1]
使用 ip route 就好
得到192.168.56.128
找出服务器数据盘的⽂件系统格式?[标准格式:ntfs]
这里有个考点,一旦密钥文件出现末尾的换行符,会导致解密磁盘失败
使用这两个命令可以检测
1 | wc -c /boot/config/keyfile |
这个时候,建议这样操作
printf "%s" "emZz5Yqg5a+GcG9vbOWvhumSpeaWh+S7tg==" > /tmp/keyfile
这样操作
然后重新看 lsblk -f 就能拿到格式
所以这里应该是 zfs
找出服务器数据盘的解密密钥⽂件名?[标准格式:abcd]
解密密钥就是 keyfile,没啥看的,甚至 disk.cfg 里的 lukskeyfile 的路径下也是 keyfile 呢
找出服务器密码?[标准格式:key@123]
Aura 帮我们爆破过,就是 P@ssw0rd
找出服务器版本号?[标准格式:0.0.0]
这样干也行,或者是在仿真开始的时候,就能看到
找出服务器内 Docker 虚拟硬盘位置?[标准格式:/home/abc/adc.raw]
直接访问这个就好
那个/mnt/disk1/docker.img 就是的
找出服务器启动盘的启动标识?[标准格式:D100,写出型号即可]
在系统盘的 log 归档中可以发现这个
使用的语句是 unzip -l /boot/logs/tower-diagnostics-20250415-2101.zip
好啦,就做到这里了,剩下部分我就不复现了,最近还是太忙了,那就继续膜拜 Aura 的 wp 好了
说些什么吧!