New issue
Advanced search Search tips

Issue 875924 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Aug 23
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug



Sign in to add a comment

Integer-overflow in CPDF_CIDFont::GetCharBBox

Project Member Reported by ClusterFuzz, Aug 20

Issue description

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

Fuzzer: libFuzzer_pdf_font_fuzzer
Job Type: libfuzzer_chrome_ubsan
Platform Id: linux

Crash Type: Integer-overflow
Crash Address: 
Crash State:
  CPDF_CIDFont::GetCharBBox
  CPDF_Font::CheckFontMetrics
  CPDF_CIDFont::Load
  
Sanitizer: undefined (UBSAN)

Regressed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_ubsan&range=481402:481528

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

Issue filed automatically.

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

Comment 1 by ClusterFuzz, Aug 20

Components: Internals>Plugins>PDF
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, Aug 20

Labels: Test-Predator-Auto-Owner
Owner: npm@chromium.org
Status: Assigned (was: Untriaged)
Automatically assigning owner based on suspected regression changelist https://pdfium.googlesource.com/pdfium/+/4b95360b7611aa73f928de2dc47390f78573c6cc (Clamp instead of checked_cast in TT2PDF).

If this is incorrect, please let us know why and apply the Test-Predator-Wrong-CLs label. If you aren't the correct owner for this issue, please unassign yourself as soon as possible so it can be re-triaged.
Project Member

Comment 3 by bugdroid1@chromium.org, Aug 22

The following revision refers to this bug:
  https://pdfium.googlesource.com/pdfium/+/98a245c0d8ee3e403fbb13d90872239948d82abf

commit 98a245c0d8ee3e403fbb13d90872239948d82abf
Author: Nicolas Pena <npm@chromium.org>
Date: Wed Aug 22 15:15:36 2018

Fix integer overflow in CPDF_CIDFont::GetCharBBox

Bug:  chromium:875924 
Change-Id: I85c86d3f90ee62b5593b0b20e44283c5056702ff
Reviewed-on: https://pdfium-review.googlesource.com/40730
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Nicolás Peña Moreno <npm@chromium.org>

[modify] https://crrev.com/98a245c0d8ee3e403fbb13d90872239948d82abf/core/fpdfapi/font/cpdf_cidfont.cpp

Project Member

Comment 4 by bugdroid1@chromium.org, Aug 22

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

commit 2d034f8653784e5ff308ab1df0c609f7aa800de9
Author: pdfium-chromium-autoroll <pdfium-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Date: Wed Aug 22 18:43:22 2018

Roll src/third_party/pdfium 3caad939aead..03fdf3a2b5ee (4 commits)

https://pdfium.googlesource.com/pdfium.git/+log/3caad939aead..03fdf3a2b5ee


git log 3caad939aead..03fdf3a2b5ee --date=short --no-merges --format='%ad %ae %s'
2018-08-22 thestig@chromium.org Mark CFX_XMLNode pointers as const in various places.
2018-08-22 thestig@chromium.org Add GetLowerCaseElementAttributeOrDefault() helper function.
2018-08-22 npm@chromium.org Fix integer overflow in CPDF_CIDFont::GetCharBBox
2018-08-22 thestig@chromium.org Simplify GetEmbeddedObj() methods.


Created with:
  gclient setdep -r src/third_party/pdfium@03fdf3a2b5ee

The AutoRoll server is located here: https://pdfium-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.



BUG= chromium:875924 
TBR=dsinclair@chromium.org

Change-Id: I409a99ffb7e201035f4134f8d951c9a807831189
Reviewed-on: https://chromium-review.googlesource.com/1184868
Reviewed-by: pdfium-chromium-autoroll <pdfium-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: pdfium-chromium-autoroll <pdfium-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#585185}
[modify] https://crrev.com/2d034f8653784e5ff308ab1df0c609f7aa800de9/DEPS

Project Member

Comment 5 by ClusterFuzz, Aug 23

ClusterFuzz has detected this issue as fixed in range 585184:585185.

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

Fuzzer: libFuzzer_pdf_font_fuzzer
Job Type: libfuzzer_chrome_ubsan
Platform Id: linux

Crash Type: Integer-overflow
Crash Address: 
Crash State:
  CPDF_CIDFont::GetCharBBox
  CPDF_Font::CheckFontMetrics
  CPDF_CIDFont::Load
  
Sanitizer: undefined (UBSAN)

Regressed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_ubsan&range=481402:481528
Fixed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_ubsan&range=585184:585185

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

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 6 by ClusterFuzz, Aug 23

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