-
-
[讨论]解答
-
2017-10-28 09:50 942
-
反汇编伪码后发现如果按常规输入,无法满足两个方程的要求,全局变量不能从2减至0,自然想到输入溢出,随意输入前12字符,后3字符为溢出覆盖数据,穷尽发现如果为!1A或/1A均可达成目标,但字符串中!和/不符合字母数字要求,估计前12字符有用,从代码中发现0x413130地址开始为人为数据,除第一个c3为返回外,后面开始为可利用代码,逐步跟踪发现全程除了SUB动作可以影响分支不同跳转外,大体上无太大差别,故逐一手动更改EAX让其与后面的固定值相等,发现为三个方程,求解可得FLAG。
赞赏
他的文章