随笔分类 - 溢出学习

总结windows下堆溢出的三种利用方式
摘要:.利用RtlAllocHeap 这是ISNO提到的,看这个例子 main (int argc, char *argv[]) { char *buf1, *buf2; char s[] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"x03"x00"x05"x00"x00"x01"x08"x00"x11"x11"x11"x11"x21"x21"x21"x21"; buf1 =... 阅读全文

posted @ 2007-08-24 17:04 dhb133 阅读 (259) | 评论 (0) 编辑

堆溢出
摘要:作者:袁哥 主页:http://www.nsfocus.com 现在堆溢出的研究有点升温,暴露出来的堆溢出漏洞也越来越多,所以就有必要研究有效的堆溢出攻击方法了。由于堆溢出只是溢出的一种形式,原理已经介绍得比较多,也比较简单,所以就不再做这方面的介绍。 一、堆溢出后的后果; 现在的系统管理堆,为了查询的高效快速,一般都使用的双向链表结构。我们来看双向链表管理的时候的删除操作。*a,*b,... 阅读全文

posted @ 2007-08-24 17:01 dhb133 阅读 (255) | 评论 (0) 编辑

提取shellcode
摘要:说明:此程序可以用标准c语言string格式打印出你所在ShellCodes函数中编写的shellcode 用vc编译时请使用Release格式并取消优化设置,否则不能正常运行 */ #i nclude #i nclude #i nclude #define DEBUG 1 //定义为调试模式。本地测试用。打印shellcode后立即执行shellcode // //函数原型 //... 阅读全文

posted @ 2007-08-24 17:00 dhb133 阅读 (513) | 评论 (0) 编辑

编写shellcode补完
摘要:看来我真是个菜虫,写栈溢出例子程序的时候才发现自己写的shellcode的问题,这么简单的问题我怎么就没想到呢?看来我真是菜。 什么问题?唉,上篇的shellcode中有那么多0x00这种特殊的字符,strcpy能执行完全才怪!好,今天来个补完,谈谈shellcode编码 问题。编码是正是为了去除shellcode中特殊字符串的问题,方法大概有异或法,直接替换法和拆分法,我是菜虫我用异或法。 异... 阅读全文

posted @ 2007-08-24 16:59 dhb133 阅读 (295) | 评论 (0) 编辑

如何手动编写shellcode
摘要:看来我是要从汇编入手做些事情了。汇编如今的用途不过是逆向工程,加解密,有害代码分析,漏洞挖掘以及一些有害代码生成,如病毒,缓冲区溢出攻击。首先申明这些我都不会,有些只知道皮毛。我连菜鸟都算不上,最多是条菜虫。 这几天看了看缓冲区溢出,写下来一点心得,一是希望有高人指导,二是总结一下。 今天说说shellcode的生成,当然是win32平台下的,linux本人没有什么研究(菜吧)。 shellco... 阅读全文

posted @ 2007-08-24 16:59 dhb133 阅读 (987) | 评论 (0) 编辑

定制特殊的shellcode
摘要:现在很多的溢出,都对shellcode有一些特殊的要求,比如不能出现某些特殊字符,或者要求长度小于多少多少等等。刚学会了写溢出,遇到这些问题还是很头痛的,想在外面去找现成的,好像一时半会儿不容易找到,只好自己写或者把外面公布的拿来修改了。 关于有长度限制的shellcode,解决起来相对来说比较容易一些。一个方法是针对具体的漏洞来写比较小的shellcode,外面有很多的模版,看懂 了可以根据自... 阅读全文

posted @ 2007-08-24 16:58 dhb133 阅读 (437) | 评论 (0) 编辑

定制自己的shellcode
摘要:F.Zh这个名字被女友无情枪毙,以后这个系列就换成沙布拉尼尔为大家介绍了。 定制自己的shellcode无非是两个原因:exploit的特殊要求,或者是逃脱各种杀毒软件或者IDS什么的。上次说了一个把shellcode先 拆分然后再组合,其结果是会加长shellcode的字节一倍左右,这次再来说说其他的方法,难度可能稍微大一些,但是相应的效果会更好。 在这里依然作一个约定,首先,shellco... 阅读全文

posted @ 2007-08-24 16:56 dhb133 阅读 (366) | 评论 (0) 编辑

栈溢出原理初探
摘要:早上好无聊,写写栈溢出的原理吧。我也是刚刚接触没多久,理解还不够深入。我将结合前两次得到的shellcode结合一个很小的本地溢出例子程序来模拟一次简单的溢出,得到一个最基本的溢出模型。 栈溢出是利用c语言对一些字符串操作不检查边界的结果,比如strcpy,strcat等等,简单地讲就是自己设置的字符串覆盖掉了程序的栈结构而导致的程序不能按照设想的状况执行。 看一下调用子程序的压栈顺序: 比如:... 阅读全文

posted @ 2007-08-24 16:56 dhb133 阅读 (3003) | 评论 (0) 编辑

编写变形的shellcode[实战篇]
摘要:上次花了很多笔墨来说明一个变形的shellcode到底是什么原理,这一次的实战篇我们 就来做一个简单的变形shellcode。由于篇幅的限制,这个变形的东西还是比较幼稚,但是它已经能够逃脱几乎所有按照shellcode特征来杀 “毒”的各类软件,在shellcode不限长度的时候,你甚至可以反复的使用这个加密的头部来进行变形。具体的内容,我们在下面慢慢说。 切入正题之前还是按照老传统先科普一下。... 阅读全文

posted @ 2007-08-24 16:55 dhb133 阅读 (782) | 评论 (0) 编辑

编写变形的shellcode[原理篇]
摘要:X'Con04据说轰轰烈烈的结束了,马上安焦就毫无保留地把所有的演讲用幻灯都放了出来。作为菜鸟,我也好事地下载了一份来看,首先看到的是Plan9 大虾的《高级shellcode设计技巧》。这篇文章似乎总结了一下当前Shellcode的各种技巧和设计思路,比较有意思的是当中提到的 ADMMutate,虽然在2001年就有见过这个工具,但是似乎一直都在*nix下而且这么多年来没见过升级。闲下来没有事... 阅读全文

posted @ 2007-08-24 16:54 dhb133 阅读 (876) | 评论 (0) 编辑

菜鸟版Exploit编写指南之旧饭重炒【转】
摘要:我也很诧异我这个菜鸟能把这个系列写到第三话,但既然有人读,就只有继续献丑了。写稿的时候windows平台及其第三方软件似乎没有报道有新的漏洞,只 能用以前的一些重要漏洞作为例子,这样子继续的话,不知道会不会有一天写到古老的idq/ida啊,或许我应该换一下平台,写写*nix上面的东西? Serv-U在国内的应用还是很广泛的,很多虚拟主机还有一些电影下载的网站都喜欢用这种FTP服务软件,所以从... 阅读全文

posted @ 2007-08-24 16:52 dhb133 阅读 (551) | 评论 (0) 编辑

菜鸟版exploit编写指南续【转】
摘要:上次写的那篇文章,有好多东西是慌里慌张地没有说清楚。究其原因,说出来不怕大家笑话,我是为了骗点稿费给MM买东西,所以写才会写得这么急。在接受了黑 防老编独行者さんま一番教育后,我深刻地认识到老编,哦~不不,读者才是一切的硬道理。为了显示骗稿费的诚意,我决定续貂一回,作为上一篇的补偿,这篇将 会更详细一点。 四月份微软给的补丁,一下子补了二十几个漏洞,其中有一个lsasrv.dll的远程溢出,就... 阅读全文

posted @ 2007-08-24 16:41 dhb133 阅读 (554) | 评论 (0) 编辑

菜鸟版exploit编写指南[转]
摘要:从早期的idq/ida到webdavx,一直以来都是用大虾们写的溢出利用程序来玩,在看过了很多溢出入门的文章后,我忍不住也试着学习了一下。这些文 字也算是一些心得体会,拿出来献丑的原因,一是和同样身为菜鸟的朋友们交流一下,二来还留下了一些问题,希望高手们能够在看到后抽出百忙的时间,指点一下 迷津。 一般的溢出入门文章,都是自己写一个有弱点的程序然后来hack,感觉上总是有点不过瘾,所以我想试试看... 阅读全文

posted @ 2007-08-24 16:21 dhb133 阅读 (633) | 评论 (1) 编辑

溢出基础(转)
摘要:Buffer Overflow 机理剖析 使用Buffer Overflow 方法来入侵目的主机是黑客们经常采用的一种手段,本文将几篇介绍其机理的文章作了一些加工整理, 对它的机理作出了由浅入深的剖析. 本文分为下面几个部分, 朋友们可以按照自己的兴趣选择不同的章节: 关于堆栈的基础知识 Buffer Overflow 的原理 Shell Code 的编写 实际运用中遇到的问题 附录 ----... 阅读全文

posted @ 2007-08-06 11:13 dhb133 阅读 (207) | 评论 (0) 编辑

导航

统计