Bug 30590 - poppler: OBJECT_TYPE_CHECK abort when reading /Matrix
Summary: poppler: OBJECT_TYPE_CHECK abort when reading /Matrix
Status: RESOLVED FIXED
Alias: None
Product: poppler
Classification: Unclassified
Component: general (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: poppler-bugs
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-10-03 11:50 UTC by Tomas Hoger
Modified: 2010-10-25 05:47 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
Reproducer (28.52 KB, application/pdf)
2010-10-03 11:52 UTC, Tomas Hoger
Details

Description Tomas Hoger 2010-10-03 11:50:59 UTC
I presume the crash mentioned in 2fe825deac commit message is OBJECT_TYPE_CHECK abort when /BBox array contains non-numeric value.  Close to the /BBox reading code, there's also /Matrix array reading code affected by the similar problem:

http://cgit.freedesktop.org/poppler/poppler/tree/poppler/Gfx.cc?id=aa0fd32a#n4261

Additionally, there's one additional instance of BBox/Matrix reading code in Gfx::doSoftMask that's likely to be affected by the same issue and have not been changed in 2fe825deac:

http://cgit.freedesktop.org/poppler/poppler/tree/poppler/Gfx.cc?id=aa0fd32a#n1245
Comment 1 Tomas Hoger 2010-10-03 11:52:09 UTC
Created attachment 39146 [details]
Reproducer

Triggers abort in Gfx::doForm.
Comment 2 Albert Astals Cid 2010-10-05 14:22:03 UTC
Fixed. There are tons of these, feel free to search them and open new bugs with pdf reproducers.
Comment 3 Tomas Hoger 2010-10-06 00:18:08 UTC
Sorry, my report was probably confusing.  There are 3 instanced of /BBox and /Matrix reading code in Gfx.cc.

2 BBox instances were fixed in 2fe825deac, this one remains without checks:
http://cgit.freedesktop.org/poppler/poppler/tree/poppler/Gfx.cc?id=d690bea9#n1253

2 Matrix instances were fixed in d690bea929, one was missed:
http://cgit.freedesktop.org/poppler/poppler/tree/poppler/Gfx.cc?id=d690bea9#n4703

I don't have reproducers for these, sorry.
Comment 4 Albert Astals Cid 2010-10-06 11:07:55 UTC
To be fair, without reproducers i prefer to focus my little time in poppler to develop actual features
Comment 5 Tomas Hoger 2010-10-25 05:47:10 UTC
(In reply to comment #3)
> 2 BBox instances were fixed in 2fe825deac, this one remains without checks:
> http://cgit.freedesktop.org/poppler/poppler/tree/poppler/Gfx.cc?id=d690bea9#n1253

This one is now fixed via:
http://cgit.freedesktop.org/poppler/poppler/commit/?id=bcb13ed582
http://lists.freedesktop.org/archives/poppler/2010-October/006565.html


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.