栈溢出是最常见,危害最大的漏洞类型之一

栈溢出原理

/*注意!该代码在VS环境下编译需要关闭安全选项!*/
#include<stdio.h>
#include<string.h>
int main()
{
    char *str = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
    vulfunc(str);
    return 0;
}

int vulfunc(char *str)
{
    char stack[10];
    strcpy(stack,str); //这里造成栈溢出
}

未完待续

栈溢出利用技巧

pop pop ret
ret2lib
ROP技术