-
-
[原创]CTF 第二题 scanf溢出
-
发表于:
2017-10-26 20:15
4211
-
显然,只要超过12字节(11个英文字符)就会覆盖掉返回地址
输入任意12个字符,第13位补0 就会使得返回地址变为 00401000
就会再一次循环
我们前面不管,只要13-16字节变成 2F 10 40 00 就可以使得返回地址变成
有些字符我们无法随意输入,00 这个是字符结束符,我们用15个字符就可以了
最后三个字符是 2F 10 40
10 无法手动输入,可以先打开 cmd 在里面运行
这个字节数组转成文本
31 31 31 31 31 31 31 31 31 31 31 31 2F 10 40
(直接复制下面的字符串)
111111111111/@
还有一种方法
返回地址还可以改成 41DEA0 来插入自己的代码,再跳回40102F,但是发现中间会不得不插入00,如果用计算法来的话,又会地址不够用,(只有12字节可用)
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课