首页
社区
课程
招聘
[原创]第二题 writeup
发表于: 2017-10-27 22:16 3141

[原创]第二题 writeup

2017-10-27 22:16
3141

输入的地方很奇怪,作为一个逆向题没有验证长度,导致 bof。
前面是个假的验证,解方程解了一下午,后来才发现是无解的。
尝试利用 bof 更改返回地址。发现在0x413131处有个明显的抬栈操作,怀疑是入口,0x00413131正好是 11A\x00,输入12*'a'+'11A'即可覆盖返回地址调到0x00413131。

于是从0x00413131开始往下分析,发现大量重复条件跳转。
主要逻辑夹杂在跳转之中,判断是否相等主要依赖 sub 之后判断 zf。

trace 化简后得到了以下代码:

照着汇编抄了一份z3

将 abc 转换回字符串 再补上11A 得到 flag:
Just0for0fun11A


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 1
支持
分享
最新回复 (1)
雪    币: 1432
活跃值: (3067)
能力值: ( LV9,RANK:156 )
在线值:
发帖
回帖
粉丝
2
编译不成功  'BitVec' is not defined  是什么原因?谢谢。
2017-10-29 09:13
0
游客
登录 | 注册 方可回帖
返回
//