![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c\c++
影中踪影
这个作者很懒,什么都没留下…
展开
-
函数栈及缓冲区溢出攻击(一)
关于函数栈栈是向下生长的,简单的说就是栈底地址大于栈顶地址。就x86体系的CPU而言,寄存器ebp指向的是栈底,而寄存器esp指向的是栈顶.假设函数A调用函数B,我们称A函数为"调用者",B函数为“被调用者”则函数调用过程可以这么描述: (1)先将调用者(A)的堆栈的基址(ebp)入栈,以保存之前任务的信息。 (2)然后将调用者(A)的栈顶指针(esp)的值赋给eb原创 2013-11-14 01:34:01 · 647 阅读 · 0 评论 -
函数栈及缓冲区溢出攻击(二)
在本一章,将给出一个例子,讨论如何准备一些特殊的数据,将这些数据传给没有做溢出检测的函数,从而获得程序的控制权。不多说,先上代码#include #include void B(){ printf("Function B has been called\n");}void A(char* pData){ char a[10] = {0}; strcpy(原创 2013-11-14 20:37:28 · 505 阅读 · 0 评论