New issue
Advanced search Search tips

Issue 906649 link

Starred by 3 users

Issue metadata

Status: Verified
Owner:
Closed: Nov 20
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 1
Type: Bug



Sign in to add a comment

Null-dereference READ in blink::HTMLFormElement::ConstructEntryList

Project Member Reported by ClusterFuzz, Nov 19

Issue description

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

Fuzzer: jsbell_serviceworker
Job Type: linux_ubsan_vptr_chrome
Platform Id: linux

Crash Type: Null-dereference READ
Crash Address: 0x000000000000
Crash State:
  blink::HTMLFormElement::ConstructEntryList
  blink::FormData::Create
  blink::V8FormData::constructorCallback
  
Sanitizer: undefined (UBSAN)

Regressed: https://clusterfuzz.com/revisions?job=linux_ubsan_vptr_chrome&range=609209:609210

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

Issue filed automatically.

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

Comment 1 by ClusterFuzz, Nov 19

Components: Blink>Forms
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, Nov 19

Labels: Test-Predator-Auto-Owner
Owner: tkent@chromium.org
Status: Assigned (was: Untriaged)
Automatically assigning owner based on suspected regression changelist https://chromium.googlesource.com/chromium/src/+/3efc758c50fd21bb3fc14dfc1878f3e6aa2e961f (formdata event: Implement 'in constructing entry list' flag.).

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 3 by bugdroid1@chromium.org, Nov 20

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

commit 4a1fe23372f80a344610b61a58618f9f5a75f7a8
Author: Kent Tamura <tkent@chromium.org>
Date: Tue Nov 20 06:26:42 2018

FormData: Fix a crash by passing null or non-HTMLFormElement instances to a FormData constructor

Add back nullptr check to FormData::Create(HTMLFormElement*).

This CL fixes a regression caused by crrev.com/609210.
According to standards, |new FormData(nullptr)| and |new
FormData("string")| should throw TypeErrors. However this CL applies the
behavior before crrev.com/609210.

Bug:  906649 
Change-Id: I78aa53559592ef0e14cc941175dc9f1b44342bb0
Reviewed-on: https://chromium-review.googlesource.com/c/1343414
Reviewed-by: Yoshifumi Inoue <yosin@chromium.org>
Commit-Queue: Kent Tamura <tkent@chromium.org>
Cr-Commit-Position: refs/heads/master@{#609614}
[add] https://crrev.com/4a1fe23372f80a344610b61a58618f9f5a75f7a8/third_party/WebKit/LayoutTests/external/wpt/xhr/formdata-expected.txt
[modify] https://crrev.com/4a1fe23372f80a344610b61a58618f9f5a75f7a8/third_party/WebKit/LayoutTests/external/wpt/xhr/formdata.htm
[modify] https://crrev.com/4a1fe23372f80a344610b61a58618f9f5a75f7a8/third_party/blink/renderer/core/html/forms/form_data.cc

Project Member

Comment 4 by ClusterFuzz, Nov 20

ClusterFuzz has detected this issue as fixed in range 609613:609614.

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

Fuzzer: jsbell_serviceworker
Job Type: linux_ubsan_vptr_chrome
Platform Id: linux

Crash Type: Null-dereference READ
Crash Address: 0x000000000000
Crash State:
  blink::HTMLFormElement::ConstructEntryList
  blink::FormData::Create
  blink::V8FormData::constructorCallback
  
Sanitizer: undefined (UBSAN)

Regressed: https://clusterfuzz.com/revisions?job=linux_ubsan_vptr_chrome&range=609209:609210
Fixed: https://clusterfuzz.com/revisions?job=linux_ubsan_vptr_chrome&range=609613:609614

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

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.
Status: Verified (was: Assigned)
Issue 907368 has been merged into this issue.

Sign in to add a comment