利用格式化字符串漏洞对系统发起攻击
日期:2007年4月18日 作者: 查看:[大字体 中字体 小字体]-
main(int argc, char **argv)
{
char buf[100];
int x;
if(argc != 2)
exit(1);
x = 1;
snprintf(buf, sizeof buf, argv[1]);
buf[sizeof buf - 1] = 0;
printf("buffer (%d): %s\n", strlen(buf), buf);
printf("x is %d/%#x (@ %p)\n", x, x, &x);
return 0;
}对这个程序有几点说明:第一,目的很简单:将一个通过命令行传递值格式化输出到一个定长的缓冲区里。并确保缓冲区的大小限制不被突破。在缓冲区格式化后,把它输出。除了把参数格式化,还设置了一个整型值随后输出。这个变量是随后我们攻击的目标。现在值得我们注意的是这个值应该始终为1。
本文中所有的例子都是在x86 BSD/OS 4.1机器上完成。如果你到莫桑比克执行任务超过20年时间可能会对x86不熟悉,这是一个little-endian机器。这决定在例子中多精度数字的表示方法。在这里使用的具体数值会因为系统的差异而不同,这些差异表现在不同体系结构、操作系统、环境甚至是命令行长度。经过简单调整,这些例子可以在其他x86平台上工作。通过努力也可以在其他体系结构的平台上工作。
用Format攻击
现在是我们戴上黑帽子开始以攻击者方式思考问题的时候了。我们现在手头有一个测试程序。知道这个程序有一个漏洞并且了解程序员是在哪里犯错误的(直接把用户输入的命令行参数作为snprintf的格式化参数)。我们还拥有关于printf函数深入的知识,知道如何运用这些知识。让我们开始修补我们的程序吧。
从简单的开始,我们通过简单的参数调用程序。看这儿:
% ./fmtme "hello world"
buffer (11): hello world
x is 1/0x1 (@ 0x804745c)现在这儿还没有什么特别的事情发生。程序把我们输入的字符串格式化输出到缓冲区里,然后打印出它的长度和数值。程序还告诉我们变量x的值是1(以十进制和十六进制分别显示),x的存储地址是0x804745c。接下来我们试着使用一些格式指令。在下面的例子中我们打印出在格式化字符串之上栈堆中的整型数值:
% ./fmtme "%x %x %x %x"
buffer (15): 1 f31 1031 3133 - 上一页 [1] [2] [3] 下一页
-
- 利用格式化字符串漏洞对系统发起攻击 相关文章:
- ·利用插件来校验XHTML是否符合Web标准
- ·Web2.0在中国步入歧途 缺赢利模式VC有错
- ·利用UNIX的TFTP和RCP配置路由器
- ·黑客如何利用文件包含漏洞进行网站入侵
- ·利用iTextSharp生成Pdf一个小例子
- ·ASP.Net利用CSS实现多界面的方法
- ·利用XMLHTTP无刷新添加数据
- ·异域风情 奥地利美丽风景集
- ·网站优化:怎么利用Tags进行SEO
- ·利用expression实现界面对象的批量控制
- 利用格式化字符串漏洞对系统发起攻击 相关软件
- ·魂之利刃4公布宣传片
- ·NDS《胜利11人DS 中文汉化版》模拟器
- ·《超级马利奥64 DS》模拟器下载
- ·《毛利元就三箭之誓》试玩
- ·NDS《哈利波特和凤凰令》模拟器
- ·亚历山大·别利亚耶夫作品集V1.0
- ·《哈利波特与凤凰社》PC版试玩
- ·秘书长——一场正义与腐败的权利博弈
- ·法拉利赛车2 汉化版
- ·《命令与征服3泰伯利亚战争》全版本修改器全集
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
精品推荐
热点TOP10
- ·Telnet高级入侵攻略及原理
- ·最详细的黑客入门法则
- ·Windows黑客编程基础
- ·我是怎么进入他人计算机的
- ·菜鸟变黑客高手
- ·菜鸟都可以入侵一个网吧的所有电脑
- ·从零开始学黑客:网络黑客新手入门指南
- ·流光5.0使用小窍门
- ·黑客入侵前的信息收集
- ·木马是如何启动的
- ·最好的入侵linux教程
- ·流光破解email帐号教程
- ·黑客破解电脑密码实用技巧大全!
- ·入侵命令详解
- ·多种DDoS攻击技术方法
- ·经典:各个网络端口的入侵方法
- ·理想已经滑落——“中国黑客”10年嬗变
- ·教你如何:入侵UNIX和Linux服务器入门
- ·远程主机探测技术-扫描篇
- ·黑客技术之知道对方IP入侵别人的电脑
特别推荐
- ·多种DDoS攻击技术方法
- ·黑客入侵前的信息收集
- ·看黑客如何发动对电子邮件系统的攻击
- ·经典:各个网络端口的入侵方法
- ·防范黑客 从两大方面阻止域名被劫持
- ·黑客、红客、蓝客、飞客究竟是什么?
- ·认清虚虚实实的“ARP攻击”防御方法
- ·黑客知识 彻底堵死SQL注入工具漏洞
- ·赛迪网"IT技术百家讲坛"开讲 如何防御黑客?
- ·黑客如何利用DNS欺骗在局域网中挂马
- ·Windows黑客编程基础
- ·黑客很狡猾 如何减轻DDoS攻击危害?
- ·网络攻击的几种攻击与防御手法大揭秘
- ·黑客攻击的几种常用手法及防御技巧
- ·经典常见计算机密码破解实用手册
- ·经典总结:各个网络端口的入侵
- ·最详细的黑客入门法则
- ·Telnet高级入侵攻略及原理
- ·攻防技巧PHP数据库安全之SQL注入
- ·如何有效的抵抗DDOS
