首页
社区
课程
招聘
[原创]CVE-2010-3962漏洞分析
发表于: 2010-11-19 18:26 17787

[原创]CVE-2010-3962漏洞分析

2010-11-19 18:26
17787
<table style=position:absolute;clip:rect(0)>
[FONT=Times New Roman][FONT=Times New Roman].text:7E2C5D9D                                         ; [/FONT]
[FONT=Times New Roman].text:7E2C5D9D                 push    eax[/FONT]
[FONT=Times New Roman].text:7E2C5D9E                 lea     eax, [ebx+0Ch][/FONT]
[FONT=Times New Roman].text:7E2C5DA1                 push    eax[/FONT]
[FONT=Times New Roman].text:7E2C5DA2                 call    CDispContainer::New(CDispClient *,ulong)[/FONT]
[/FONT]
[FONT=Times New Roman][FONT=Times New Roman].text:7E2B5D2A[/FONT][FONT=宋体] [/FONT][FONT=Times New Roman]CDispContainer::New[/FONT]
[FONT=宋体]..........................................................[/FONT]
[FONT=宋体].text:7E291CF0    movzx   esi, ds:uchar const * const CDispNode::_extraSizeTable[ebx][/FONT]
[FONT=宋体].text:7E291CF7                 shl     esi, 2[/FONT]
[FONT=宋体].text:7E291CFA                 push    edi[/FONT]
[FONT=宋体].text:7E291CFB                 add     eax, esi[/FONT]
[FONT=宋体].text:7E291CFD                 push    eax             ; dwBytes[/FONT]
[FONT=宋体].text:7E291CFE                 call    _MemAllocClear(x)[/FONT]
[FONT=宋体].text:7E291D03                 mov     edi, eax[/FONT]
[FONT=宋体].text:7E291D05                 test    edi, edi[/FONT]
[FONT=宋体].text:7E291D07                 jz      short loc_7E291D17[/FONT]
[FONT=宋体].text:7E291D09                 add     edi, esi[/FONT]
[FONT=宋体].text:7E291D0B                 test    bl, 40h[/FONT]
[FONT=宋体].text:7E291D0E            mov     [edi+4], ebx <-------这里保存[/FONT][FONT=Times New Roman]CliprectInfo_size[/FONT][FONT=宋体]的大小[/FONT]
[/FONT]
[FONT=宋体][FONT=宋体].text:7E36B4C4 CDispNode::SetUserClip[/FONT]
[FONT=宋体]...............................[/FONT]
[FONT=宋体].text:7E36B54D                 mov     eax, [edi+4] [/FONT][FONT=宋体]<-------当这里为0时,虚函数表就被悲剧了.[/FONT]
[FONT=宋体].text:7E36B550                 and     eax, esi[/FONT]
[FONT=宋体].text:7E36B552       movzx   ecx, ds:uchar const * const CDispNode::_extraSizeTable[eax][/FONT]
[FONT=宋体].text:7E36B559                 mov     eax, edi[/FONT]
[FONT=宋体].text:7E36B55B                 shl     ecx, 2[/FONT]
[FONT=宋体].text:7E36B55E                 sub     eax, ecx[/FONT]
[FONT=宋体].text:7E36B560                 or      dword ptr [eax], 1[/FONT][FONT=宋体]   <-----------------------虚函数表被改了[/FONT]
[/FONT]
 
CHtmParse::ParseEof
[FONT=Times New Roman][FONT=Times New Roman]CHtmParse::ParseText[/FONT]
[FONT=Times New Roman]|[/FONT]
[FONT=Times New Roman]       CHtmlParseClass *phpc;[/FONT]
 
