[BSidesSF2020]mpfrag
知识点
做题过程
用超级块的备用块修复文件
file disk.bin

挂载文件:
mount disk.bin /mnt/

提示超级块损坏
用备用块修复。备用块在文件系统的8193块(ext2 的默认块大小是1k)
dd提取备用快
dd if=disk.bin bs=1024 skip=8193 count=1 of=disk2.bin
if=infile
- of=outfile
- bs=bytes:同时设置读入/输出的块大小为bytes个字节
- skip= blocks :从输入文件开头跳过blocks个块后再开始复制
- count:只拷贝输入的blocks块。)

把备用块放入disk.bin
dd if=disk2.bin of=disk.bin bs=1024 conv=notrunc seek=1

fls列出文件系统中所有文件

提取mpeg文件
cloud_key.mpeg已经被删除了,尝试修复并提取
blkls disk.bin > unalloc.bin

hexdump -C unalloc.bin | egrep '^.....[048c].. 00 00 01 ba' | head

dd if=unalloc.bin bs=1 skip=10240 of=out.mpeg
提取出out.mpeg,打开可以看到SF-G0lden-Gl0w-1849

提取压缩包
icat disk.bin 29 > cloud.zip

解压,输入密码,得到flag

参考
https://github.com/BSidesSF/ctf-2020-release/blob/master/mpfrag/solution/solution.txt

浙公网安备 33010602011771号