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

Issue 640998 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Sep 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 1
Type: Bug-Security



Sign in to add a comment

Crash in CPDF_Parser::LoadCrossRefV5

Project Member Reported by ClusterFuzz, Aug 25 2016

Issue description

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

Fuzzer: ochang_neurofuzz_borgfuzz
Job Type: windows_asan_chrome
Platform Id: windows

Crash Type: UNKNOWN READ
Crash Address: 0xbebebed2
Crash State:
  CPDF_Parser::LoadCrossRefV5
  CPDF_Parser::LoadCrossRefV4
  CPDF_Parser::LoadAllCrossRefV4
  
Recommended Security Severity: Medium

Regressed: https://cluster-fuzz.appspot.com/revisions?job=windows_asan_chrome&range=414207:414243

Minimized Testcase (117.05 Kb): https://cluster-fuzz.appspot.com/download/AMIfv95iBtUezq-7gclZqxBCiZhe0F5LW9XV8FR2WrhlfWlGuPkyeuKTpImVHqK9neSGCPj1rtNCSHTpDG5N9YVyW91s36xDuzkr49UP_2HRVG-uXL0uWn14uzT80nUocTzu_qnEnXIIbmXAPjytw6IhMlgYm0u5Rp9IEvPcbm_iP68y2M0j2kE?testcase_id=4850620077178880

Issue manually filed by: inferno

See https://dev.chromium.org/Home/chromium-security/bugs/reproducing-clusterfuzz-bugs for more information.
 
Components: Internals>Plugins>PDF
Owner: dsinclair@chromium.org
Status: Assigned (was: Untriaged)
The result is a list of CLs that change the crashed files.

