- 说点什么:
- 栈介绍
- 栈溢出原理
- 栈溢出中比较重要的几个步骤:
- 对于有一定pwn基础的同学来讲,CTF-wiki就是yyds,绝绝子,很上头呀。
- 不过简洁有力的另一方面,是细节不彻底,因此本系列文章专为解决CTF-wiki的细节问题
- 注:建议有一定pwn基础的同学看,如果没有学过汇编、计组等科目,CTF-wiki看起来会像天书。
栈介绍
碰到栈有关的事物,在脑海中浮现出两幅图,就会很形象。
一般情况下C语言调用栈:
int main(int w, int x, int y, intz); push z push y push x call main add 12, esp //恢复ESP原值,使其指向调用前保存的返回地址
特殊情况下:见CTF-wiki
栈溢出原理CTF-wiki例题函数:
分析:
栈溢出中比较重要的几个步骤:- 寻找危险函数
- 确定填充长度
- 填充并覆盖



