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

Issue 723513 link

Starred by 1 user

Issue metadata

Status: Duplicate
Merged: issue 796752
Owner:
Closed: Dec 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 1
Type: Bug



Sign in to add a comment

ASSERT: prev.elementAti(t_boundary.elementAti(numBreaks - 1)) == 0

Project Member Reported by ClusterFuzz, May 17 2017

Issue description

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

Fuzzer: libfuzzer_icu_break_iterator_fuzzer
Job Type: libfuzzer_chrome_asan_debug
Platform Id: linux

Crash Type: ASSERT
Crash Address: 
Crash State:
  prev.elementAti(t_boundary.elementAti(numBreaks - 1)) == 0
  icu_59::CjkBreakEngine::divideUpDictionaryRange
  icu_59::DictionaryBreakEngine::findBreaks
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_asan_debug&range=452151:452185

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


Issue filed automatically.

See https://chromium.googlesource.com/chromium/src/+/master/testing/libfuzzer/reproducing.md for more information.
 
Cc: msrchandra@chromium.org
Labels: Test-Predator-Wrong-CLs M-60
Owner: js...@chromium.org
Status: Assigned (was: Untriaged)
Predator and CL did not provide any possible suspects.
Using Code Search for the file, "dictbe.cpp" assigning to the concern owner.
@jshin -- Could you please look into the issue, kindly re-assign if this is not related to your changes.
Thank You.

Comment 2 by js...@chromium.org, May 19 2017

Cc: aheninger@google.com

Comment 3 by js...@chromium.org, May 23 2017

Testcase has an invalid UTF-8. 

𧻓㌛蟟m 

followed by 0xE8. 

Given that only valid UTF-8 or UTF-16 is fed to the API in question in Chromium/Blink, the risk woouldn't be that high.  Anyway, the ICU code in question needs to be hardened. 

Comment 4 by js...@chromium.org, Jun 13 2017

The byte sequences of the minimized test string :
ef ab 97 e3 8c 9b e8 9f  9f 6d e8

3 characters (of 3 bytes in UTF-8) followed by 'm' and followed by 0xE8. 





Comment 5 by mmoroz@chromium.org, Oct 24 2017

For more information, please see https://chromium.googlesource.com/chromium/src/+/master/testing/libfuzzer/reference.md.

The link referenced in the description is no longer valid.

(bulk edit)
Project Member

Comment 6 by ClusterFuzz, Dec 20 2017

ClusterFuzz has detected this issue as fixed in range 525156:525177.

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

Fuzzer: libFuzzer_icu_break_iterator_fuzzer
Job Type: libfuzzer_chrome_asan_debug
Platform Id: linux

Crash Type: ASSERT
Crash Address: 
Crash State:
  prev.elementAti(t_boundary.elementAti(numBreaks - 1)) == 0
  icu_59::CjkBreakEngine::divideUpDictionaryRange
  icu_59::DictionaryBreakEngine::findBreaks
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_asan_debug&range=452151:452185
Fixed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_asan_debug&range=525156:525177

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

See https://chromium.googlesource.com/chromium/src/+/master/testing/libfuzzer/reference.md 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 7 by ClusterFuzz, Dec 20 2017

Labels: ClusterFuzz-Verified
Status: Verified (was: Assigned)
ClusterFuzz testcase 5000525501431808 is verified as fixed, so closing issue as verified.

If this is incorrect, please add ClusterFuzz-Wrong label and re-open the issue.

Comment 8 by js...@chromium.org, Jan 17 2018

Mergedinto: 796752
Status: Duplicate (was: Verified)

Sign in to add a comment