赞
踩
本文为看雪论坛精华文章
看雪论坛作者ID:angelToms
本文是关于格式化字符串漏洞的介绍,论坛中有很多类似优秀的文章,我也对格式化字符串漏洞做一个总结,大家互相学习进步。 fmtstr github地址(包含代码和pdf文档): https://github.com/ylcangel/exploits/tree/master/fmtstr 该文章仅用于学习目的,不能用于商用,谢谢!由于本人能力有限,文章中可能会存在纰漏,欢迎大家指出,我及时斧正。 测试平台 系统: CentOS release 6.10 (Final)、32 位 内核版本: Linux 2.6.32-754.10.1.el6.i686 i686 i386 GNU/Linux gcc 版本: 4.4.7 20120313 (Red Hat 4.4.7-23) (GCC) gdb版本: GNU gdb (GDB) Red Hat Enterprise Linux (7.2-92.el6) libc版本:libc-2.12.so 漏洞原理 程序中提供了参数可控(该格式化字符串参数来自外部输入)的printf族和scanf族函数或错误的参数类型或格式化字符串参数和传入参数个数不一致等情况,这导致我们可以控制程序行为或泄露一些信息。例如: 1、 可控的参数 2、 参数类型错误 3、 格式化字符串参数和传入参数不符 第一种危害最大,我们完全可以控制程序行为,第二、三种不能控制程序行为,但可以对信息泄露提供一些帮助。 通用利用方式1、printf("%N$#x", {arg1...argn}) - 打印第N个参数的二级制值,%N$表示第N个参数, N可以大于n,arg代表实际输入参数(N >= 1)。
2、printf("%N$#x") - 打印当前栈顶距离N的内存值(N >= 1)。
%#x根据实际需要可以被替代为%s、%p。 前面已经举例了,这里就不在单独举例了。看雪ID:angelToms
https://bbs.pediy.com/user-665739.htm
*本文由看雪论坛 angelToms 原创,转载请注明来自看雪社区推荐文章++++
* Android 应用多开对抗实践
* Linux pwn从入门到熟练(三)
* 浅谈Bypass disable_function
* 修改门禁和电梯卡实例之ACR122U的控制指令和参数
* 恶意样本检测——Mathematics Malware Detected Tools
进阶安全圈,不得不读的一本书 ﹀ ﹀ ﹀ 戳Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。