Exploit
文章平均质量分 88
Eugene800
这个作者很懒,什么都没留下…
展开
-
Win7 Wininit.exe任意加载/执行(漏洞)
Win7关机时会执行下列函数:原创 2022-04-07 00:06:50 · 2277 阅读 · 1 评论 -
ubuntu下成功进行栈溢出实验的先决条件
偶尔想在ubuntu下做个栈溢出的实验,很遗憾每次在gbd下运行都会报错:Program received signal SIGSEGV, Segmentation fault.首先想到的就是gcc编译时可能对程序启用了不可执行栈机制,遂用参数关闭该机制,运行后错误依旧:gcc -fno-stack-protector -g -o execstack execstack.c多次调试运行排原创 2017-04-19 23:10:25 · 2250 阅读 · 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 · 899 阅读 · 0 评论 -
<Oday安全 12.3.1Ret2Libc实战之利用ZwSetInformationProcess>一节补充
本文补充记录我在试验关闭DEP过程遇到的问题和解决方法。 首先要说一下用OllyFindAddr插件寻找目标指令时可能会遇到的问题。诚然这个插件是个好东西,能迅速列出需要的指令流的地址,但并不是所有在列的指令地址都可以使用,挑选前需要甄别。以关闭DEP保护流程中抬高esp值"Find Pop Retn+n"为例:插件罗列了一堆备选指令地址,我挑选最后一个地址"0x7D97FE原创 2017-03-08 00:07:05 · 874 阅读 · 5 评论 -
<Oday安全 12.3.1Ret2Libc实战之利用ZwSetInformationProcess>一节注记(下)
在前一篇一节注记(上) 的末尾部分,我们遇到访问无效内存的异常,本篇将讨论如何解决这个异常并关闭DEP保护。我们已经知道引起异常的原因是向无效地址[ebp-4](0x9090908C)写入数据。要解决这个异常可能有2种思路:1.让[ebp-4]指向可读写的地址;2.修改函数LdrpCheckNxCompatibility的实现,当然,这种方法不是本篇讨论的内容,是否具有可行性也没有验证过,所以,还原创 2017-03-01 23:32:03 · 1161 阅读 · 1 评论 -
<Oday安全 12.3.1Ret2Libc实战之利用ZwSetInformationProcess>一节注记(上)
0day安全这书越到后面越难,哎...先记录一下看书过程中的注记,便于后面理解。原创 2017-02-27 23:29:09 · 887 阅读 · 0 评论 -
<Oday安全 11.6利用加载模块之外的地址绕过SafeSEH>一节注记---jmp [ebp+N] (下)
接上回,还剩几条跳转的指令还没分析到,这些指令将在本篇中完成。 先来看看call/jmp [ebp-0x4]这条指令。这是在当前函数_except_handler4栈的局部变量,因此需要查看反汇编代码:0:000> uf ntdll!ExecuteHandler2ntdll!ExecuteHandler2:7c923282 55 push ebp原创 2017-01-12 23:41:28 · 1162 阅读 · 0 评论 -
<Oday安全 11.6利用加载模块之外的地址绕过SafeSEH>一节注记---jmp [ebp+N] (上)
看到这一章我又抓狂了:作者提及从进程空间类型为Map的映射文件中寻找如下指令地址:call/jmp dword ptr[esp+0x8]call/jmp dword ptr[esp+0x14]call/jmp dword ptr[esp+0x1c]call/jmp dword ptr[esp+0x2c]call/jmp dword ptr[esp+0x44]call/jmp dwor原创 2017-01-10 22:23:48 · 973 阅读 · 0 评论 -
<Oday安全 11.5利用未启用SafeSEH模块绕过SafeSEH>一节注记
Oday安全一书的内容越往后越深奥,不得不做些注记备忘。 书P297 插图11.5.6写道__except函数地址根据EBP-4的值得出。原创 2016-12-24 17:02:24 · 825 阅读 · 0 评论 -
简单演示Exploit SEH原理(未开启SafeSEH模块)
前面写了不少SEH相关文章,这里来个复杂点的栈溢出SEH。文章不重复解释SEH运行原理,但对主要步骤加以调试和注释,另外本文参考考了雪上 Exploit 编写系列教程第三篇_基于SEH的Exploit 一文。一般来说Exploit重在溢出,不过本文旨在是演示Exploit SEH的原理,因此省略溢出过程直接在栈上修改。程序源码(vc++6.0 Debug版本)如下: #include原创 2015-08-24 23:25:19 · 1328 阅读 · 0 评论 -
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 · 522 阅读 · 0 评论 -
关于 [栈溢出后jmp esp执行shellcode] 原理分析
网上关于栈溢出后用jmp esp执行shellcode的文章有很多,感觉分析的都没有戳到点,所以想结合自己调试的经历写下自己的想法。正常情况下,函数栈分布图如下:---->栈内存由低向高方向----->|------------栈变量----------|----ebp----|------返回地址------|函数形参|发生溢出后,以上栈空间的内容被覆盖,可能从上面的布局变成这样:原创 2016-11-25 15:19:09 · 6187 阅读 · 2 评论 -
演示Heap Spray(堆喷射)的原理
Heap Spray原理浅析 这篇文章应该是网上阐释堆喷原理最为详尽和易懂的一篇。唯一让我感到遗憾的是:文章结尾处给出的例子是基于javascript的,这对于我这种门外汉来说并不是一个很好的练功房。结合自己对文章的理解,在这给出c++版本的堆喷射演示代码。#include #include class base{ char m_buf[8];public: int setBuf原创 2016-12-01 22:32:15 · 15170 阅读 · 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 · 692 阅读 · 0 评论 -
C++虚表与多态
转自:http://blog.csdn.net/haoel前言 C++中 的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图转载 2016-09-30 15:44:47 · 1031 阅读 · 1 评论 -
C++溢出对象虚函数表指针
C++一特性是通过virtual关键字实现运行时多态,虽然自己用到这个关键字的机会不多,但很多引用的第三方库会大量使用这个关键字,比如MFC...如果某个函数由virtual关键字修饰,并且通过指针方式调用,则由编译器实现运行时多态,也是本文溢出虚函数表并加以利用的前提条件。虚表的概念可以参考这篇文章:C++虚表和多态,在这篇文章里就不再过多解释了。 文章开头提到了能完成溢出利用的前提条原创 2016-10-10 22:43:48 · 1272 阅读 · 0 评论 -
DWORD Shoot利用Crt库free函数
之前写过Win32运行库的DWORD Shoot,随着windows安全性检查的升级,简单的DWORD shoot并不能达到利用程序的目的。但是这种技术就被淘汰了吗?我个人觉得并不是这样,因为DWORD shoot技术本质上是钻了链表出链时不检查内存地址合法性的漏洞,因此只要在代码中找到有链表存在的影子就有利用的可能。C Programmer一般用Crt运行库提供的库函数malloc/free原创 2016-09-16 15:50:43 · 866 阅读 · 0 评论