首页
社区
课程
招聘
[原创]看雪.TSRC 2017CTF秋季赛第二题writeup
2017-10-28 20:40 3639

[原创]看雪.TSRC 2017CTF秋季赛第二题writeup

2017-10-28 20:40
3639
用 IDA打开 ,发现直接调用了三个函数 ,第一个函数是输入,两个函数是解方程,4个方程,两个未知数。。。满足不了。。。

而且疑点是:
那两个函数根本没有传入输入的flag,却又看似验证flag的东西。

就觉得很好奇,便用了 OD调试才发现,实际上 这两个函数没有什么局部变量,只是因为,这两个函数访问到了之前输入函数输入的flag,造成IDA识别错误的假象。

PS:因为IDA是通过函数内部对栈中的值的引用,来判断局部变量并自动生成局部变量,所以IDA自动生成了两个变量 v1和v2,但是这方程没用啊!


所以转换思路,找是不是有其他验证flag的函数,但是这个验证可能也没有参数传入,完全有可能像那两个混淆函数一样,直接访问废弃的栈内容(输入的flag)进行验证。

因为od的自动分析会受到 影响,所以便取消了自动分析,搜索 RET的代码块,一个代码块一个的看,发现0x413131处



很可疑,于是用IDA打开看,这个地址,居然全是一堆 定义的常数变量,想了下,可能是出题人故意为之,所以就想在输入了flag后,能跳转到这个413131里面看看到底是什么个情况,于是 构造了paload:123456789aa11A
然后跟进去看,果然 是在对flag验证。。。然后多跟几次发现是解方程。。。。


[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
点赞1
打赏
分享
最新回复 (1)
雪    币: 441
活跃值: (419)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
叶小北 2018-1-22 15:06
2
0
写的不错,多谢分享
游客
登录 | 注册 方可回帖
返回