CVE-2018-20751
An issue was discovered in crop_page in PoDoFo 0.9.6. For a crafted PDF document, pPage-...
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.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- Required
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
8.8
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.
- Record
CVE-2018-20751- CVSS 3.0
- 8.8 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - CVSS 2.0
- 6.8 Medium
AV:N/AC:M/Au:N/C:P/I:P/A:P - Weakness
- CWE-476
- Updated
- 2026-11-02
CVE List No score
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.
- Record
CVE-2018-20751- Updated
- 2026-11-02
EUVDEUVD-2018-13294 No score
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.
- Record
EUVD-2018-13294- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-crhg-hr6g-j2xf
8.8
An issue was discovered in crop_page in PoDoFo 0.9.6. For a crafted PDF document, pPage-...
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.
- Record
GHSA-crhg-hr6g-j2xf- CVSS 3.0
- 8.8 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Weakness
- CWE-476
- Updated
- 2026-11-02
OSVALPINE-CVE-2018-20751
8.8
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.
- Record
ALPINE-CVE-2018-20751- CVSS 3.0
- 8.8 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Updated
- 2026-11-03
OSV
8.8
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.
- Record
CVE-2018-20751- CVSS 3.0
- 8.8 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
Show 6 moreShow less
OSVDEBIAN-CVE-2018-20751
8.8
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.
- Record
DEBIAN-CVE-2018-20751- CVSS 3.0
- 8.8 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2018-20751
8.8
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.
- Record
UBUNTU-CVE-2018-20751- CVSS 3.0
- 8.8 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVMGASA-2020-0294 No score
Updated podofo packages fix security vulnerability
The updated packages fix security vulnerabilities:
A stack-based buffer over-read in the PdfEncryptMD5Base::ComputeEncryptionKey() function in PdfEncrypt.cpp in PoDoFo 0.9.6-rc1 could be leveraged by remote attackers to cause a denial-of-service via a crafted pdf file. (CVE-2018-12983)
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. (CVE-2018-20751)
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. (CVE-2019-9199)
PoDoFo 0.9.6 has a heap-based buffer overflow in PdfString::ConvertUTF16toUTF8 in base/PdfString.cpp. (CVE-2019-9687)
The PoDoFo::PdfVariant::DelayedLoad function in PdfVariant.h in PoDoFo 0.9.6 allows remote attackers to cause a denial of service (NULL pointer dereference) via a crafted file, because of ImageExtractor.cpp. (CVE-2019-20093)
- Record
MGASA-2020-0294- Updated
- 2026-11-02
OSVopenSUSE-SU-2024:11178-1 No score
libpodofo-devel-0.9.7-2.2 on GA media
These are all security issues fixed in the libpodofo-devel-0.9.7-2.2 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:11178-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2025:15521-1 No score
libpodofo-0_10-devel-0.10.5-1.1 on GA media
These are all security issues fixed in the libpodofo-0_10-devel-0.10.5-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2025:15521-1- Updated
- 2026-11-02
OSVSUSE-SU-2019:1849-1 No score
Security update for podofo
This update for podofo fixes the following issues:
Security issues fixed:
- CVE-2017-8054: Fixed a vulnerability in PdfPagesTree::GetPageNodeFromArray function which could allow remote attackers to cause Denial of Service (bsc#1035596).
- CVE-2018-5783: Fixed an uncontrolled memory allocation in PdfVecObjects::Reserve function (bsc#1076962).
- CVE-2018-11255: Fixed a null pointer dereference in PdfPage::GetPageNumber() function which could lead to Denial of Service (bsc#1096890).
- CVE-2018-20751: Fixed a null pointer dereference in crop_page function (bsc#1124357).
- CVE-2018-12982: Fixed an invalid memory read in PdfVariant::DelayedLoad() function which could allow remote attackers to cause Denial of Service (bsc#1099720).
- Fixed a buffer overflow in TestEncrypt function.
- Fixed a null pointer dereference in PdfTranslator-setTarget function.
- Fixed a heap based buffer overflow PdfVariant:DelayedLoad function.
- Record
SUSE-SU-2019:1849-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
podofoAlpine:v3.13 |
before 0.9.7-r0 | 0.9.7-r0 |
podofoAlpine:v3.14 |
before 0.9.7-r0 | 0.9.7-r0 |
podofoAlpine:v3.15 |
before 0.9.7-r0 | 0.9.7-r0 |
podofoAlpine:v3.16 |
before 0.9.7-r0 | 0.9.7-r0 |
podofoAlpine:v3.17 |
before 0.9.7-r0 | 0.9.7-r0 |
podofoAlpine:v3.18 |
before 0.9.7-r0 | 0.9.7-r0 |
podofoAlpine:v3.19 |
before 0.9.7-r0 | 0.9.7-r0 |
podofoAlpine:v3.20 |
before 0.9.7-r0 | 0.9.7-r0 |
podofoAlpine:v3.21 |
before 0.9.7-r0 | 0.9.7-r0 |
podofoAlpine:v3.22 |
before 0.9.7-r0 | 0.9.7-r0 |
Show 14 moreShow less
| Package | Affected | Fixed |
|---|---|---|
podofoAlpine:v3.23 |
before 0.9.7-r0 | 0.9.7-r0 |
podofoAlpine:v3.24 |
before 0.9.7-r0 | 0.9.7-r0 |
libpodofoDebian:12 |
before 0.9.6+dfsg-4 | 0.9.6+dfsg-4 |
libpodofoDebian:13 |
before 0.9.6+dfsg-4 | 0.9.6+dfsg-4 |
libpodofoDebian:14 |
before 0.9.6+dfsg-4 | 0.9.6+dfsg-4 |
podofoMageia:7 |
before 0.9.6-1.1.mga7 | 0.9.6-1.1.mga7 |
podofoSUSE:Linux Enterprise Desktop 12 SP4 |
before 0.9.2-3.9.2 | 0.9.2-3.9.2 |
podofoSUSE:Linux Enterprise Software Development Kit 12 SP4 |
before 0.9.2-3.9.2 | 0.9.2-3.9.2 |
podofoSUSE:Linux Enterprise Workstation Extension 12 SP4 |
before 0.9.2-3.9.2 | 0.9.2-3.9.2 |
libpodofoUbuntu:Pro:14.04:LTS |
All versions, plus listed versions 0.9.0-1.1ubuntu10.9.0-1.20.9.0-1.2ubuntu0.1~esm10.9.0-1.2ubuntu0.1~esm3 |
None known |
libpodofoUbuntu:Pro:16.04:LTS |
All versions, plus listed versions 0.9.0-1.30.9.3-30.9.3-40.9.3-4ubuntu0.1~esm1 |
None known |
libpodofoUbuntu:Pro:18.04:LTS |
All versions, plus listed versions 0.9.5-60.9.5-80.9.5-8build10.9.5-90.9.5-9ubuntu0.1~esm1 |
None known |
podofoopenSUSE:Tumbleweed |
before 0.9.7-2.2 | 0.9.7-2.2 |
podofo-0_10openSUSE:Tumbleweed |
before 0.10.5-1.1 | 0.10.5-1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, aliases, references | OSV | |
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2018-20751 is a high vulnerability (CVSS 8.8) in Podofo Project Podofo, published February 4, 2019. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.64%, the 76th percentile. Fixed in podofo 0.9.7-r0.
References
research.loginsoft.com/bugs/null-pointer-dereference-vulnerability-in-crop_page-podofo-0-9-6
sourceforge.net/p/podofo/tickets/33
nvd.nist.gov/vuln/detail/CVE-2018-20751
github.com/advisories/GHSA-crhg-hr6g-j2xf
security.alpinelinux.org/vuln/CVE-2018-20751
security-tracker.debian.org/tracker/CVE-2018-20751
Show 49 moreShow less
advisories.mageia.org/MGASA-2020-0294.html
bugs.mageia.org/show_bug.cgi?id=24385
lists.fedoraproject.org/archives/list/[email protected]/thread/Y6ZKYPW55PN6XV5XW6KZDIJLWRXON74N
lists.fedoraproject.org/archives/list/[email protected]/thread/5Z7UF3AC76HHLSAHVBUQWMYXHR33DR34
lists.fedoraproject.org/archives/list/[email protected]/thread/4K6FST3UH3WNUNCIAEEGZJJASCP5ZXUF
lists.fedoraproject.org/archives/list/[email protected]/thread/SSB4HRLHF7H3DPNTFPTXUE6EGXXZ5JSZ
lists.fedoraproject.org/archives/list/[email protected]/thread/WR6XY3TOLJPLXOGHYPCB42JW3SWRZNY4
suse.com/support/update/announcement/2019/suse-su-20191849-1
bugzilla.suse.com/1035596
bugzilla.suse.com/1076962
bugzilla.suse.com/1096890
bugzilla.suse.com/1099720
bugzilla.suse.com/1124357
suse.com/security/cve/CVE-2017-8054
suse.com/security/cve/CVE-2018-11255
suse.com/security/cve/CVE-2018-12982
suse.com/security/cve/CVE-2018-20751
suse.com/security/cve/CVE-2018-5783
ubuntu.com/security/CVE-2018-20751
sourceforge.net/p/podofo/code/1954
cve.org/CVERecord?id=CVE-2018-20751
suse.com/security/cve/CVE-2017-5852
suse.com/security/cve/CVE-2017-5853
suse.com/security/cve/CVE-2017-5854
suse.com/security/cve/CVE-2017-5855
suse.com/security/cve/CVE-2017-5886
suse.com/security/cve/CVE-2017-6840
suse.com/security/cve/CVE-2017-6844
suse.com/security/cve/CVE-2017-6845
suse.com/security/cve/CVE-2017-6847
suse.com/security/cve/CVE-2017-7378
suse.com/security/cve/CVE-2017-7379
suse.com/security/cve/CVE-2017-7380
suse.com/security/cve/CVE-2017-7381
suse.com/security/cve/CVE-2017-7382
suse.com/security/cve/CVE-2017-7383
suse.com/security/cve/CVE-2017-7994
suse.com/security/cve/CVE-2017-8787
suse.com/security/cve/CVE-2018-11256
suse.com/security/cve/CVE-2018-14320
suse.com/security/cve/CVE-2018-5295
suse.com/security/cve/CVE-2018-5296
suse.com/security/cve/CVE-2018-5308
suse.com/security/cve/CVE-2018-5309
suse.com/security/cve/CVE-2018-8001
suse.com/security/cve/CVE-2019-9687
suse.com/security/cve/CVE-2018-12983
suse.com/security/cve/CVE-2018-20797
suse.com/security/cve/CVE-2019-10723