New issue
Advanced search Search tips

Issue 806151 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Jan 2018
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 1
Type: Bug-Security



Sign in to add a comment

Heap-use-after-free in blink::LayoutObject::DestroyAndCleanupAnonymousWrappers

Project Member Reported by ClusterFuzz, Jan 26 2018

Issue description

Detailed report: https://clusterfuzz.com/testcase?key=5736549850021888

Fuzzer: inferno_twister
Job Type: linux_asan_chrome_media
Platform Id: linux

Crash Type: Heap-use-after-free READ 8
Crash Address: 0x61100002e480
Crash State:
  blink::LayoutObject::DestroyAndCleanupAnonymousWrappers
  blink::Node::DetachLayoutTree
  blink::ContainerNode::DetachLayoutTree
  
Sanitizer: address (ASAN)

Recommended Security Severity: High

Regressed: https://clusterfuzz.com/revisions?job=linux_asan_chrome_media&range=526970:526971

Reproducer Testcase: https://clusterfuzz.com/download?testcase_id=5736549850021888

Issue filed automatically.

See https://github.com/google/clusterfuzz-tools for more information.
 
Project Member

Comment 1 by ClusterFuzz, Jan 26 2018

Labels: Test-Predator-Auto-Owner
Owner: futhark@chromium.org
Status: Assigned (was: Untriaged)
Automatically assigning owner based on suspected regression changelist https://chromium.googlesource.com/chromium/src/+/27c0ee55811678e4896cf0a07f8c4728bd7a58f2 (Enable support for display:contents.).

If this is incorrect, please let us know why and apply the Test-Predator-Wrong-CLs label. If you aren't the correct owner for this issue, please unassign yourself as soon as possible so it can be re-triaged.
Project Member

Comment 2 by sheriffbot@chromium.org, Jan 26 2018

Labels: M-65
Project Member

Comment 3 by sheriffbot@chromium.org, Jan 26 2018

Labels: ReleaseBlock-Stable
This is a serious security regression. If you are not able to fix this quickly, please revert the change that introduced it.

If this doesn't affect a release branch, or has not been properly classified for severity, please update the Security_Impact or Security_Severity labels, and remove the ReleaseBlock label. To disable this altogether, apply ReleaseBlock-NA.

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

Comment 4 by sheriffbot@chromium.org, Jan 26 2018

Labels: Pri-1

Comment 5 by mea...@chromium.org, Jan 26 2018

Components: Blink>Layout
Status: Started (was: Assigned)
Project Member

Comment 7 by sheriffbot@chromium.org, Jan 27 2018

Labels: -Security_Impact-Head Security_Impact-Beta
Project Member

Comment 9 by bugdroid1@chromium.org, Jan 31 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/277af9187ad3574d0946f08de078e86971f54fee

commit 277af9187ad3574d0946f08de078e86971f54fee
Author: Rune Lillesveen <futhark@chromium.org>
Date: Wed Jan 31 22:22:09 2018

Do not skip out-of-flow boxes merging anonymous flex items.

A misread of the spec made us skip out-of-flow boxes merging anonymous
flex items. Only merge anonymous flex items which are truly box
siblings.

Adjusted the wpt tests accordingly. Fwiw, Firefox nightly now passes
all of wpt/css/css-flexbox/anonymous-*

