CTF-朴实无华的内存取证

题目描述
链接:https://pan.baidu.com/s/1dC4reO8opHQ3yZ8PdtD_AQ
提取码:lzsa

解题过程:
1.下载文件1.raw,放到kali里。
2.volatility -f 1.raw imageinfo
![在这里插入图片描述](https://img-blog.csdnimg.cn/ade41d1d0d524d798699d907d6284f83.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA54Of5rab5b6u6Iyr5L-h6Zq-5rGC,size_18,color_FFFFFF,t_70,g_se,x_16

2.尝试第一个profile类型,查看进程
volatility -f 1.raw pslist --profile=WinXPSP2x86

在这里插入图片描述
3.grep过滤flag关键字试试
volatility -f 1.raw --profile=WinXPSP2x86 filescan |grep flag
发现了线索
在这里插入图片描述
4.先把png图片提出来看看
volatility -f 1.raw --profile=WinXPSP2x86 dumpfiles -Q 0x0000000001e65028 -D ./
在这里插入图片描述
5.查看图片
在这里插入图片描述
6.把那一圈字符串提取出来看看:
FDCB[8LDQ?ZLOO?FHUWDLQOB?VXFFHHG?LQ?ILJKWLQJ?WKH?HSLGHPLF]
这一串,开头是四个字符,还有中括号包着,明显是flag的格式,而且中间的多个问号盲猜是下划线,根据经验应该是ASCII码移位了。尝试“[”的ASCII码为91,“{”的ascii码为123,所以猜测所有字符ASCII码要加32,再次尝试问号的ASCII码为63,加32等于95,正好对应下划线,验证了猜想,所以把所有ASCII码加32。

手算太麻烦了,python三行代码解决

string = 'FDCB[8LDQ?ZLOO?FHUWDLQOB?VXFFHHG?LQ?ILJKWLQJ?WKH?HSLGHPLF]'
for i in string:
    print(chr(ord(i) + 32), end='')

结果为:fdcb{Xldq_zloo_fhuwdlqob_vxffhhg_lq_iljkwlqj_wkh_hslghplf}

7.看上去不大对,根据经验凯撒解密一下试试
结果为:cazy{Uian_will_certainly_succeed_in_fighting_the_epidemic}
这就对了嘛(PS:第一个U应为X,行该是出题的时候误把B写成8了)
所以flag是cazy{Xian_will_certainly_succeed_in_fighting_the_epidemic}
西安一定会战胜疫情!加油!!!

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值