New issue
Advanced search Search tips

Issue 788046 link

Starred by 1 user

Issue metadata

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



Sign in to add a comment

Null-dereference READ in v8::Context::Enter

Project Member Reported by ClusterFuzz, Nov 23 2017

Issue description

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

Fuzzer: inferno_layout_test_unmodified
Job Type: linux_asan_chrome_mp
Platform Id: linux

Crash Type: Null-dereference READ
Crash Address: 0x000000000000
Crash State:
  v8::Context::Enter
  blink::V8MutationCallback::Invoke
  blink::V8MutationCallback::InvokeAndReportException
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=linux_asan_chrome_mp&range=518588:518590

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

Issue filed automatically.

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

Comment 1 by ClusterFuzz, Nov 23 2017

Components: Blink>DOM Internals>Core
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 23 2017

Labels: Test-Predator-Auto-Owner
Owner: yukishiino@chromium.org
Status: Assigned (was: Untriaged)
Automatically assigning owner based on suspected regression changelist https://chromium.googlesource.com/chromium/src/+/162b459debb5f100c038b2a3aee48ab95b709ea1 (v8binding: Makes callback functions return v8::Maybe.).

If this is incorrect, please remove the owner and apply the Test-Predator-Wrong-CLs label.
Project Member

Comment 3 by ClusterFuzz, Nov 24 2017

Labels: OS-Windows
Status: Started (was: Assigned)
Components: -Blink>DOM -Internals>Core Blink>Bindings
Project Member

Comment 6 by ClusterFuzz, Nov 25 2017

Labels: OS-Mac
Project Member

Comment 7 by bugdroid1@chromium.org, Nov 25 2017

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

commit 07fbfbeb17a03c6872562bd8da226cacf023aafd
Author: Yuki Shiino <yukishiino@chromium.org>
Date: Sat Nov 25 05:06:27 2017

v8binding: Uses the safe v8::Context in callback functions.

It turned out that ScriptState::GetContext will be gone before
the destruction of the ScriptState.  This patch uses the safest
v8::Context when throwing an exception.

Bug:  788046 , 788281
Change-Id: Ibdee48d77ebdc1455cb76e92cc276c1b3f8a6780
Reviewed-on: https://chromium-review.googlesource.com/788724
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
Commit-Queue: Yuki Shiino <yukishiino@chromium.org>
Cr-Commit-Position: refs/heads/master@{#519178}
[modify] https://crrev.com/07fbfbeb17a03c6872562bd8da226cacf023aafd/third_party/WebKit/Source/bindings/templates/callback_function.cpp.tmpl
[modify] https://crrev.com/07fbfbeb17a03c6872562bd8da226cacf023aafd/third_party/WebKit/Source/bindings/tests/results/core/v8_any_callback_function_optional_any_arg.cc
[modify] https://crrev.com/07fbfbeb17a03c6872562bd8da226cacf023aafd/third_party/WebKit/Source/bindings/tests/results/core/v8_long_callback_function.cc
[modify] https://crrev.com/07fbfbeb17a03c6872562bd8da226cacf023aafd/third_party/WebKit/Source/bindings/tests/results/core/v8_string_sequence_callback_function_long_sequence_arg.cc
[modify] https://crrev.com/07fbfbeb17a03c6872562bd8da226cacf023aafd/third_party/WebKit/Source/bindings/tests/results/core/v8_void_callback_function.cc
[modify] https://crrev.com/07fbfbeb17a03c6872562bd8da226cacf023aafd/third_party/WebKit/Source/bindings/tests/results/core/v8_void_callback_function_dictionary_arg.cc
[modify] https://crrev.com/07fbfbeb17a03c6872562bd8da226cacf023aafd/third_party/WebKit/Source/bindings/tests/results/core/v8_void_callback_function_enum_arg.cc
[modify] https://crrev.com/07fbfbeb17a03c6872562bd8da226cacf023aafd/third_party/WebKit/Source/bindings/tests/results/core/v8_void_callback_function_interface_arg.cc
[modify] https://crrev.com/07fbfbeb17a03c6872562bd8da226cacf023aafd/third_party/WebKit/Source/bindings/tests/results/core/v8_void_callback_function_test_interface_sequence_arg.cc
[modify] https://crrev.com/07fbfbeb17a03c6872562bd8da226cacf023aafd/third_party/WebKit/Source/bindings/tests/results/core/v8_void_callback_function_typedef.cc
[modify] https://crrev.com/07fbfbeb17a03c6872562bd8da226cacf023aafd/third_party/WebKit/Source/bindings/tests/results/modules/v8_void_callback_function_modules.cc

Project Member

Comment 8 by ClusterFuzz, Nov 25 2017

ClusterFuzz has detected this issue as fixed in range 519177:519178.

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

Fuzzer: inferno_layout_test_unmodified
Job Type: linux_asan_chrome_mp
Platform Id: linux

Crash Type: Null-dereference READ
Crash Address: 0x000000000000
Crash State:
  v8::Context::Enter
  blink::V8MutationCallback::Invoke
  blink::V8MutationCallback::InvokeAndReportException
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=linux_asan_chrome_mp&range=518588:518590
Fixed: https://clusterfuzz.com/revisions?job=linux_asan_chrome_mp&range=519177:519178

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

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 9 by ClusterFuzz, Nov 25 2017

Labels: ClusterFuzz-Verified
Status: Verified (was: Started)
ClusterFuzz testcase 4746846223466496 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