exploit the possibilities
Home Files News &[SERVICES_TAB]About Contact Add New

Microsoft Internet Explorer 9 MSHTML CDispNode::InsertSiblingNode Use-After-Free

Microsoft Internet Explorer 9 MSHTML CDispNode::InsertSiblingNode Use-After-Free
Posted Dec 8, 2016
Authored by SkyLined

Microsoft Internet Explorer version 9 suffers from an MSHTML CDispNode::InsertSiblingNode use-after-free vulnerability.

tags | exploit
advisories | CVE-2013-1306
SHA-256 | 391989ad1173c144a4f9597886435a16e0b65b6502cd7fd4d5d45f1b77eada54

Microsoft Internet Explorer 9 MSHTML CDispNode::InsertSiblingNode Use-After-Free

Change Mirror Download
Since November I have been releasing details on all vulnerabilities I
found that I have not released before. This is the twenty-eighth entry
in the series. This information is available in more detail on my blog
at http://blog.skylined.nl/20161208001.html. There you can find a repro
that triggered this issue in addition to the information below.

Today's release is again not very interesting, because it also was one
of the first bugs I found and reported back in 2012, before I had
developed the tools and skills to properly analyze MSIE bugs. This
report is therefore very scarce in information. I did get some more
details from EIP about the root cause, which I've included.

If you find this information 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 http://twitter.com/berendjanwever for daily browser bugs.

MSIE 9 MSHTML CDispNode::InsertSiblingNode use-after-free
=========================================================
(MS13-037, CVE-2013-1306)

Synopsis
--------
A specially crafted web-page can trigger a memory corruption
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. JavaScript does not appear to be required for an
attacker to triggering the vulnerable code path.

Details
-------
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. The EIP
provided me with some details of their analysis, which I'll paraphrase
here: It is a use-after-free vulnerability where the span object in the
frame.html file is reused after being freed. It appears to be impossible
to reallocate the freed memory before it is reused. Part of the freed
memory is overwritten when it is freed because a WORD `FreeEntryOffset`
value is stored at offset 0. This value is then used as part of a
pointer to a vftable in order to call a method. This pointer now consist
of the upper 16-bits of the old vftable and the lower 16-bits contain
the `FreeEntryOffset` value. Exploitation is near impossible without a
way to have more control over this pointer in the freed memory block.
ZDI also did a more thorough analysis and [provide very similar details
in their advisory at
http://www.zerodayinitiative.com/advisories/ZDI-13-082/

Time-line
---------
* 27 September 2012: This vulnerability was found through fuzzing.
* 3 October 2012: This vulnerability was submitted to EIP.
* 11 October 2012: This vulnerability was rejected by EIP.
* 2 November 2012: This vulnerability was submitted to ZDI.
* 19 November 2012: This vulnerability was acquired by ZDI.
* 22 January 2013: This vulnerability was disclosed to Microsoft by ZDI.
* 29 May 2013: Microsoft addresses this vulnerability in MS13-037.
* 8 December 2016: Details of this vulnerability are released.

Cheers,

SkyLined

Repro.html

<html>
<body onload="location.reload();">
<iframe src="Frame.html"></iframe>
</body>
</html>


Frame.html

<!doctype html>
<html>
<head>
<style type="text/css">
.x{
display:table-caption;
}
.x:first-line{
text-transform:uppercase;
}
</style>
</head>
<body>
<a>
<span class="x">
<a>
</a>
</span>
</a>
</body>
</html>

Login or Register to add favorites

File Archive:

August 2022

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Aug 1st
    20 Files
  • 2
    Aug 2nd
    4 Files
  • 3
    Aug 3rd
    6 Files
  • 4
    Aug 4th
    55 Files
  • 5
    Aug 5th
    16 Files
  • 6
    Aug 6th
    0 Files
  • 7
    Aug 7th
    0 Files
  • 8
    Aug 8th
    13 Files
  • 9
    Aug 9th
    13 Files
  • 10
    Aug 10th
    34 Files
  • 11
    Aug 11th
    16 Files
  • 12
    Aug 12th
    5 Files
  • 13
    Aug 13th
    0 Files
  • 14
    Aug 14th
    0 Files
  • 15
    Aug 15th
    25 Files
  • 16
    Aug 16th
    3 Files
  • 17
    Aug 17th
    6 Files
  • 18
    Aug 18th
    0 Files
  • 19
    Aug 19th
    0 Files
  • 20
    Aug 20th
    0 Files
  • 21
    Aug 21st
    0 Files
  • 22
    Aug 22nd
    0 Files
  • 23
    Aug 23rd
    0 Files
  • 24
    Aug 24th
    0 Files
  • 25
    Aug 25th
    0 Files
  • 26
    Aug 26th
    0 Files
  • 27
    Aug 27th
    0 Files
  • 28
    Aug 28th
    0 Files
  • 29
    Aug 29th
    0 Files
  • 30
    Aug 30th
    0 Files
  • 31
    Aug 31st
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2022 Packet Storm. All rights reserved.

Hosting By
Rokasec
close