New issue
Advanced search Search tips

Issue 592343 link

Starred by 0 users

Issue metadata

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



Sign in to add a comment

entry->to() + 1 > current.from() in src/regexp/jsregexp.cc

Project Member Reported by ClusterFuzz, Mar 7 2016

Issue description

Detailed report: https://cluster-fuzz.appspot.com/testcase?key=6272139516182528

Fuzzer: mbarbella_js_mutation
Job Type: linux_asan_d8_dbg
Platform Id: linux

Crash Type: CHECK failure
Crash Address: 
Crash State:
  entry->to() + 1 > current.from() in src/regexp/jsregexp.cc
  
Regressed: V8: r33926:33927

Minimized Testcase (0.23 Kb):
Download: https://cluster-fuzz.appspot.com/download/AMIfv94-fm1FSCoXkRmrLJt9O3ZOS5SzZhYvFpV6oVmn1I36XXJeeZN4T6eWLPsJTBCyGeZgd65sBtwvfyPqACDj-TsBpnOdM39nVL3uMLhntAgQj-Kj1APRvMugX9RBYgHLBsoiEGdcNYWUQUdYFReCEUjuEBv-mw
function __f_6(expectation, regexp, subject) {
 regexp.exec(subject);
}
function __f_7(expectation, regexp_source, subject) {
  __f_6(expectation, new RegExp(regexp_source, "u"), subject);
}
__f_7(null, "[^\u{1}-\u{65535}]", "\u{12358}");


Filer: machenbach

See https://dev.chromium.org/Home/chromium-security/bugs/reproducing-clusterfuzz-bugs for more information.
 
Components: Blink>JavaScript>Clusterfuzz
Owner: yangguo@chromium.org
Status: Assigned (was: Available)
PTAL
Cc: -machenb...@chromium.org -ishell@chromium.org -mstarzinger@chromium.org hablich@chromium.org
This is an off-by-one error in CharacterRange::Negate. Fix incoming.

This will need to be merged to M50.
Labels: Merge-Request-50
Labels: -Merge-Request-50 Merge-TBD-5.0
Project Member

Comment 7 by ClusterFuzz, Mar 7 2016

ClusterFuzz has detected this issue as fixed in range 34527:34528.

Detailed report: https://cluster-fuzz.appspot.com/testcase?key=6272139516182528

Fuzzer: mbarbella_js_mutation
Job Type: linux_asan_d8_dbg
Platform Id: linux

Crash Type: CHECK failure
Crash Address: 
Crash State:
  entry->to() + 1 > current.from() in src/regexp/jsregexp.cc
  
Regressed: V8: r33926:33927
Fixed: V8: r34527:34528

Minimized Testcase (0.23 Kb):
Download: https://cluster-fuzz.appspot.com/download/AMIfv94-fm1FSCoXkRmrLJt9O3ZOS5SzZhYvFpV6oVmn1I36XXJeeZN4T6eWLPsJTBCyGeZgd65sBtwvfyPqACDj-TsBpnOdM39nVL3uMLhntAgQj-Kj1APRvMugX9RBYgHLBsoiEGdcNYWUQUdYFReCEUjuEBv-mw
function __f_6(expectation, regexp, subject) {
 regexp.exec(subject);
}
function __f_7(expectation, regexp_source, subject) {
  __f_6(expectation, new RegExp(regexp_source, "u"), subject);
}
__f_7(null, "[^\u{1}-\u{65535}]", "\u{12358}");


See https://dev.chromium.org/Home/chromium-security/bugs/reproducing-clusterfuzz-bugs for more information.

If you suspect that the result above is incorrect, try re-doing that job on the test case report page.
Michael, when can I merge this to V8 5.0?

Comment 9 by habl...@google.com, Mar 11 2016

Labels: -Merge-TBD-5.0 Merge-Approved-5.0
Project Member

Comment 10 by bugdroid1@chromium.org, Mar 14 2016

Labels: merge-merged-5.0
The following revision refers to this bug:
  https://chromium.googlesource.com/v8/v8.git/+/c8a0cf00a399184ec1b51140a7a241fa4d2ad13a

commit c8a0cf00a399184ec1b51140a7a241fa4d2ad13a
Author: Yang Guo <yangguo@chromium.org>
Date: Mon Mar 14 10:07:33 2016

Version 5.0.71.17 (cherry-pick)

Merged f9d7c711afe0389e9c6c48f6653312017109cb6f
Merged 2947b2fa6fcebb349f66818b15b063a32ef71b05
Merged d1f68f776eafa62d4bd1cc3465d18c2e47473381

[regexp] Fix off-by-one in CharacterRange::Negate.

Fix compile error on arm.

[regexp] fix bogus assertion in CharacterRange constructor.

BUG= chromium:592343 , chromium:593282 
LOG=N
TBR=hablich@chromium.org

Review URL: https://codereview.chromium.org/1801573002 .

Cr-Commit-Position: refs/branch-heads/5.0@{#23}
Cr-Branched-From: ad16e6c2cbd2c6b0f2e8ff944ac245561c682ac2-refs/heads/5.0.71@{#1}
Cr-Branched-From: bd9df50d75125ee2ad37b3d92c8f50f0a8b5f030-refs/heads/master@{#34215}

[modify] https://crrev.com/c8a0cf00a399184ec1b51140a7a241fa4d2ad13a/include/v8-version.h
[modify] https://crrev.com/c8a0cf00a399184ec1b51140a7a241fa4d2ad13a/src/regexp/jsregexp.cc
[modify] https://crrev.com/c8a0cf00a399184ec1b51140a7a241fa4d2ad13a/src/regexp/jsregexp.h
[modify] https://crrev.com/c8a0cf00a399184ec1b51140a7a241fa4d2ad13a/src/regexp/regexp-ast.h
[modify] https://crrev.com/c8a0cf00a399184ec1b51140a7a241fa4d2ad13a/test/cctest/test-regexp.cc
[add] https://crrev.com/c8a0cf00a399184ec1b51140a7a241fa4d2ad13a/test/mjsunit/regress/regress-crbug-592343.js
[add] https://crrev.com/c8a0cf00a399184ec1b51140a7a241fa4d2ad13a/test/mjsunit/regress/regress-crbug-593282.js

Components: Blink>JavaScript
Labels: -cr-blink-javascript
Remove legacy label cr-blink-javascript.
Labels: -Merge-Approved-5.0
Status: Fixed (was: Assigned)
Project Member

Comment 14 by sheriffbot@chromium.org, Nov 22 2016

Labels: -Restrict-View-EditIssue
Removing EditIssue view restrictions from ClusterFuzz filed bugs. If you believe that this issue should still be restricted, please reapply the label.

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

Sign in to add a comment