[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

posted @ 2023-01-06 21:47  云千  阅读(315)  评论(0)    收藏  举报