今天看啥  ›  专栏  ›  合天网安实验室

32位以及64位栈迁移的具体分析与学习

合天网安实验室  · 公众号  ·  · 2020-03-16 10:44
前言这次来学习下栈迁移技术吧,全片构成为先了解原理,然后再分别以 32位程序及64位程序以图文的形式来具体学习!原理栈迁移正如它所描述的,该技巧就是劫持栈指针指向攻击者所能控制的内存处,然后再在相应的位置进行 ROP。我们可利用该技巧来解决栈溢出空间大小不足的问题。我们进入一个 函数的时候,会执行call指令call func(); //push eip+4; push ebp; mov ebp,esp;call func() 执行完要退出的时候要进行与call func相反的操作(恢复现场)维持栈平衡!leave; //mov esp,ebp; pop ebp;ret ; // pop eip栈迁移   的核心思想就是    将栈 的  esp 和 ebp 转移到一个  输入不受长度限制的 且可控制 的 址处,通常是 bss 段地址!   在最后   ret 的时候  如果我 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照