Author: dsinclair
Project: chromium-pdfium
Changelist: https://pdfium.googlesource.com/pdfium.git/+/cedaa557316a3f5c436814e69d67f19795f471d7
Time: Wed Aug 24 11:12:19 2016 -0700
Files fpdf_dataavail.cpp, cpdf_parser.cpp are changed in this cl (and is part of stack frame #6, "FPDFAvail_IsDocAvail")
Minimum distance from crash line to modified line: 10. (file: cpdf_parser.cpp, crashed on: 966, modified: 976).

Author: dsinclair
Project: chromium-pdfium
Changelist: https://pdfium.googlesource.com/pdfium.git/+/a61c01ea4527dd98699005099e9335a4a842b545
Time: Wed Aug 24 10:31:23 2016 -0700
File cpdf_parser.cpp is changed in this cl (and is part of stack frame #0, "CPDF_Parser::LoadCrossRefV5"; frame #1, "CPDF_Parser::LoadCrossRefV4"; frame #2, "CPDF_Parser::LoadAllCrossRefV4")
Minimum distance from crash line to modified line: 19. (file: cpdf_parser.cpp, crashed on: 966, modified: 985).

Suspected Project: chromium-pdfium
Cc: weili@chromium.org
Project Member

Comment 3 by sheriffbot@chromium.org, Aug 26 2016

Labels: M-54
Project Member

Comment 4 by sheriffbot@chromium.org, Aug 26 2016

Labels: ReleaseBlock-Beta
This issue is a security regression. If you are not able to fix this quickly, please revert the change that introduced it.

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

Comment 5 by sheriffbot@chromium.org, Aug 26 2016

Labels: Pri-1
Project Member

Comment 6 by sheriffbot@chromium.org, Aug 28 2016

Labels: M-54
Status: Started (was: Assigned)
Project Member

Comment 8 by bugdroid1@chromium.org, Aug 29 2016

The following revision refers to this bug:
  https://pdfium.googlesource.com/pdfium.git/+/e8ae48361bd0a4d8df47d925156b4159658a7941

commit e8ae48361bd0a4d8df47d925156b4159658a7941
Author: dsinclair <dsinclair@chromium.org>
Date: Mon Aug 29 18:52:10 2016

Initialize the CPDF_Document pointer

This CL is a speculative fix for the associated BUG. Make sure the CPDF_Document
is initialized in the constructor.

BUG= chromium:640998 

Review-Url: https://codereview.chromium.org/2291743002

[modify] https://crrev.com/e8ae48361bd0a4d8df47d925156b4159658a7941/core/fpdfapi/fpdf_parser/cpdf_parser.cpp

Speculative fix has landed. Will auto-roll into Chromium shortly. Need to wait for clusterfuzz to respond ....
Project Member

Comment 10 by bugdroid1@chromium.org, Aug 30 2016

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

commit b80d9eb6c3b98e374b2f8eef570094d66b3406ba
Author: pdfium-deps-roller <pdfium-deps-roller@chromium.org>
Date: Tue Aug 30 05:03:50 2016

Roll src/third_party/pdfium/ 548ea2f7d..35512aa7e (14 commits).

https://pdfium.googlesource.com/pdfium.git/+log/548ea2f7d083..35512aa7e4ac

$ git log 548ea2f7d..35512aa7e --date=short --no-merges --format='%ad %ae %s'
2016-08-29 jaepark Display content of the annotation when mouse hover.
2016-08-29 dsinclair Skip the channel if there is no data.
2016-08-29 tsepez Revert "Add -> operators to CFX_CountRef."
2016-08-29 tsepez Revert "Replace wrapper methods in CPDF_Path with -> operator."
2016-08-29 tsepez Revert "Use ->() in CPDF_ColorState"
2016-08-29 tracy_jiang Fix for #618267. Adding a method to determine if multiplication has overflow.
2016-08-29 dsinclair Verify element exists before accessing.
2016-08-29 tsepez Use ->() in CPDF_ColorState
2016-08-29 stackexploit openjpeg: Prevent an integer overflow in opj_jp2_apply_pclr.
2016-08-29 dsinclair Initialize the CPDF_Document pointer
2016-08-29 tsepez Replace wrapper methods in CPDF_Path with -> operator.
2016-08-29 thestig Add some limit checks to ReadSharedObjHintTable().
2016-08-29 npm Move CFX_SubstFont and CTTFontDesc into their own files
2016-08-29 tonikitoo Fix the test case added in https://codereview.chromium.org/2277063003/

BUG= 62625 , 637232 ,618267, 641076 ,638829, 640998 , 641444 

TBR=dsinclair@chromium.org

Review-Url: https://codereview.chromium.org/2293733002
Cr-Commit-Position: refs/heads/master@{#415132}

[modify] https://crrev.com/b80d9eb6c3b98e374b2f8eef570094d66b3406ba/DEPS

Cc: dsinclair@chromium.org
Owner: infe...@chromium.org
inferno@ can you please check if this has fixed the issue? Feel free to assign back if the problem persists.

Comment 12 by aarya@google.com, Aug 30 2016

Cc: -dsinclair@chromium.org
Owner: dsinclair@chromium.org
ClusterFuzz should autoclose bug in a day if this was fixed. Best to just check back tmrw. Also, report shows last tested revision ([Crash Revision] r415042) which does not have fix yet.
Project Member

Comment 13 by sheriffbot@chromium.org, Sep 1 2016

Labels: -Security_Impact-Head Security_Impact-Beta
It looks like clusterfuzz is only up to 415049 over the last 5 days?

Comment 15 by aarya@google.com, Sep 6 2016

Looks like a flaky crash for clusterfuzz to verify. just close as fixed.

[2016-09-01 13:42:01] dsinclair@chromium.org: Redo task(s): progression
[2016-09-02 00:32:55] clusterfuzz-windows-0038: Progression task started: r415934.
[2016-09-02 00:43:47] clusterfuzz-windows-0038: Progression task in-progress: Testing r414243:r415934.
[2016-09-02 00:43:51] clusterfuzz-windows-0038: Progression task errored out: Known crash revision 414243 did not crash.
[2016-09-02 00:43:51] clusterfuzz-windows-0038: Progression task errored out: Test case appears to be flaky.
Status: Fixed (was: Started)
Project Member

Comment 17 by sheriffbot@chromium.org, Sep 7 2016

Labels: -Restrict-View-SecurityTeam Restrict-View-SecurityNotify
Cc: thestig@chromium.org brajkumar@chromium.org npm@chromium.org
 Issue 663796  has been merged into this issue.
Project Member

Comment 19 by sheriffbot@chromium.org, Dec 14 2016

Labels: -Restrict-View-SecurityNotify allpublic
This bug has been closed for more than 14 weeks. Removing security view restrictions.

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

Sign in to add a comment