Summary: | Infinite Loop in pdf_parse_array function (source/pdf/pdf-parse.c) | ||
---|---|---|---|
Product: | MuPDF | Reporter: | probefuzzer |
Component: | mupdf | Assignee: | MuPDF bugs <mupdf-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | xncd |
Priority: | P4 | ||
Version: | 1.12.0 | ||
Hardware: | PC | ||
OS: | Linux | ||
Customer: | Word Size: | --- |
Description
probefuzzer
2018-01-13 09:34:17 UTC
For this issue, CVE-2018-5686 is assigned. I could not reproduce this: mupdf-1.12.0-source $ uname -r 4.14.13-300.fc27.x86_64 mupdf-1.12.0-source $ ldd build/release/mutool linux-vdso.so.1 (0x00007ffefa991000) libasan.so.4 => /lib64/libasan.so.4 (0x00007fcd9b37b000) mupdf-1.12.0-source $ ./build/release/mutool draw ~/Downloads/mupdf_1-12-0_mutool_infinite-loop_pdf_parse_array.pdf error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache error: cannot parse token in array warning: cannot load object (6 0 R) into cache page /home/sfowler/Downloads/mupdf_1-12-0_mutool_infinite-loop_pdf_parse_array.pdf 1 error: cycle in page tree error: cannot draw '/home/sfowler/Downloads/mupdf_1-12-0_mutool_infinite-loop_pdf_parse_array.pdf' mupdf-1.12.0-source $ (In reply to xncd from comment #2) Hi xncd, thanks for your work. This issue is reproducible in commit fd0bf575229a79bc22901b0bd8ba4dbd356faa22, the latest commit at the time we tested it. And it is fixed in the commit b70eb93f6936c03d8af52040bbca4d4a7db39079. This issue can be closed. Thanks. > I could not reproduce this: > > mupdf-1.12.0-source $ uname -r > 4.14.13-300.fc27.x86_64 > > mupdf-1.12.0-source $ ldd build/release/mutool > linux-vdso.so.1 (0x00007ffefa991000) > libasan.so.4 => /lib64/libasan.so.4 (0x00007fcd9b37b000) > > mupdf-1.12.0-source $ ./build/release/mutool draw > ~/Downloads/mupdf_1-12-0_mutool_infinite-loop_pdf_parse_array.pdf > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > page > /home/sfowler/Downloads/mupdf_1-12-0_mutool_infinite-loop_pdf_parse_array. > pdf 1 > error: cycle in page tree > error: cannot draw > '/home/sfowler/Downloads/mupdf_1-12-0_mutool_infinite-loop_pdf_parse_array. > pdf' > mupdf-1.12.0-source $ (In reply to xncd from comment #2) > I could not reproduce this: > > mupdf-1.12.0-source $ uname -r > 4.14.13-300.fc27.x86_64 > > mupdf-1.12.0-source $ ldd build/release/mutool > linux-vdso.so.1 (0x00007ffefa991000) > libasan.so.4 => /lib64/libasan.so.4 (0x00007fcd9b37b000) > > mupdf-1.12.0-source $ ./build/release/mutool draw > ~/Downloads/mupdf_1-12-0_mutool_infinite-loop_pdf_parse_array.pdf > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > page > /home/sfowler/Downloads/mupdf_1-12-0_mutool_infinite-loop_pdf_parse_array. > pdf 1 > error: cycle in page tree > error: cannot draw > '/home/sfowler/Downloads/mupdf_1-12-0_mutool_infinite-loop_pdf_parse_array. > pdf' > mupdf-1.12.0-source $ (In reply to xncd from comment #2) > I could not reproduce this: > > mupdf-1.12.0-source $ uname -r > 4.14.13-300.fc27.x86_64 > > mupdf-1.12.0-source $ ldd build/release/mutool > linux-vdso.so.1 (0x00007ffefa991000) > libasan.so.4 => /lib64/libasan.so.4 (0x00007fcd9b37b000) > > mupdf-1.12.0-source $ ./build/release/mutool draw > ~/Downloads/mupdf_1-12-0_mutool_infinite-loop_pdf_parse_array.pdf > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > error: cannot parse token in array > warning: cannot load object (6 0 R) into cache > page > /home/sfowler/Downloads/mupdf_1-12-0_mutool_infinite-loop_pdf_parse_array. > pdf 1 > error: cycle in page tree > error: cannot draw > '/home/sfowler/Downloads/mupdf_1-12-0_mutool_infinite-loop_pdf_parse_array. > pdf' > mupdf-1.12.0-source $ |