WHUCTF2025新生赛wp-内存取证

直接掏出vol2


先用imageinfo查Profile信息

1
2
3
4
5
6
7
8
9
10
11
12
13
INFO    : volatility.debug    : Determining profile based on KDBG search...
Suggested Profile(s) : Win7SP1x64, Win7SP0x64, Win2008R2SP0x64, Win2008R2SP1x64_23418, Win2008R2SP1x64, Win7SP1x64_23418
AS Layer1 : WindowsAMD64PagedMemory (Kernel AS)
AS Layer2 : FileAddressSpace (D:\CTF\volatility_2.6\CTFER-PC-20251021-112951.raw)
PAE type : No PAE
DTB : 0x187000L
KDBG : 0xf80004041120L
Number of Processors : 1
Image Type (Service Pack) : 1
KPCR for CPU 0 : 0xfffff80004043000L
KUSER_SHARED_DATA : 0xfffff78000000000L
Image date and time : 2025-10-21 11:29:58 UTC+0000
Image local date and time : 2025-10-21 19:29:58 +0800

得到--profile=Win7SP1x64.


先cmdline查一下进程(由于篇幅限制,只展示了有用的)

1
2
3
4
5
6
7
8
9
10
11
12
13
************************************************************************
mspaint.exe pid: 876
Command line : "C:\Windows\system32\mspaint.exe" "C:\Users\CTFer\AppData\Roaming\Microsoft\Credentials\6000.740"
************************************************************************
wordpad.exe pid: 2836
Command line : "C:\Program Files\Windows NT\Accessories\WORDPAD.EXE" "C:\Users\CTFer\AppData\Local\Temp\key2 an0thEr_KEY"
************************************************************************
notepad.exe pid: 1540
Command line : "C:\Windows\system32\NOTEPAD.EXE" C:\Users\CTFer\Desktop\ENCRYPTED_VOLUME
************************************************************************
DumpIt.exe pid: 1460
Command line : "C:\Users\CTFer\Desktop\DumpIt.exe"
************************************************************************

其中DumpIt.exe是截取内存镜像的软件,与题目无关,可忽略

mspaint.exe可得到文件C:\Users\CTFer\AppData\Roaming\Microsoft\Credentials\6000.740

wordpad.exe可得到key2:an0thEr_KEY(由于windows的文件名不能有冒号就用空格代替了)

notepad.exe可得到C:\Users\CTFer\Desktop\ENCRYPTED_VOLUME


接下来使用filescandumpfiles尝试将上述文件从镜像里提取出来

PS D:\CTF\volatility_2.6> .\Python27\python.exe .\vol.py -f .\CTFER-PC-20251021-112951.raw --profile=Win7SP1x64 filescan > .\DUMP\f.txt

在f.txt中搜索上述两个文件名,得到:

0x000000001f6e16d0 16 0 R--rwd \Device\HarddiskVolume2\Users\CTFer\Desktop\ENCRYPTED_VOLUME

ENCRYPTED_VOLUMEdumpfiles提取出来:

1
2
3
PS D:\CTF\volatility_2.6> .\Python27\python.exe .\vol.py -f .\CTFER-PC-20251021-112951.raw --profile=Win7SP1x64 dumpfiles -Q 0x000000001f6e16d0 -D .\DUMP\
Volatility Foundation Volatility Framework 2.6
DataSectionObject 0x1f6e16d0 None \Device\HarddiskVolume2\Users\CTFer\Desktop\ENCRYPTED_VOLUME

获得了file.None.0xfffffa80091210d0.dat文件,只需将文件名改成ENCRYPTED_VOLUME即可


由于并没有找到6000.740这个文件(其实找到了也是fake_flag),故使用memdumpmspaint.exe的图像进行提取。

1
2
3
4
PS D:\CTF\volatility_2.6> .\Python27\python.exe .\vol.py -f .\CTFER-PC-20251021-112951.raw --profile=Win7SP1x64 memdump -p 2836 -D .\DUMP\
Volatility Foundation Volatility Framework 2.6
************************************************************************
Writing wordpad.exe [ 2836] to 2836.dmp

然后将文件后缀名改成.data(这步主要是骗GIMP的文件格式识别)然后丢进GIMP里

(哎,我tm怎么复现不出来了,之前不是好好的吗。。。没办法,这里没法放图片了)

丢进去之后“像素格式”选择“RGB 16位”,由文件名知宽度为6000,高度为740(致敬校赛传奇爆零取证题),打开,再进行一次竖直反转即可得到key1:Just_1_key


将之前的ENCRYPTED_VOLUME用Veracrypt挂载(密码为key1),再用key2解压里面的flag.zip,即可获得最终flag:flag{v0Iat1Ilty_1s_suCh_A_G0Od_tO0l&v0l2_YYDS!!!}

  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2023-2025 rhzhr's blog
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信