能力值:
( LV4,RANK:50 )
|
-
-
2 楼
不知道有谁有最新的核弹,给我分享一颗,我想祸害下人民群众
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
在Adobe Reader 8和9版本的核心AcroRd32.dll模块中,处理JBIG2Decode的图形嵌入对象,在计算复制地址时会出现溢出问题,导致程序崩溃。
http://www.milw0rm.com/exploits/8099
Adobe PDF检测流程
生成具有破坏格式的PDF演示文件如下(此演示文件只演示了造成漏洞的代码,没有攻击性)
其中,stream字段中的第5字节的第6位,在JBIG2的解析过程中用来说明是“大页”(a large page) ,其大小在后续四个字节给出,如图 41 42 43 44。
崩溃处代码
此段代码为Adobe Reader解析JBIG2的代码,其中先读取图像大小,然后进行解压缩操作,将解压后的二进制文件写入相应的内存地址。
由于计算地址时未检验 ,从调试中可以看到eax最初值为文件中指定的0x44434241,在计算eax+eax*4后,有计算ecx类的地址ecx+eax*4-14的位置,该位置超出了正常的内存。于是对计算出来的错误内存地址进行写操作,造成崩溃。
但是如果事先通过其他手段进行了Heap Spray(例如用Javascript对堆进行淹没攻击),则可以将文件解压后释放到目标内存中(示例中为”AAAA…”),其中,可以通过修改图上所示的 41 42 43 44 字段,指定溢出地址。
由此可以看出,只要将ShellCode以JBIG2格式进行压缩放入该stream中,就可以在解析的时候释放到指定的位置,然后配合Heap Spray技术,通过其他手段,将EIP跳转到ShellCode的位置去执行。
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
这个分析起来有一定困难,如果有那种可以直接弹出计算器的POC就好了
可以看到内存中有calc这个字符串,但是没有真正触发起来
不知道哪位高人有经验可以分享一下,谢谢!
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
我也看了一下该溢出,但是没有找到具体的利用方法
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
肯定是可以用的,只是技术限制,有高人可以讲解一下啊
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
在那条溢出的指令无法下断点,不知道是不是Adobe reader有反调试的功能?或者是版本问题?
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
我有样本..一运行我的EQ就傻了..还没来的急分析..
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
Adobe Reader的漏洞不知这些,有个漏洞,还可以直接过数字证书所限制的打印复制等功能,到版本10依然存在
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
不知道8楼的兄弟能把样本共享一下吗?可以放出来大家共同探讨一下嘛
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
加我QQ8030787 注明:看雪ID
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
我也需要一份,qq 110108743,预谢!
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
我忏悔..~原谅我吧.~
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
我有罪...............
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
[QUOTE=;]...[/QUOTE]
http://securitylabs.websense.com/content/Blogs/3311.aspx#
这有新的分析结果,上面的那个分析貌似有问题,
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
利用内存重写,可以把这个函数的返回地址覆盖掉,这样当函数返回的时候就能执行到我们的代码。不过应该是需要事先布置好堆中的内容,否则到add dword ptr [ecx+eax*4-14h],1 ds:0023:07d96648=????????这里的时候直接crash了,因为该地址还未被初始化。SECUNIA说有不需要事先heap spray的利用方法。不知道是怎么弄的。
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
有人具体做了么?可以写个文档介绍一下详细的分析过程么?非常期待!
|
能力值:
( LV2,RANK:10 )
|
-
-
18 楼
[QUOTE=shocker;592765]利用内存重写,可以把这个函数的返回地址覆盖掉,这样当函数返回的时候就能执行到我们的代码。不过应该是需要事先布置好堆中的内容,否则到add dword ptr [ecx+eax*4-14h],1 ds:0023:07d96648=????????这里的时候直接crash了,因为该地址还未被初始...[/QUOTE]
好像利用脚本申请大量堆地址,填写0d0d0d0d,中间那个地址没搞明白是什么,后面那shellcode好像也有点问题。
0d0d0d0d可以覆盖ebp,貌似返回后就可以跳转到shellcode,但是返回之前已经crash。
请高手指点下啊!
|
能力值:
( LV2,RANK:10 )
|
-
-
19 楼
我不是很明白,这个漏洞使用堆喷射是达到怎样的目的?是让超出正常内存范围的地址不被当作异常报错,还是通过它来找到事先作好的shellcode 呢?如果利用漏洞,代码是以什么方式存在的呢?因为这些是要写在pdf的stream流里的吧!是使用javascript还是java?是否需要jbig2的压缩?
|
能力值:
( LV2,RANK:10 )
|
-
-
20 楼
.........heap spray技术——利用原理
.........堆溢出——漏洞原理
|
能力值:
( LV4,RANK:50 )
|
-
-
21 楼
http://hi.baidu.com/x%5Fx%5Fo%5Fx%5Fx/blog/item/33be86f5325cc7e77709d773.html
哦。我的利用程序。
|
|
|