[FONT=Times New Roman]       phpc = HpcFromEtag(etag);[/FONT]
[FONT=Times New Roman]       if (phpc->_atagProhibitedContainers)[/FONT]
[FONT=Times New Roman]       {[/FONT]
[FONT=Times New Roman]           hr=THR(CloseAllContainers(phpc->_atagProhibitedContainers, [/FONT][FONT=Times New Roman]phpc->_atagBeginContainers));[/FONT]
[FONT=Times New Roman]           if (hr)[/FONT]
[FONT=Times New Roman]               goto Cleanup;[/FONT]
[FONT=Times New Roman]       }[/FONT]
 
[FONT=Times New Roman]       hr = THR(OpenContainer(etag));[/FONT]
[/FONT]
[FONT=Times New Roman][FONT=Times New Roman]CHtmParse::OpenContainer[/FONT]
[FONT=Times New Roman]|[/FONT]
 
[FONT=Times New Roman]此时etagItem=0x62表示ETAG_TC,这时将创建一个CTableCaption对象[/FONT]
[FONT=Times New Roman]hr = THR(CreateElement(etagItem, &pel, _pDoc, _pMarkup, TRUE, &_fDie));[/FONT]
[FONT=Times New Roman]CreateElement函数根据etagItem=0x62去索引hash表g_atagdesc,查表[/FONT][FONT=宋体]得[/FONT][FONT=Times New Roman]具体的对象的[/FONT][FONT=Times New Roman]CreateElement函数接着CTableCaption::CreateElement函数将被调用[/FONT]
 
[/FONT]
 
CHtmPos::Exec
CHtmPos::Notify
CTableCell:Notify(CTableCaption继承该类)
[FONT=Times New Roman][FONT=Times New Roman]CTableCell::EnterTree[/FONT]
[FONT=Times New Roman]|[/FONT]
 
[FONT=Times New Roman]hr = pTableLayout->AddCaption(pCaption);导致 pTableLayout对象中存在标题[/FONT]
 
 
[/FONT]

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 7
支持
分享
最新回复 (18)
雪    币: 380
活跃值: (101)
能力值: ( LV13,RANK:370 )
在线值:
发帖
回帖
粉丝
2
沙发是我的
2010-11-19 18:27
0
雪    币: 826
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
支持一下,看不懂的~
2010-11-19 19:00
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
mark
2010-11-19 19:00
0
雪    币: 2134
活跃值: (14)
能力值: (RANK:170 )
在线值:
发帖
回帖
粉丝
5
<html>  

<table style=position:absolute;clip:rect(0)>  

</html>
前些日子碰到这个了,支持
2010-11-20 01:12
0
雪    币: 134
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
支持一下~!
2010-11-20 09:19
0
雪    币: 78
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
太好了!太给力了!
2010-11-20 10:32
0
雪    币: 203
活跃值: (45)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
谢谢楼主的分析,呵呵。。。
2010-11-20 15:15
0
雪    币: 50
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
谢谢楼主的分析!
2010-11-20 15:46
0
雪    币: 386
活跃值: (46)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
10
精彩,收下了
2010-11-20 18:52
0
雪    币: 24
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
有源码就是好呀.....
2010-11-20 20:00
0
雪    币: 380
活跃值: (101)
能力值: ( LV13,RANK:370 )
在线值:
发帖
回帖
粉丝
12
有源码省不少事
2010-11-21 17:03
0
雪    币: 97
活跃值: (28)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
13
不知道楼主对于 网马中的JavaScript堆喷射是怎么通过漏洞起作用的 有么有研究?
2010-11-25 09:27
0
雪    币: 214
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
好东西收藏了!!!!!
2010-11-25 10:01
0
雪    币: 338
活跃值: (103)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
15
看不懂 苦恼
2010-12-2 09:35
0
雪    币: 3113
活跃值: (3669)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
真的挺高深的
2010-12-2 10:06
0
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
绝对支持一个!
2010-12-30 18:36
0
雪    币: 310
活跃值: (159)
能力值: ( LV12,RANK:200 )
在线值:
发帖
回帖
粉丝
18
调试需要配置环境吗?
2011-8-8 23:28
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
下载学习一下
2011-10-30 22:40
0
游客
登录 | 注册 方可回帖
返回
//