New issue
Advanced search Search tips

Issue 749949 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Aug 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 1
Type: Bug



Sign in to add a comment

Heap-use-after-free in test_runner::SpellCheckClient::RequestCheckingOfText

Project Member Reported by ClusterFuzz, Jul 28 2017

Issue description

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

Fuzzer: ochang_domfuzzer
Job Type: linux_asan_content_shell_drt
Platform Id: linux

Crash Type: Heap-use-after-free READ 8
Crash Address: 0x6030001b78d0
Crash State:
  test_runner::SpellCheckClient::RequestCheckingOfText
  blink::TextCheckerClientImpl::RequestCheckingOfString
  blink::HotModeSpellCheckRequester::CheckSpellingAt
  
Sanitizer: address (ASAN)

Recommended Security Severity: High

Regressed: https://clusterfuzz.com/revisions?job=linux_asan_content_shell_drt&range=489897:489985

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


Issue filed automatically.

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

Comment 1 by sheriffbot@chromium.org, Jul 28 2017

Labels: M-60
Project Member

Comment 2 by sheriffbot@chromium.org, Jul 28 2017

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 3 by sheriffbot@chromium.org, Jul 28 2017

Labels: Pri-1

Comment 4 by awhalley@google.com, Jul 28 2017

Labels: -M-60 M-62

Comment 5 by vakh@chromium.org, Jul 31 2017

Components: Blink>Editing>Spellcheck UI>Browser>Language>Spellcheck
Owner: xiaoche...@chromium.org
Status: Assigned (was: Untriaged)
Labels: -Type-Bug-Security -Restrict-View-SecurityTeam -Security_Severity-High -Security_Impact-Beta -ReleaseBlock-Stable Type-Bug
This is not a security bug because the UAF is in testing code.

Not a regression either. The bug exists since the introduction of the relevant test framework.
Project Member

Comment 7 by bugdroid1@chromium.org, Aug 1 2017

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

commit 6c9464a6ea620209fc6ce23abc97ddc270a0dc02
Author: Xiaocheng Hu <xiaochengh@chromium.org>
Date: Tue Aug 01 02:40:28 2017

Fix a raw pointer use-after-free in test runner

This patch clears the |last_requested_text_checking_completion_| raw
pointer in test runner's mock spellchecker after calling
DidCancelCheckingText() (which deletes itself), so that it won't be
reused after free via the RequestResolved() callback.

Bug:  749949 
Change-Id: Id4f62ad4be7f94e65259fae0125223d7599e7257
Reviewed-on: https://chromium-review.googlesource.com/594837
Reviewed-by: Kent Tamura <tkent@chromium.org>
Commit-Queue: Xiaocheng Hu <xiaochengh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#490839}
[modify] https://crrev.com/6c9464a6ea620209fc6ce23abc97ddc270a0dc02/content/shell/test_runner/spell_check_client.cc

Status: Fixed (was: Assigned)

Sign in to add a comment