刚在看雪上看到微软杯Exploit Me即将在越低比赛

赶紧翻出了国外近三年对程序溢出攻击的文章,结合去年年底写的0Day机器人的经验

有兴趣朋友可以作为攻击参考

1 弱点函数

想当年,缓冲溢出漏洞在IT节呼风唤雨,凭借的就是StrCpy这个弱点函数
当程序中存在弱点函数的时候,只要拦截弱点函数的调用,进行外部构造,近乎100%的劫持程序

主要攻击字符串的拷贝(StrCpy),字符串格式化(printf)

2 弱点数据过程

但是这样的弱点函数不不容易发现可用的空间,而且溢出过程由于操作系统的版本不一样
常常被截断

主要攻击内存中的数据堆处理过程

3 整数溢出

整数逻辑错误是这几年溢出界的明星,影响范围广,多语言影响,C,C++,C#,Java

发生整数溢出后,从简单的逻辑错误
到原来的内存空间会被分配到容纳ShellCode,连美军都被这个漏洞头疼过

4 C++的编程逻辑错误

详细的我也不是太清楚,老外写得也不是太清楚

就是C++的内存分配,异常捕获这两块会引起错误

成熟的C++工程都采用STL,能避免这样的情况


这是上次弄0Day机器人的时候文档的总结出来的,在XP下3389发现漏洞(远程溢出3389)
但是客户要2003企业版的溢出,跨平台整了几周,没整出来,又是兼职的,工作又忙,就没有跟进


2011年4月15日20:44:57