能力值:
( LV7,RANK:110 )
|
-
-
2 楼
|
能力值:
( LV13,RANK:600 )
|
-
-
3 楼
感谢分享~
|
能力值:
(RANK:350 )
|
-
-
4 楼
这段shellcode最近还很流行啊:)
|
能力值:
( LV12,RANK:530 )
|
-
-
5 楼
感谢分享
|
能力值:
( LV5,RANK:70 )
|
-
-
6 楼
谢谢分享
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
现在好像有CVE-2012-1856 听说这个比0158强大
|
能力值:
( LV12,RANK:1000 )
|
-
-
8 楼
这个问题的本质就在于sub_B中新建堆的数据是可控的,sub_A函数中的dwBytes也是可控的。
int __stdcall sub_A(int a1, BSTR bstrString)
{
.......
int v5; // [bp-14h]
SIZE_T dwBytes; //[bp-Ch]
int v7; // [bp-8h]
int v8; // [bp-4h]
v2 = bstrString;
result = sub_B((int)&v5, bstrString, 0xCu); (1)
if ( result >= 0 )
{
if ( v5 == 1784835907 && dwBytes >= 8 )
{
v4 = sub_B((int)&v7, v2, dwBytes); (2)
....
}
}
}
执行(1)复制12个字节,这样可以控制dwBytes, 执行(2)就可以把堆中指定大小的shellcode复制到堆栈.
|
能力值:
( LV12,RANK:280 )
|
-
-
9 楼
对栈没有必要下写入断点,那样会不断的中断。其实下一个记录断点就可以了
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
谢谢分享,资源拿走!
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
请教一下,sxn ‐c "r eip;dd 00121700 l1" sse ,这个指令里面的值是怎么来的?调试的时候不断的断下,F5了几百次了,依然还无法载入poc
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
在分析这个漏洞时有一个疑问,
为什么要申请堆空间,从样本拷贝数据到堆,然后再从堆中将数据拷贝到栈中进行溢出?直接从样本拷贝数据到栈上进行溢出不行吗
|
|
|