有关栈溢出漏洞的利用

具体资料:初步认识栈溢出漏洞    栈溢出的初步利用



具体实现效果

有关栈溢出漏洞的利用_第1张图片

有关栈溢出漏洞的利用_第2张图片




其实原理很简单,就是利用溢出修改函数返回的地址,令其跳转到另外一个位置

溢出首先改变了EBP储存的内容,然后紧接着就是返回的地址,这里修改的就是返回的地址


另外,这里还需要注意的一点是

因为汇编指令在内存中都是四字节对齐的,所以如果局部变量为char a[9]的话,可用的内存为9字节。

但实际空白的内存为12字节,因此在利用溢出漏洞时应该输入12个字符才溢出到EBP,而EBP再占四个字节,再后面才是返回地址。

所以,像这样利用溢出漏洞的话若分配的是9-12,都先要输12个字符,后面再接地址。

有关栈溢出漏洞的利用_第3张图片



(这篇破文写得很水= =)更详细的内容可以到该文的开始点超链接

你可能感兴趣的:(菜鸟装鹰)