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

Issue 763293 link

Starred by 1 user

Issue metadata

Status: Duplicate
Merged: issue v8:287
Owner:
Closed: Oct 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug



Sign in to add a comment

Timeout in v8_regexp_parser_fuzzer

Project Member Reported by ClusterFuzz, Sep 8 2017

Issue description

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

Fuzzer: libFuzzer_v8_regexp_parser_fuzzer
Job Type: libfuzzer_chrome_asan
Platform Id: linux

Crash Type: Timeout (exceeds 25 secs)
Crash Address: 
Crash State:
  v8_regexp_parser_fuzzer
  
Sanitizer: address (ASAN)

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

Issue filed automatically.

See https://chromium.googlesource.com/chromium/src/+/master/testing/libfuzzer/reproducing.md for more information.

Note: This crash might not be reproducible with the provided testcase. That said, for the past 14 days we've been seeing this crash frequently. If you are unable to reproduce this, please try a speculative fix based on the crash stacktrace in the report. The fix can be verified by looking at the crash statistics in the report, a day after the fix is deployed. We will auto-close the bug if the crash is not seen for 14 days.
 
Cc: msrchandra@chromium.org
Components: Blink>JavaScript
Labels: Test-Predator-Correct-CLs
Owner: jgruber@chromium.org
Status: Assigned (was: Untriaged)
Assigning to concern owner from Predator results --
Regression information is not available. The result is the blame information. 

Author: jochen
Project: chromium-v8
Changelist: https://chromium.googlesource.com/v8/v8.git/+/c7aace4d43603cc03d90277e7bcf3cc538af1990
Time: Mon Nov 23 08:09:34 2015
The CL last changed line 288 of file regexp-macro-assembler.cc, which is stack frame 3. 

Author: lrn@chromium.org
Project: chromium-v8
Changelist: https://chromium.googlesource.com/v8/v8.git/+/4254388c1408551d77644b3c4739b08d695ff68f
Time: Fri Aug 14 11:24:32 2009
The CL last changed line 262 of file regexp-macro-assembler.cc, which is stack frame 4. 

Author: lrn@chromium.org
Project: chromium-v8
Changelist: https://chromium.googlesource.com/v8/v8.git/+/4db15f123582467f31d56c722a2bcddf04d26ede
Time: Fri Mar 19 12:01:17 2010
The CL last changed line 449 of file jsregexp.cc, which is stack frame 5. 

Author: yangguo@chromium.org
Project: chromium-v8
Changelist: https://chromium.googlesource.com/v8/v8.git/+/7cbca775eeb859ac71e0187846da8cefd31290f6
Time: Tue Aug 28 09:37:41 2012
The CL last changed line 542 of file jsregexp.cc, which is stack frame 6. 

Author: jgruber
Project: chromium-v8
Changelist: https://chromium.googlesource.com/v8/v8.git/+/3dbc04f72fe0895d8b3e51f4767c0e9b89054399
Time: Mon Aug 28 07:15:56 2017
The CL last changed line 22 of file regexp.cc, which is stack frame 7. 

Author: ahaas
Project: chromium-v8
Changelist: https://chromium.googlesource.com/v8/v8.git/+/2ba24a71b6e86b6272f2eccb37694b2b56a1219c
Time: Tue Nov 22 12:59:11 2016
The CL last changed line 85 of file regexp.cc, which is stack frame 8.

Suspecting Commit#
https://chromium.googlesource.com/v8/v8.git/+/3dbc04f72fe0895d8b3e51f4767c0e9b89054399

@jgruber -- Could you please look into the issue, kindly re-assign if it has nothing to do with your changes.
Thank You.
Project Member

Comment 2 by ClusterFuzz, Oct 1 2017

Components: Blink>JavaScript>Runtime
Labels: Test-Predator-AutoComponents
Automatically applying components based on information from OWNERS files. If this seems incorrect, please apply the Test-Predator-Wrong-Components label.
Cc: yangguo@chromium.org
Components: -Blink>JavaScript>Runtime Blink>JavaScript>Regexp
Labels: -Pri-1 Pri-2
Mergedinto: v8:287
Status: Duplicate (was: Assigned)
Another instance of exponential backtracking. Simplified:

$ d8 --trace-regexp-parser
d8> /(a|){100000}c/.exec("abc")
(: (# 100000 100000 g (^ (| 'a' %))) 'c')

This produces 2^100000 possibilities to iterate before finally failing to match at 'a'.
Cc: ishell@chromium.org jgruber@chromium.org
 Issue 777110  has been merged into this issue.
Labels: -Test-Predator-AutoComponents Test-Predator-Auto-Components

Sign in to add a comment