{"id":193767,"date":"2017-09-05T04:27:36","date_gmt":"2017-09-05T02:27:36","guid":{"rendered":"http:\/\/www.borncity.com\/blog\/?p=193767"},"modified":"2023-07-20T18:53:43","modified_gmt":"2023-07-20T16:53:43","slug":"6-jahre-alter-loop-bug-in-vielen-pdf-viewern","status":"publish","type":"post","link":"https:\/\/borncity.com\/blog\/2017\/09\/05\/6-jahre-alter-loop-bug-in-vielen-pdf-viewern\/","title":{"rendered":"6 Jahre alter Loop-Bug in vielen PDF-Viewern"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" style=\"float: left; margin: 0px 10px 0px 0px; display: inline\" src=\"https:\/\/borncity.com\/blog\/wp-content\/uploads\/2015\/01\/Schutz.jpg\" width=\"40\" align=\"left\" height=\"47\"\/>Unsch\u00f6ne Geschichte: 2011 wurde ein obskurer Bug in einer PDF-Parsing-Bibliothek gefunden. Sechs Jahre sp\u00e4ter findet sich dieser Bug immer noch in den Top PDF-Programmen, die aktuell verwendet werden. <\/p>\n<p><!--more--><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/ssl-vg03.met.vgwort.de\/na\/cf734af35a6541dcaf284ed3a7d3091a\" width=\"1\" height=\"1\"\/>Das berichtet Hanno B\u00f6ck in seinem Blog-Beitrag <a href=\"https:\/\/web.archive.org\/web\/20210812163426\/https:\/\/blog.fuzzing-project.org\/59-Six-year-old-PDF-loop-bug-affects-most-major-implementations.html\" target=\"_blank\" rel=\"noopener noreferrer\">Six year old PDF loop bug affects most major implementations<\/a>. B\u00f6ck hatte k\u00fcrzlich die in vielen PDF-Paketen enthaltene Bibliothek qpdf mit afl und libfuzzer untersucht. Mit pr\u00e4parierten PDF-Dateien kommt es zu einer hohen CPU-Belastung und nach mehreren Minuten zu einem Speicherfehler. Der Parser verf\u00e4llt offenbar in eine Endlosschleife. <\/p>\n<p>B\u00f6ck verweist auf einen <a href=\"https:\/\/media.ccc.de\/v\/cccamp11-4426-certified_programming_with_dependent_types-en\" target=\"_blank\" rel=\"noopener noreferrer\">Vortrag des CCC aus 2011<\/a>, wo ein solcher Fehler bereits berichtet wurde. Das Problem wurde seinerzeit zwar gefixt, aber das scheint sich bei den Anbietern von PDF-Readern noch nicht herum gesprochen zu haben. Das qpdf-Problem in der obigen Analyse ist das gleiche, wie es <a href=\"https:\/\/web.archive.org\/web\/20210903111317\/https:\/\/github.com\/qpdf\/qpdf\/issues\/149\" target=\"_blank\" rel=\"noopener noreferrer\">hier<\/a> berichtet wurde (eine Testdatei gibt es <a href=\"https:\/\/github.com\/andreas23\/pdfparser\/blob\/master\/tests\/loop_edited.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">hier<\/a>). <\/p>\n<p>B\u00f6ck schreibt, dass der Github Javascript PDF-Viewer auch betroffen sei. Der PDF-Viewer im Mozilla Firefox? <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=1393476\" target=\"_blank\" rel=\"noopener noreferrer\">Betroffen<\/a>, da sie pdf.js \u2013 wie Github \u2013 verwenden. Auch Google Chrome \/ Chromium, welche die Bibliothek PDFium verwenden, ist <a href=\"https:\/\/bugs.chromium.org\/p\/pdfium\/issues\/detail?id=875\" target=\"_blank\" rel=\"noopener noreferrer\">betroffen<\/a>.&nbsp; Ghostscript ist genau so <a href=\"https:\/\/web.archive.org\/web\/20171123041244\/https:\/\/developer.microsoft.com\/en-us\/microsoft-edge\/platform\/issues\/13534806\/\" target=\"_blank\" rel=\"noopener noreferrer\">betroffen<\/a> wie andere PDF parser. Nur der Adobe Reader und Apples internet OS X PDF Viewer sind nicht betroffen. <\/p>\n<p>Das ist jetzt keine riesige Sicherheitsl\u00fccke, aber schon doof, wenn der PDF-Viewer sich aufh\u00e4ngt, wenn er eine pr\u00e4parierte PDF-Datei \u00f6ffnet. Dies w\u00fcrde aber eine Art DDoS-Angriff auf Nutzer erm\u00f6glichen, denen PDF-Dokumente zugeschickt werden. Sobald diese im Browser angezeigt werden, h\u00e4ngt sich dieser auf. Zudem k\u00f6nnte es durch Implementierungsfehler zu weiteren Problemen kommen. Scheint, als ob es demn\u00e4chst einige Updates geben wird. (<a href=\"https:\/\/www.bleepingcomputer.com\/news\/software\/six-year-old-loop-bug-re-discovered-to-affect-almost-all-major-pdf-viewers\/\" target=\"_blank\" rel=\"noopener noreferrer\">via<\/a>)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Unsch\u00f6ne Geschichte: 2011 wurde ein obskurer Bug in einer PDF-Parsing-Bibliothek gefunden. Sechs Jahre sp\u00e4ter findet sich dieser Bug immer noch in den Top PDF-Programmen, die aktuell verwendet werden.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[426],"tags":[419,2198,4328],"class_list":["post-193767","post","type-post","status-publish","format-standard","hentry","category-sicherheit","tag-bug","tag-pdf-viewer","tag-sicherheit"],"_links":{"self":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/193767","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/comments?post=193767"}],"version-history":[{"count":0,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/193767\/revisions"}],"wp:attachment":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/media?parent=193767"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/categories?post=193767"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/tags?post=193767"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}