CVE-2019-20053
An invalid memory address dereference was discovered in the canUnpack function in p_mach.cpp in...
An invalid memory address dereference was discovered in the canUnpack function in p_mach.cpp in UPX 3.95 via a crafted Mach-O file.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- Low
- Privileges needed
- None
- User interaction
- Required
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
5.5
An invalid memory address dereference was discovered in the canUnpack function in p_mach.cpp in UPX 3.95 via a crafted Mach-O file.
- Record
CVE-2019-20053- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - CVSS 2.0
- 4.3 Medium
AV:N/AC:M/Au:N/C:N/I:N/A:P - Weakness
- CWE-119
- Updated
- 2026-11-02
CVE List No score
An invalid memory address dereference was discovered in the canUnpack function in p_mach.cpp in UPX 3.95 via a crafted Mach-O file.
- Record
CVE-2019-20053- Updated
- 2026-11-02
EUVDEUVD-2019-10609 No score
An invalid memory address dereference was discovered in the canUnpack function in p_mach.cpp in UPX 3.95 via a crafted Mach-O file.
- Record
EUVD-2019-10609- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-phmx-286h-jcc3
5.5
An invalid memory address dereference was discovered in the canUnpack function in p_mach.cpp in...
An invalid memory address dereference was discovered in the canUnpack function in p_mach.cpp in UPX 3.95 via a crafted Mach-O file.
- Record
GHSA-phmx-286h-jcc3- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Weakness
- CWE-20, CWE-119
- Updated
- 2026-11-02
OSVALPINE-CVE-2019-20053
5.5
An invalid memory address dereference was discovered in the canUnpack function in p_mach.cpp in UPX 3.95 via a crafted Mach-O file.
- Record
ALPINE-CVE-2019-20053- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-03
OSVBELL-CVE-2019-20053
5.5
CVE-2019-20053 does not affect BellSoft software
- Record
BELL-CVE-2019-20053- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
Show 7 moreShow less
OSV
5.5
An invalid memory address dereference was discovered in the canUnpack function in p_mach.cpp in UPX 3.95 via a crafted Mach-O file.
- Record
CVE-2019-20053- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVDEBIAN-CVE-2019-20053
5.5
An invalid memory address dereference was discovered in the canUnpack function in p_mach.cpp in UPX 3.95 via a crafted Mach-O file.
- Record
DEBIAN-CVE-2019-20053- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2019-20053
5.5
An invalid memory address dereference was discovered in the canUnpack function in p_mach.cpp in UPX 3.95 via a crafted Mach-O file.
- Record
UBUNTU-CVE-2019-20053- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVMGASA-2020-0096 No score
Updated upx packages fix security vulnerabilities
The updated packages fix security vulnerabilities:
PackLinuxElf64::unpack in p_lx_elf.cpp in UPX 3.95 allows remote attackers to cause a denial of service (double free), limit the ability of a malware scanner to operate on the entire original data, or possibly have unspecified other impact via a crafted file. (CVE-2018-11243)
A heap-based buffer over-read was discovered in canUnpack in p_mach.cpp in UPX 3.95 via a crafted Mach-O file. (CVE-2019-20021)
A floating-point exception was discovered in PackLinuxElf::elf_hash in p_lx_elf.cpp in UPX 3.95. The vulnerability causes an application crash, which leads to denial of service. (CVE-2019-20051)
An invalid memory address dereference was discovered in the canUnpack function in p_mach.cpp in UPX 3.95 via a crafted Mach-O file. (CVE-2019-20053)
A denial of service in PackLinuxElf32::PackLinuxElf32help1(). (CVE-2019-1010048)
- Record
MGASA-2020-0096- Updated
- 2026-11-02
OSVopenSUSE-SU-2020:0163-1 No score
Security update for upx
This update for upx to version 3.96 fixes the following issues:
-
CVE-2019-1010048: Fixed a denial of service in PackLinuxElf32::PackLinuxElf32help1() (boo#1141777).
-
CVE-2019-14296: Fixed a denial of service in canUnpack() (boo#1143839).
-
CVE-2019-20021: Fixed a heap-based buffer over-read in canUnpack() (boo#1159833).
-
CVE-2019-20053: Fixed a denial of service in canUnpack() (boo#1159920).
-
CVE-2018-11243: Fixed a denial of service in PackLinuxElf64::unpack() (boo#1094138).
-
Update to version 3.96
- Bug fixes: [CVE-2019-1010048, boo#1141777] [CVE-2019-14296, boo#1143839] [CVE-2019-20021, boo#1159833] [CVE-2019-20053, boo#1159920] [CVE-2018-11243 partially - ticket 206 ONLY, boo#1094138]
-
Update to version 3.95
- Flag --force-pie when ET_DYN main program is not marked as DF_1_PIE
- Better compatibility with varying layout of address space on Linux
- Support for 4 PT_LOAD layout in ELF generated by binutils-2.31
- bug fixes, particularly better diagnosis of malformed input
- bug fixes - see https://github.com/upx/upx/milestone/4
- Record
openSUSE-SU-2020:0163-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2020:0180-1 No score
Security update for upx
This update for upx to version 3.96 fixes the following issues:
-
CVE-2019-1010048: Fixed a denial of service in PackLinuxElf32::PackLinuxElf32help1() (boo#1141777).
-
CVE-2019-14296: Fixed a denial of service in canUnpack() (boo#1143839).
-
CVE-2019-20021: Fixed a heap-based buffer over-read in canUnpack() (boo#1159833).
-
CVE-2019-20053: Fixed a denial of service in canUnpack() (boo#1159920).
-
CVE-2018-11243: Fixed a denial of service in PackLinuxElf64::unpack() (boo#1094138).
-
Update to version 3.96
- Bug fixes: [CVE-2019-1010048, boo#1141777] [CVE-2019-14296, boo#1143839] [CVE-2019-20021, boo#1159833] [CVE-2019-20053, boo#1159920] [CVE-2018-11243 partially - ticket 206 ONLY, boo#1094138]
-
Update to version 3.95
- Flag --force-pie when ET_DYN main program is not marked as DF_1_PIE
- Better compatibility with varying layout of address space on Linux
- Support for 4 PT_LOAD layout in ELF generated by binutils-2.31
- bug fixes, particularly better diagnosis of malformed input
- bug fixes - see https://github.com/upx/upx/milestone/4
This update was imported from the openSUSE:Leap:15.1:Update update project.
- Record
openSUSE-SU-2020:0180-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2024:11486-1 No score
upx-3.96-3.2 on GA media
These are all security issues fixed in the upx-3.96-3.2 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:11486-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
upxAlpine:v3.12 |
before 3.96-r0 | 3.96-r0 |
upxAlpine:v3.13 |
before 3.96-r0 | 3.96-r0 |
upxAlpine:v3.14 |
before 3.96-r0 | 3.96-r0 |
upxAlpine:v3.15 |
before 3.96-r0 | 3.96-r0 |
upxAlpine:v3.16 |
before 3.96-r0 | 3.96-r0 |
upxAlpine:v3.17 |
before 3.96-r0 | 3.96-r0 |
upxAlpine:v3.18 |
before 3.96-r0 | 3.96-r0 |
upxAlpine:v3.19 |
before 3.96-r0 | 3.96-r0 |
upxAlpine:v3.20 |
before 3.96-r0 | 3.96-r0 |
upxAlpine:v3.21 |
before 3.96-r0 | 3.96-r0 |
Show 13 moreShow less
| Package | Affected | Fixed |
|---|---|---|
upxAlpine:v3.22 |
before 3.96-r0 | 3.96-r0 |
upxAlpine:v3.23 |
before 3.96-r0 | 3.96-r0 |
upxAlpine:v3.24 |
before 3.96-r0 | 3.96-r0 |
upx-uclDebian:13 |
before 3.96-1 | 3.96-1 |
upx-uclDebian:14 |
before 3.96-1 | 3.96-1 |
upxMageia:7 From an advisory covering 5 CVEs |
before 3.96-1.mga7 | 3.96-1.mga7 |
uclMageia:7 From an advisory covering 5 CVEs |
before 1.03-16.1.mga7 | 1.03-16.1.mga7 |
upx-uclUbuntu:16.04:LTS |
All versions, plus listed versions 3.91-1 |
None known |
upx-uclUbuntu:18.04:LTS |
All versions, plus listed versions 3.94-23.94-33.94-4 |
None known |
upx-uclUbuntu:20.04:LTS |
All versions, plus listed versions 3.95-23.95-2build1 |
None known |
upxopenSUSE:Leap 15.1 From an advisory covering 5 CVEs |
before 3.96-lp151.3.3.1 | 3.96-lp151.3.3.1 |
upxSUSE:Package Hub 15 SP1 From an advisory covering 5 CVEs |
before 3.96-bp151.4.3.1 | 3.96-bp151.4.3.1 |
upxopenSUSE:Tumbleweed From an advisory covering 7 CVEs |
before 3.96-3.2 | 3.96-3.2 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| 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-2019-20053 is a medium vulnerability (CVSS 5.5) in Upx, published December 27, 2019. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.23%, the 69th percentile. Fixed in upx 3.96-r0.
References
github.com/upx/upx/issues/314
lists.opensuse.org/opensuse-security-announce/2020-02/msg00003.html
lists.opensuse.org/opensuse-security-announce/2020-02/msg00007.html
nvd.nist.gov/vuln/detail/CVE-2019-20053
github.com/advisories/GHSA-phmx-286h-jcc3
security.alpinelinux.org/vuln/CVE-2019-20053
Show 24 moreShow less
docs.bell-sw.com/security/cves/CVE-2019-20053
security-tracker.debian.org/tracker/CVE-2019-20053
advisories.mageia.org/MGASA-2020-0096.html
bugs.mageia.org/show_bug.cgi?id=26172
lists.opensuse.org/opensuse-updates/2020-02/msg00012.html
lists.opensuse.org/opensuse-updates/2020-02/msg00006.html
lists.fedoraproject.org/archives/list/[email protected]/thread/D7XU42G6MUQQXHWRP7DCF2JSIBOJ5GOO
ubuntu.com/security/CVE-2019-20053
github.com/upx/upx/commit/819c33fee2b2c33b96bef27a13cb20f2589819aa
cve.org/CVERecord?id=CVE-2019-20053
lists.opensuse.org/archives/list/[email protected]/thread/JFT4W6K4YZYWDA7IJZTH4U4XTFAQHQYY
bugzilla.suse.com/1094138
bugzilla.suse.com/1141777
bugzilla.suse.com/1143839
bugzilla.suse.com/1159833
bugzilla.suse.com/1159920
suse.com/security/cve/CVE-2018-11243
suse.com/security/cve/CVE-2019-1010048
suse.com/security/cve/CVE-2019-14296
suse.com/security/cve/CVE-2019-20021
suse.com/security/cve/CVE-2019-20053
lists.opensuse.org/archives/list/[email protected]/thread/PCHFXHDFQGPZW5PCPH6CZNEYQDQLG3GR
suse.com/security/cve/CVE-2017-16869
suse.com/security/cve/CVE-2020-24119