buuctf-re [GWCTF 2019]xxor 题解

无壳64位elf文件

拖入ida看代码

修复一下,方便分析

此处为主要加密及判断段

上面的HIDWORD和LODWORD查了一下资料是取高低4字节,如果是HIWORD就是2字节

从明文text取出之后进行enc函数加密,被加密的low与hi再放入v7数组中,循环三次,而v7的长度为6,实际上这里取高低字节的操作是取了v7[i]和v7[i+1]。为什么呢,进函数看看

进入enc函数

明显的tea加密,v3,和v4就是v7[i]v7[i+1],将部分变量重命名,方便分析

写个脚本解密即可,但这里我们缺个密文,去另一个cmp函数找

这里约束条件可以用z3解出来,我直接丢ai了

用的大佬的脚本,不记得看的哪个师傅了

解出来是666C61677B72655F69735F6772656174217D

将这一串十六进制数转成字符串即为flag

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值