概述
strlen 是一个统计字符串长度的函数 然后我们这次说的题 就是 关于strlen 返回值 造成 溢出的问题
在32的系统中 有这么一种情况 strlen 的结果的返回值给8位寄存器al 那么8位最多是多少? 255 如果我们 多输入会怎么办
我们如果输入257 二进制是多少呢 000100000001 这个应该是没有什么好说的 那么假如我们输入了 257个字符 那么最后统计的结果 还是1 这个应该是没有什么问题的 。。。。。。。。。。
然后这道题就是考的这个知识点
这个是个主页面 然后我们点进if 的那个函数里面
这里的read有 那么大 而且 想控制的话 还有进一步 去看 check_passwd 然后我们点进去 看一下
这里就可以看的出来 控制的比较厉害 我们调试发现
其中 ffa5702c 上面的位置是我们的返回地址 然后ffa57014的地址是我们输入的字符串
然后我们就可以劫持我们的程序了。。
但是限制我们的长度是3-8 那么就是上面我说的 输入255以上的字符串 然后就可以 控制程序了
最后
以上就是精明雪碧为你收集整理的strlen 返回值的漏洞的全部内容,希望文章能够帮你解决strlen 返回值的漏洞所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复