漏洞信息详情
联众世界游戏大厅GLItemCom.DLL ActiveX控件堆溢出漏洞
- CNNVD编号:CNNVD-200709-133
- 危害等级: 超危
- CVE编号: CVE-2007-4802
- 漏洞类型: 缓冲区溢出
- 发布时间: 2007-09-11
- 威胁类型: 远程
- 更新时间: 2007-09-12
- 厂 商: ourgame.com
- 漏洞来源: void void@ph4nt0m....
漏洞简介
联众世界游戏大厅是联众世界自主开发的一款集棋牌、休闲、对战于一体的游戏客户端。
联众世界游戏大厅所安装的GLItemCom.DLL ActiveX控件过于信任用户输入,未检测用户提供的字符串长度,导致对象虚函数表指针被覆盖,从而获得系统控制权。
IE首先创建obj_vuln对象,位置恰好在obj_now对象下:
03803034 /$ 56 PUSH ESI
03803035 |. 8BF1 MOV ESI,ECX
03803037 |. 6A 58 PUSH 58 ; 对象大小:58h,即88字节
03803039 |. 8366 10 00 AND DWORD PTR DS:[ESI+10],0
0380303D |. 8366 14 00 AND DWORD PTR DS:[ESI+14],0
03803041 |. 8366 18 00 AND DWORD PTR DS:[ESI+18],0
03803045 |. C706 C4048103 MOV DWORD PTR DS:[ESI],038104C4
0380304B |. E8 2C370000 CALL 0380677C ; 创建obj_vuln对象
03803050 |. 85C0 TEST EAX,EAX
03803052 |. 59 POP ECX
03803053 |. 74 0A JE SHORT 0380305F
03803055 |. 56 PUSH ESI
03803056 |. 8BC8 MOV ECX,EAX
03803058 |. E8 390D0000 CALL 03803D96 ; 初始化obj_vuln对象
0380305D |. EB 02 JMP SHORT 03803061
0380305F |> 33C0 XOR EAX,EAX
03803061 |> 6A 08 PUSH 8
03803063 |. 8946 08 MOV DWORD PTR DS:[ESI+8],EAX ; 保存
obj_vuln==>[ESI+8] 记住这个,后面要提到
然后进入SetInfo()流程:
03802F25 |> \56 PUSH ESI ; /EvilString <=== 嘿嘿~
03802F26 |. 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8] ; |
03802F29 |. FF75 0C PUSH DWORD PTR SS:[EBP+C] ; |Arg7
03802F2C |. 8D48 14 LEA ECX,DWORD PTR DS:[EAX+14] ; |
03802F2F |. FF75 20 PUSH DWORD PTR SS:[EBP+20] ; |Arg6
03802F32 |. FF75 1C PUSH DWORD PTR SS:[EBP+1C] ; |Arg5
03802F35 |. FF75 18 PUSH DWORD PTR SS:[EBP+18] ; |Arg4
03802F38 |. FF75 10 PUSH DWORD PTR SS:[EBP+10] ; |Arg3
03802F3B |. FF75 F8 PUSH DWORD PTR SS:[EBP-8] ; |Arg2
03802F3E |. FF75 F4 PUSH DWORD PTR SS:[EBP-C] ; |Arg1
03802F41 |. E8 7E010000 CALL 038030C4 ; \调用SetInfo()
F7跟进
跟进SetInfo(),会将EvilString填充到obj_now里面:
038030C4 /$ 55 PUSH EBP
038030C5 |. 8BEC MOV EBP,ESP
038030C7 |. 56 PUSH ESI
038030C8 |. 8BF1 MOV ESI,ECX
038030CA |. FF75 10 PUSH DWORD PTR SS:[EBP+10]
038030CD |. B9 90568103 MOV ECX,03815690
038030D2 |. FF75 0C PUSH DWORD PTR SS:[EBP+C]
038030D5 |. FF75 08 PUSH DWORD PTR SS:[EBP+8]
038030D8 |. E8 DB040000 CALL 038035B8
038030DD |. FF75 20 PUSH DWORD PTR SS:[EBP+20]
038030E0 |. 8D46 1C LEA EAX,DWORD PTR DS:[ESI+1C]
038030E3 |. 50 PUSH EAX
038030E4 |. E8 37350000 CALL 03806620
038030E9 |. FF75 24 PUSH DWORD PTR SS:[EBP+24] ; EvilString
038030EC |. 8D46 3C LEA EAX,DWORD PTR DS:[ESI+3C] ; obj_now+0x3C obj_new偏移60字节处
038030EF |. 50 PUSH EAX :
038030F0 |. E8 2B350000 CALL 03806620 ; EvilString复制到obj_now+0x3C <== 问题出在这里,没有检测EvilString的长度.
执行完SetInfo()后,看堆里的情况:
$ ==> 03823D80 038104C4 ?? <=== obj_now的开头
$+4 03823D84 03823D68 h=?
$+8 03823D88 03823DE0 ??
$+C 03823D8C 03823E48 H>?
$+10 03823D90 00000001 ...
$+14 03823D94 00000001 ...
$+18 03823D98 00000001 ...
$+1C 03823D9C 00000000 ... .
$+20 03823DA0 00000000 ... .
$+24 03823DA4 00000000 ... .
$+28 03823DA8 00000000 ... .
$+2C 03823DAC 00000000 ... .
$+30 03823DB0 00000000 ... .
$+34 03823DB4 00000000
漏洞公告
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://www.ourgame.com/
参考网址
来源: XF
名称: globallink-glitemflat-bo(36501)
链接:http://xforce.iss.net/xforce/xfdb/36501
来源: XF
名称: globallink-glitemcom-bo(36470)
链接:http://xforce.iss.net/xforce/xfdb/36470
来源: BID
名称: 25586
链接:http://www.securityfocus.com/bid/25586
来源: BID
名称: 25565
链接:http://www.securityfocus.com/bid/25565
来源: MILW0RM
名称: 4372
链接:http://www.milw0rm.com/exploits/4372
来源: MILW0RM
名称: 4366
链接:http://www.milw0rm.com/exploits/4366
来源: OSVDB
名称: 45887
链接:http://osvdb.org/45887
来源: OSVDB
名称: 45886
链接:http://osvdb.org/45886
受影响实体
- Ourgame.Com Globallink:2.7.0.8
补丁
暂无
![weinxin](http://zone.ci/zone_ci_images/zone.ci.png)
评论