Bug:  788379 ,  806151 
Change-Id: I124740e5d2150becdcc03ded26773a69607e0bbb
Reviewed-on: https://chromium-review.googlesource.com/895283
Reviewed-by: Christian Biesinger <cbiesinger@chromium.org>
Commit-Queue: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/master@{#533440}
[modify] https://crrev.com/277af9187ad3574d0946f08de078e86971f54fee/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/277af9187ad3574d0946f08de078e86971f54fee/third_party/WebKit/LayoutTests/external/wpt/css/css-flexbox/anonymous-flex-item-004.html
[modify] https://crrev.com/277af9187ad3574d0946f08de078e86971f54fee/third_party/WebKit/LayoutTests/external/wpt/css/css-flexbox/anonymous-flex-item-005.html
[modify] https://crrev.com/277af9187ad3574d0946f08de078e86971f54fee/third_party/WebKit/LayoutTests/external/wpt/css/css-flexbox/anonymous-flex-item-006.html
[add] https://crrev.com/277af9187ad3574d0946f08de078e86971f54fee/third_party/WebKit/LayoutTests/external/wpt/css/css-flexbox/anonymous-flex-item-split-ref.html
[modify] https://crrev.com/277af9187ad3574d0946f08de078e86971f54fee/third_party/WebKit/Source/core/layout/LayoutFlexibleBox.cpp

Status: Fixed (was: Started)
Labels: Merge-Request-65
Project Member

Comment 12 by ClusterFuzz, Feb 1 2018

ClusterFuzz has detected this issue as fixed in range 533439:533446.

Detailed report: https://clusterfuzz.com/testcase?key=5736549850021888

Fuzzer: inferno_twister
Job Type: linux_asan_chrome_media
Platform Id: linux

Crash Type: Heap-use-after-free READ 8
Crash Address: 0x61100002e480
Crash State:
  blink::LayoutObject::DestroyAndCleanupAnonymousWrappers
  blink::Node::DetachLayoutTree
  blink::ContainerNode::DetachLayoutTree
  
Sanitizer: address (ASAN)

Recommended Security Severity: High

Regressed: https://clusterfuzz.com/revisions?job=linux_asan_chrome_media&range=526970:526971
Fixed: https://clusterfuzz.com/revisions?job=linux_asan_chrome_media&range=533439:533446

Reproducer Testcase: https://clusterfuzz.com/download?testcase_id=5736549850021888

See https://github.com/google/clusterfuzz-tools for more information.

If you suspect that the result above is incorrect, try re-doing that job on the test case report page.
Project Member

Comment 13 by ClusterFuzz, Feb 1 2018

Labels: ClusterFuzz-Verified
Status: Verified (was: Fixed)
ClusterFuzz testcase 5736549850021888 is verified as fixed, so closing issue as verified.

If this is incorrect, please add ClusterFuzz-Wrong label and re-open the issue.
Project Member

Comment 14 by sheriffbot@chromium.org, Feb 1 2018

Labels: -Merge-Request-65 Hotlist-Merge-Approved Merge-Approved-65
Your change meets the bar and is auto-approved for M65. Please go ahead and merge the CL to branch 3325 manually. Please contact milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), bhthompson@(ChromeOS), govind@(Desktop)

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

Comment 15 by bugdroid1@chromium.org, Feb 1 2018

Labels: -merge-approved-65 merge-merged-3325
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4fc019b14d169e2675b86d801337d493aba8bd63

commit 4fc019b14d169e2675b86d801337d493aba8bd63
Author: Rune Lillesveen <futhark@chromium.org>
Date: Thu Feb 01 23:38:01 2018

Do not skip out-of-flow boxes merging anonymous flex items.

A misread of the spec made us skip out-of-flow boxes merging anonymous
flex items. Only merge anonymous flex items which are truly box
siblings.

Adjusted the wpt tests accordingly. Fwiw, Firefox nightly now passes
all of wpt/css/css-flexbox/anonymous-*

TBR=cbiesinger@chromium.org

Bug:  788379 ,  806151 
Change-Id: I124740e5d2150becdcc03ded26773a69607e0bbb
Reviewed-on: https://chromium-review.googlesource.com/895283
Reviewed-by: Christian Biesinger <cbiesinger@chromium.org>
Commit-Queue: Rune Lillesveen <futhark@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#533440}(cherry picked from commit 277af9187ad3574d0946f08de078e86971f54fee)
Reviewed-on: https://chromium-review.googlesource.com/898413
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Cr-Commit-Position: refs/branch-heads/3325@{#249}
Cr-Branched-From: bc084a8b5afa3744a74927344e304c02ae54189f-refs/heads/master@{#530369}
[modify] https://crrev.com/4fc019b14d169e2675b86d801337d493aba8bd63/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/4fc019b14d169e2675b86d801337d493aba8bd63/third_party/WebKit/LayoutTests/external/wpt/css/css-flexbox/anonymous-flex-item-004.html
[modify] https://crrev.com/4fc019b14d169e2675b86d801337d493aba8bd63/third_party/WebKit/LayoutTests/external/wpt/css/css-flexbox/anonymous-flex-item-005.html
[modify] https://crrev.com/4fc019b14d169e2675b86d801337d493aba8bd63/third_party/WebKit/LayoutTests/external/wpt/css/css-flexbox/anonymous-flex-item-006.html
[add] https://crrev.com/4fc019b14d169e2675b86d801337d493aba8bd63/third_party/WebKit/LayoutTests/external/wpt/css/css-flexbox/anonymous-flex-item-split-ref.html
[modify] https://crrev.com/4fc019b14d169e2675b86d801337d493aba8bd63/third_party/WebKit/Source/core/layout/LayoutFlexibleBox.cpp

Project Member

Comment 16 by sheriffbot@chromium.org, Feb 8 2018

Labels: -Restrict-View-SecurityTeam Restrict-View-SecurityNotify
Labels: -ReleaseBlock-Stable
Project Member

Comment 18 by sheriffbot@chromium.org, Mar 27 2018

Labels: -Security_Impact-Beta Security_Impact-Stable
Project Member

Comment 19 by sheriffbot@chromium.org, May 10 2018

Labels: -Restrict-View-SecurityNotify allpublic
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

Sign in to add a comment