溢出
Eugene800
这个作者很懒,什么都没留下…
展开
-
xp下调试堆溢出(下)--利用快表
前一篇简单阐释了快表分配的原理,并在文章的结尾提到xp sp1以前的OS并不对分配出去的快表地址进行检查。本文简单演示利用这个漏洞。建议程序在win2k上以命令行运行#include #include int main(int argc,char* argv[]){ HLOCAL h1,h2,h3,h4; char* pi=NULL; HANDLE hp; char* str=原创 2016-07-07 22:27:24 · 885 阅读 · 0 评论 -
<Oday安全 12.3.1Ret2Libc实战之利用ZwSetInformationProcess>一节补充
本文补充记录我在试验关闭DEP过程遇到的问题和解决方法。 首先要说一下用OllyFindAddr插件寻找目标指令时可能会遇到的问题。诚然这个插件是个好东西,能迅速列出需要的指令流的地址,但并不是所有在列的指令地址都可以使用,挑选前需要甄别。以关闭DEP保护流程中抬高esp值"Find Pop Retn+n"为例:插件罗列了一堆备选指令地址,我挑选最后一个地址"0x7D97FE原创 2017-03-08 00:07:05 · 913 阅读 · 5 评论 -
<Oday安全 12.3.1Ret2Libc实战之利用ZwSetInformationProcess>一节注记(下)
在前一篇一节注记(上) 的末尾部分,我们遇到访问无效内存的异常,本篇将讨论如何解决这个异常并关闭DEP保护。我们已经知道引起异常的原因是向无效地址[ebp-4](0x9090908C)写入数据。要解决这个异常可能有2种思路:1.让[ebp-4]指向可读写的地址;2.修改函数LdrpCheckNxCompatibility的实现,当然,这种方法不是本篇讨论的内容,是否具有可行性也没有验证过,所以,还原创 2017-03-01 23:32:03 · 1190 阅读 · 1 评论 -
The need for a POP POP RET instruction sequence
The purpose of this post is to explain the need for a POP POP RET instruction sequence. You often read or hear that exploit writers search for this instruction sequence because it is an essential part转载 2016-12-08 22:00:38 · 559 阅读 · 0 评论 -
关于 [栈溢出后jmp esp执行shellcode] 原理分析
网上关于栈溢出后用jmp esp执行shellcode的文章有很多,感觉分析的都没有戳到点,所以想结合自己调试的经历写下自己的想法。正常情况下,函数栈分布图如下:---->栈内存由低向高方向----->|------------栈变量----------|----ebp----|------返回地址------|函数形参|发生溢出后,以上栈空间的内容被覆盖,可能从上面的布局变成这样:原创 2016-11-25 15:19:09 · 6242 阅读 · 2 评论 -
栈溢出利用SEH异常处理
前面一篇blog 里提到了基于堆溢出利用SEH的方式,本文将侧重于栈溢出利用SEH异常处理。 先来看下示例代码:#include #include char shellcode[] = {"\x90\x90\x90\x90\x90\x90\xeb\x10" \ "\x90\x90\x90\x90\x90\x90\x90\xcc" \ "\x90\x90原创 2016-11-25 11:52:13 · 2216 阅读 · 2 评论 -
堆溢出(DwordShoot)利用SEH异常处理
异常处理的身影处处可见,最常见的处理方式就是当异常发生时,在异常处理模块中记录日志,便于程序员事后定位。但是,被异常处理包含的代码真的会在异常发生时让程序优雅的退出吗?在程序的世界里什么都可能发生,所以,可以说前面那个问题的答案是否定的。这正是本文的主题:利用SEH异常处理。 SEH溢出有多种方式:栈溢出和堆溢出。本文关注堆溢出后如何利用SEH。堆溢出的步骤和前文一样:从FreeList原创 2016-11-25 00:20:13 · 1717 阅读 · 0 评论 -
演示Heap Spray(堆喷射)的原理
Heap Spray原理浅析 这篇文章应该是网上阐释堆喷原理最为详尽和易懂的一篇。唯一让我感到遗憾的是:文章结尾处给出的例子是基于javascript的,这对于我这种门外汉来说并不是一个很好的练功房。结合自己对文章的理解,在这给出c++版本的堆喷射演示代码。#include #include class base{ char m_buf[8];public: int setBuf原创 2016-12-01 22:32:15 · 15467 阅读 · 4 评论 -
Heap Spray原理浅析
转自:http://blog.csdn.net/magictong/article/details/7391397Heap Spray原理浅析Magictong 2012/03 摘要:本文主要介绍Heap Spray的基本原理和特点、以及防范技术。关键词:Heap Spray、溢出攻击、漏洞利用、堆溢出 Heap Spray定义基转载 2016-11-30 20:59:09 · 717 阅读 · 0 评论 -
xp下堆溢出DWORD SHOOT---狙击空闲表
前面写过通过堆溢出利用快表,这次我的目标是利用空闲表。千万不要觉得这是炒作话题,利用空闲表比利用快表要复杂很多,因此希望读者不要弃篇。 行文开始前,我想对0day安全:软件漏洞的作者提到的DWORD Shoot的环境做一些补充说明:作者说实验应在w2k下完成,在xp sp3下会失败。这是因为作者DWORD SHOOT的目标是PEB!RtlEnterCriticalSection函数地址,原创 2016-08-23 09:18:42 · 1500 阅读 · 0 评论 -
introduction to software exploits off-by-one 一字节溢出
原文链接:introduction to software exploits off-by-one 公开课Introduction to Software Exploits涵盖了简短的基于C语言的off-by-one漏洞,但由于时间关系,讲师并没有介绍如何利用漏洞。为此,我邀请你跟着我一起向编写优美的漏洞利用程序发出挑战。挑战: 你可以在课程附带的虚拟机实验目录下找到下列翻译 2017-03-15 17:15:43 · 912 阅读 · 0 评论