ArchLinux: 202101-36: podofo: multiple issues
Summary
- CVE-2017-8054 (denial of service)
The function PdfPagesTree::GetPageNodeFromArray in PdfPageTree.cpp:464
in PoDoFo 0.9.6 allows remote attackers to cause a denial of service
(infinite recursion and application crash) via a crafted PDF document.
The issue is fixed in PoDoFo version 0.9.7.
- CVE-2018-5783 (denial of service)
In PoDoFo 0.9.6, there is an uncontrolled memory allocation in the
PoDoFo::PdfVecObjects::Reserve function (base/PdfVecObjects.h). Remote
attackers could leverage this vulnerability to cause a denial of
service via a crafted pdf file. The issue is fixed in PoDoFo version
0.9.7.
- CVE-2018-11254 (denial of service)
An issue was discovered in PoDoFo 0.9.6. There is an Excessive
Recursion in the PdfPagesTree::GetPageNode() function of
PdfPagesTree.cpp. Remote attackers could leverage this vulnerability to
cause a denial of service through a crafted pdf file, a related issue
to CVE-2017-8054. The issue is fixed in PoDoFo version 0.9.7.
- CVE-2018-11255 (denial of service)
An issue was discovered in PoDoFo 0.9.6. The function
PdfPage::GetPageNumber() in PdfPage.cpp in PoDoFo 0.9.5 allows remote
attackers to cause a denial of service (NULL pointer dereference and
application crash) via a crafted PDF document. The issue is fixed in
PoDoFo version 0.9.7.
- CVE-2018-11256 (denial of service)
An issue was discovered in PoDoFo 0.9.6. The function
PdfDocument::Append() in PdfDocument.cpp in PoDoFo 0.9.5 allows remote
attackers to cause a denial of service (NULL pointer dereference and
application crash) via a crafted PDF document. The issue is fixed in
PoDoFo version 0.9.7.
- CVE-2018-12982 (denial of service)
An invalid memory read in the PoDoFo::PdfVariant::DelayedLoad()
function in PdfVariant.h in PoDoFo 0.9.6-rc1 allows remote attackers to
have denial-of-service impact via a crafted file. The issue is fixed in
PoDoFo version 0.9.7.
- CVE-2018-14320 (arbitrary code execution)
This vulnerability in PoDoFo 0.9.6 allows remote attackers to disclose
sensitive information on vulnerable installations of PoDoFo. User
interaction is required to exploit this vulnerability in that the
target must visit a malicious page or open a malicious file. The
specific flaw exists within PdfEncoding::ParseToUnicode. The issue
results from the lack of proper validation of user-supplied data, which
can result in a memory corruption condition. An attacker can leverage
this in conjunction with other vulnerabilities to execute arbitrary
code in the context of the current process. The issue is fixed in
PoDoFo version 0.9.7.
- CVE-2018-19532 (denial of service)
A NULL pointer dereference vulnerability exists in the function
PdfTranslator::setTarget() in pdftranslator.cpp of PoDoFo 0.9.6, while
creating the PdfXObject, as demonstrated by podofoimpose. It allows an
attacker to cause Denial of Service. The issue is fixed in PoDoFo
version 0.9.7.
- CVE-2018-20751 (denial of service)
An issue was discovered in crop_page in PoDoFo 0.9.6. For a crafted PDF
document,
pPage->GetObject()->GetDictionary().AddKey(PdfName("MediaBox"),var) can
be problematic due to the function GetObject() being called for the
pPage NULL pointer object. The value of pPage at this point is 0x0,
which causes a NULL pointer dereference. The issue is fixed in PoDoFo
version 0.9.7.
- CVE-2019-9199 (denial of service)
PoDoFo::Impose::PdfTranslator::setSource() in pdftranslator.cpp in
PoDoFo 0.9.6 has a NULL pointer dereference that can (for example) be
triggered by sending a crafted PDF file to the podofoimpose binary. It
allows an attacker to cause Denial of Service (Segmentation fault) or
possibly have unspecified other impact. The issue is fixed in PoDoFo
version 0.9.7.
- CVE-2019-9687 (arbitrary code execution)
PoDoFo 0.9.6 has a heap-based buffer overflow in
PdfString::ConvertUTF16toUTF8 in base/PdfString.cpp. The issue is fixed
in PoDoFo version 0.9.7.
Resolution
Upgrade to 0.9.7-1.
# pacman -Syu "podofo>=0.9.7-1"
The problems have been fixed upstream in version 0.9.7.
References
https://bugs.archlinux.org/task/61651 https://qwertwwwe.github.io/2017/04/22/PoDoFo-0-9-5-allows-remote-attackers-to-cause-a-denial-of-service-infinit-loop/ https://sourceforge.net/p/podofo/code/1941/ https://sourceforge.net/p/podofo/tickets/4/ https://sourceforge.net/p/podofo/code/1949/ https://bugzilla.redhat.com/show_bug.cgi?id=1576174 https://sourceforge.net/p/podofo/tickets/20/ https://bugzilla.redhat.com/show_bug.cgi?id=1575502 https://bugzilla.redhat.com/attachment.cgi?id=1432515 https://sourceforge.net/p/podofo/code/1952/ https://bugzilla.redhat.com/show_bug.cgi?id=1575851 https://sourceforge.net/p/podofo/code/1938/ https://sourceforge.net/p/podofo/tickets/22/ https://bugzilla.redhat.com/show_bug.cgi?id=1595689 https://bugzilla.redhat.com/attachment.cgi?id=1455023 https://sourceforge.net/p/podofo/code/1948/ https://www.zerodayinitiative.com/advisories/ZDI-18-1046/ https://sourceforge.net/p/podofo/code/1953/ https://research.loginsoft.com/vulnerability/null-pointer-dereference-vulnerability-in-pdftranslatorsettarget-podofo-0-9-6/ https://sourceforge.net/p/podofo/tickets/32/ https://sourceforge.net/p/podofo/code/1950/ https://research.loginsoft.com/bugs/null-pointer-dereference-vulnerability-in-crop_page-podofo-0-9-6/ https://sourceforge.net/p/podofo/tickets/33/ https://sourceforge.net/p/podofo/code/1954/ https://research.loginsoft.com/vulnerability/null-pointer-dereference-vulnerability-in-setsource-podofo-0-9-6-trunk-r1967/ https://sourceforge.net/p/podofo/tickets/40/ https://sourceforge.net/p/podofo/code/1971/ https://sourceforge.net/p/podofo/mailman/podofo-users/thread/CAD3bFv0VMb1DHK0wta0t%3DXg45Oc0gW%2BiS1dYV-Cxpk7hKBoeZQ%40mail.gmail.com/ https://sourceforge.net/p/podofo/code/1969/ https://security.archlinux.org/CVE-2017-8054 https://security.archlinux.org/CVE-2018-5783 https://security.archlinux.org/CVE-2018-11254 https://security.archlinux.org/CVE-2018-11255 https://security.archlinux.org/CVE-2018-11256 https://security.archlinux.org/CVE-2018-12982 https://security.archlinux.org/CVE-2018-14320 https://security.archlinux.org/CVE-2018-19532 https://security.archlinux.org/CVE-2018-20751 https://security.archlinux.org/CVE-2019-9199 https://security.archlinux.org/CVE-2019-9687
Workaround
None.