119电脑网

当前位置: 主页 > 病毒预报 >

Opera Web浏览器样式表属性缓冲区 存在溢出漏洞

时间:2013-09-12 00:09来源: 作者: 点击:
发布日期:2006-04-13更新日期:2006-04-13受影响系统:opera Software Opera = 8.52不受影响系统:Opera Software Opera 9.0Opera Software Opera 8。

发布日期:2006-04-13
更新日期:2006-04-13

受影响系统:

Opera Software Opera <= 8.52

不受影响系统:

Opera Software Opera 9.0
Opera Software Opera 8.54

描述:

BUGTRAQ  ID: 17513

Opera是一款流行的WEB浏览器,支持多种平台。

Opera实现上存在有符号型变量处理漏洞,远程攻击者可能利用此漏洞导致客户机上的Opera程序崩溃。

Opera在wcsncpy调用中存在有符号型变量比较错误,攻击者可以覆盖目标缓冲区后的大量内存,导致Opera崩溃。但很难利用这个漏洞执行任意代码,因为尽管拷贝了大量的内存,但只有很少的部分是可控的。

攻击者可以通过在样式表属性中指定超长的值来触发这个漏洞。以下是有漏洞函数的反汇编。请注意如果arg_length > 0x7FFFFFFF的话,就可以绕过在0x67B8CF0D的有符号型比较。

.text:67B8CEFE ; int __stdcall POC_CALL_TO_WCSNCPY_67B8CEFE(wchar_t *,int)
.text:67B8CEFE POC_CALL_TO_WCSNCPY_67B8CEFE proc near  ; CODE XREF:
sub_67B4DB72+9D6p
.text:67B8CEFE                                         ;
_POC_CALL_WSCNCPY_67B8AE6E+1B4p
.text:67B8CEFE
.text:67B8CEFE arg_pbuf_src= dword ptr  4
.text:67B8CEFE arg_length= dword ptr  8
.text:67B8CEFE
.text:67B8CEFE mov     eax, POC_pbuf_target
.text:67B8CF03 push    ebx
.text:67B8CF04 push    esi
.text:67B8CF05 push    edi
.text:67B8CF06 mov     edi, [esp+0Ch+arg_length]
.text:67B8CF0A mov     esi, [eax+40h]
.text:67B8CF0D cmp     edi, 4096
.text:67B8CF13 mov     ebx, ecx
.text:67B8CF15 jl      short loc_67B8CF1C              ; signedness error
.text:67B8CF17 mov     edi, 4095
.text:67B8CF1C
.text:67B8CF1C loc_67B8CF1C:                           ; CODE XREF:
POC_CALL_TO_WCSNCPY_67B8CEFE+17j
.text:67B8CF1C push    edi                             ; size_t
.text:67B8CF1D push    [esp+10h+arg_pbuf_src]          ; wchar_t *
.text:67B8CF21 push    esi                             ; wchar_t *
.text:67B8CF22 call    _wcsncpy
.text:67B8CF27 and     word ptr [esi+edi*2], 0
.text:67B8CF2C add     esp, 0Ch
.text:67B8CF2F mov     ecx, ebx
.text:67B8CF31 push    esi                             ; wchar_t *
.text:67B8CF32 call    sub_67B8CD10
.text:67B8CF37 test    ax, ax
.text:67B8CF3A jge     short loc_67B8CF48
.text:67B8CF3C mov     ecx, [ebx+5D0h]
.text:67B8CF42 call    sub_67B8C7BC
.text:67B8CF47 inc     eax
.text:67B8CF48
.text:67B8CF48 loc_67B8CF48:                           ; CODE XREF:
POC_CALL_TO_WCSNCPY_67B8CEFE+3Cj
.text:67B8CF48 pop     edi
.text:67B8CF49 pop     esi
.text:67B8CF4A pop     ebx
.text:67B8CF4B retn    8
.text:67B8CF4B POC_CALL_TO_WCSNCPY_67B8CEFE endp


尽管传送2GB的字符串看起来是不可能的,但由于在调用函数中的另一个漏洞,只需注入32k字符串就可扩展为很大的负值。

.text:67B8AF62 loc_67B8AF62:                           ; CODE XREF:
_POC_CALL_WSCNCPY_67B8AE6E+E2j
.text:67B8AF62                 movsx   eax, [ebp+var_length_ovfl] ; here
the error occurs: short int length is sign extended
.text:67B8AF62                                         ; to a long
integer. the result is a large negative value if length
.text:67B8AF62                                         ; is negative.
.text:67B8AF66                 jmp     short loc_67B8AF5D

厂商补丁:

目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载。

扩展阅读:新版迅雷5让Opera实现批量高速下载

大家都知道,opera被人称之为“最快的浏览器”,迅雷则被称为“最快的下载器”,而且它还支持批量下载。请一定要选中“安装多浏览器支持”项(如图1),接下来同样采用“一路回车法”完成安装。 图1 安装多浏览器支持是关键小提示 虽然迅雷支持在线升级,但经试难。

(责任编辑:admin)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
推荐内容