New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 831098 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Dec 1
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Mac
Pri: 1
Type: Bug



Sign in to add a comment

CHECK failure: !in_navigate_to_pending_entry_ || delegate_->IsBeingDestroyed() in navigation_co

Project Member Reported by ClusterFuzz, Apr 10 2018

Issue description

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

Fuzzer: ochang_domfuzzer
Job Type: windows_asan_content_shell
Platform Id: windows

Crash Type: CHECK failure
Crash Address: 
Crash State:
  !in_navigate_to_pending_entry_ || delegate_->IsBeingDestroyed() in navigation_co
  content::NavigationControllerImpl::DiscardPendingEntry
  content::NavigatorImpl::DiscardPendingEntryIfNeeded
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=windows_asan_content_shell&range=531299:531319

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

Issue filed automatically.

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

Comment 1 by ClusterFuzz, Apr 10 2018

Components: Internals>Sandbox>SiteIsolation
Labels: Test-Predator-Auto-Components
Automatically applying components based on crash stacktrace and information from OWNERS files.

If this is incorrect, please apply the Test-Predator-Wrong-Components label.
Project Member

Comment 2 by ClusterFuzz, Apr 10 2018

Labels: Test-Predator-Auto-Owner
Owner: yzshen@chromium.org
Status: Assigned (was: Untriaged)
Automatically assigning owner based on suspected regression changelist https://chromium.googlesource.com/chromium/src/+/5d58446477738bdea980f343ba439719208e189e (Convert URLLoaderFactoryBundle to implement SharedURLLoaderFactory interface.).

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.

Comment 3 by creis@chromium.org, Apr 11 2018

Cc: creis@chromium.org clamy@chromium.org nasko@chromium.org
Components: -Internals>Sandbox>SiteIsolation UI>Browser>Navigation
Labels: Test-Predator-Wrong-CLs
Owner: est...@chromium.org
estark@: Can you help triage this?  This looks like it's due to your https://codereview.chromium.org/2909513002, which made a OnRequestFailed call from NavigationRequest::BeginNavigation due to CSP.

That's causing the pending NavigationEntry to be deleted while we're still inside NavigateToPendingEntry, which is an unavoidable use-after-free.  We have a CHECK in place to catch it, which it looks like Clusterfuzz found a repro for.

Thanks!

Comment 4 by creis@chromium.org, Apr 11 2018

(Oh, and typical fixes for this sort of issue have involved posting a task, though I haven't thought carefully about whether that would work in this case.)
Project Member

Comment 5 by ClusterFuzz, Apr 11 2018

Labels: OS-Linux
Project Member

Comment 6 by ClusterFuzz, Apr 12 2018

Labels: OS-Mac

Comment 7 by est...@chromium.org, Apr 17 2018

Oddly I can only reproduce this with --disable-web-security; otherwise the repro runs afoul of cross-origin checks whe trying to pushState on an error frame.

Posting a task doesn't work out of the box because it seems to run afoul of some other DCHECKS, but I don't fully understand why yet -- will continue investigating this week.

Also note that there's at least one other instance of this bug, presumably: https://cs.chromium.org/chromium/src/content/browser/frame_host/navigation_request.cc?sq=package:chromium&l=541

Comment 8 by est...@chromium.org, Apr 24 2018

Status: Started (was: Assigned)
https://chromium-review.googlesource.com/c/chromium/src/+/1023045
Project Member

Comment 9 by ClusterFuzz, May 17 2018

Labels: -Reproducible Unreproducible
ClusterFuzz testcase 4670172728918016 appears to be flaky, updating reproducibility label.
Project Member

Comment 10 by ClusterFuzz, Dec 1

ClusterFuzz has detected this issue as fixed in range 558997:558998.

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

Fuzzer: ochang_domfuzzer
Job Type: windows_asan_content_shell
Platform Id: windows

Crash Type: CHECK failure
Crash Address: 
Crash State:
  !in_navigate_to_pending_entry_ || delegate_->IsBeingDestroyed() in navigation_co
  content::NavigationControllerImpl::DiscardPendingEntry
  content::NavigatorImpl::DiscardPendingEntryIfNeeded
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=windows_asan_content_shell&range=531299:531319
Fixed: https://clusterfuzz.com/revisions?job=windows_asan_content_shell&range=558997:558998

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

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 11 by ClusterFuzz, Dec 1

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

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

Sign in to add a comment