XCTF 进阶 RE dmd-50、Shuffle、re2-cpp-is-awesome

52 篇文章 6 订阅
24 篇文章 0 订阅

XCTF 进阶 RE dmd-50、Shuffle、re2-cpp-is-awesome

一天一道CTF题目,能多不能少

复习有什么意思吗?还不如做两个题快乐

dmd-50
下载文件,直接IDA打开(64)
找到主函数,发现一串奇怪的值:
在这里插入图片描述
得到:780438d5b6e29db0898bc4f0225935c0
类似于MD5
经过MD5解码得到:b781cbb29054db12f88f08c6e161c199
提交,正确~~

Shuffle
一开始看题目以为挺复杂的,结果和上一道题目一样~
在这里插入图片描述
IDA打开(32)
找到主函数:
在这里插入图片描述
提交得到的字符串:SECCON{Welcome to the SECCON 2014 CTF!}
正确~~

re2-cpp-is-awesome
用IDA(64)打开文件找到主函数:
在这里插入图片描述
好乱的代码啊~~ 头皮发麻
直接用shift+F12查看字符串:
在这里插入图片描述
一个下次祝你好运,一个你现在应该有flag了~
外加一串奇怪的字符串
在这里插入图片描述
接下来就在想,下次好运和已经有flag,,,,肯定是要我们输入,然后进行判断
接下来就找关键点了~
最后找到了:
在这里插入图片描述
然后就来看这个if判断~
发现off_6020A0是那一串奇怪的字符
dword_6020C0是一串数据
在这里插入图片描述
这样不好看,直接看16进制的那个窗口:
在这里插入图片描述
在这里插入图片描述
又因为align 8,8字节对齐
所以dword_6020C0的数据是:'24','0','5','36','65','7','27','26','2d','1','3','0','d','56','1','3','65','3','2d','16','2','15','3','65','0','29','44','44','1','44','2b'16进制表示
回过头来看if,发现dword_6020C0表示的是off_6020A0的下标
直接编写脚本:

s = "L3t_ME_T3ll_Y0u_S0m3th1ng_1mp0rtant_A_{FL4G}_W0nt_b3_3X4ctly_th4t_345y_t0_c4ptur3_H0wev3r_1T_w1ll_b3_C00l_1F_Y0u_g0t_1t"

x = ['24','0','5','36','65','7','27','26','2d','1','3','0','d','56','1','3','65','3','2d','16','2','15','3','65','0','29','44','44','1','44','2b']

flag = ""
for i in x:
	i = int(i,16)
	flag += s[i]

print(flag)

最后得到:ALEXCTF{W3_L0v3_C_W1th_CL45535}
提交,正确~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值