Integer-overflow in FX_RECT::Width |
|||||
Issue descriptionDetailed report: https://cluster-fuzz.appspot.com/testcase?key=6008657789845504 Fuzzer: ochang_search_index_mutator Job Type: linux_ubsan_chrome Platform Id: linux Crash Type: Integer-overflow Crash Address: Crash State: FX_RECT::Width CFX_RenderDevice::DrawPathWithBlend CPDF_RenderStatus::ProcessPath Regressed: https://cluster-fuzz.appspot.com/revisions?job=linux_ubsan_chrome&range=370022:370027 Minimized Testcase (214.62 Kb): https://cluster-fuzz.appspot.com/download/AMIfv94BOOJnbi5XJK1bkdmnbDOtO5eYDYQBMWO9CCAG2rZqpodkQwvoKRXlBJCvphNlYT4OJ0k90scZmm5BXDli0oimoy_9IGfCMlnK1PDk5Gic99w_E8SF_8uca70Op_vrdA2EuN7DX0OaxWCTZiy8mTydQlrDShubzama8tJt4P8bdXdN5Ww?testcase_id=6008657789845504 Issue manually filed by: nyerramilli See https://dev.chromium.org/Home/chromium-security/bugs/reproducing-clusterfuzz-bugs for more information.
,
Aug 10 2016
My guess is that this is a long-standing issue, and a widespread one. Pdfium probably does an imperfect job of sanitizing the input PDFs for avoidance of integer overflow. DrawPathWithBlend is passed a CFX_PathData* which has a rect whose extents are -2147483648 to 5, and this width cannot be stored in an int. It's not clear what should be done, or at what level. Reject the PDF at load time as having an illegally large rectangle? Sounds reasonable, but what should the limit be? Adding tsepez@ for guidance on who should look at this. I'm also lowering the priority because I think this is a broad issue that will take a while to resolve, and I think this is not a new issue.
,
Aug 11 2016
ClusterFuzz has detected this issue as fixed in range 410916:411073. Detailed report: https://cluster-fuzz.appspot.com/testcase?key=6008657789845504 Fuzzer: ochang_search_index_mutator Job Type: linux_ubsan_chrome Platform Id: linux Crash Type: Integer-overflow Crash Address: Crash State: FX_RECT::Width CFX_RenderDevice::DrawPathWithBlend CPDF_RenderStatus::ProcessPath Regressed: https://cluster-fuzz.appspot.com/revisions?job=linux_ubsan_chrome&range=370022:370027 Fixed: https://cluster-fuzz.appspot.com/revisions?job=linux_ubsan_chrome&range=410916:411073 Minimized Testcase (214.62 Kb): https://cluster-fuzz.appspot.com/download/AMIfv94BOOJnbi5XJK1bkdmnbDOtO5eYDYQBMWO9CCAG2rZqpodkQwvoKRXlBJCvphNlYT4OJ0k90scZmm5BXDli0oimoy_9IGfCMlnK1PDk5Gic99w_E8SF_8uca70Op_vrdA2EuN7DX0OaxWCTZiy8mTydQlrDShubzama8tJt4P8bdXdN5Ww?testcase_id=6008657789845504 See https://dev.chromium.org/Home/chromium-security/bugs/reproducing-clusterfuzz-bugs for more information. If you suspect that the result above is incorrect, try re-doing that job on the test case report page.
,
Aug 11 2016
ClusterFuzz testcase is verified as fixed, closing issue. If this is incorrect, please add ClusterFuzz-Wrong label and re-open the issue.
,
Oct 18 2016
,
Nov 22 2016
Removing EditIssue view restrictions from ClusterFuzz filed bugs. If you believe that this issue should still be restricted, please reapply the label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot |
|||||
►
Sign in to add a comment |
|||||
Comment 1 by nyerramilli@chromium.org
, Aug 9 2016Components: Tools>Test>FindIt>WrongResult
Labels: findit-wrong Te-Logged M-53
Owner: brucedaw...@chromium.org
Status: Assigned (was: Untriaged)