UPX 4.0.0 Mach-O File p_lx_elf.cpp invert_pt_dynamic memory corruption
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 6.9 | $0-$5k | 0.00 |
Summary
A vulnerability has been found in UPX 4.0.0 and classified as critical. This impacts the function invert_pt_dynamic of the file p_lx_elf.cpp of the component Mach-O File Handler. Performing a manipulation results in memory corruption.
This vulnerability is known as CVE-2020-27796. Remote exploitation of the attack is possible. Furthermore, an exploit is available.
Details
A vulnerability classified as critical has been found in UPX 4.0.0. This affects the function invert_pt_dynamic of the file p_lx_elf.cpp of the component Mach-O File Handler. The manipulation with an unknown input leads to a memory corruption vulnerability. CWE is classifying the issue as CWE-119. The product performs operations on a memory buffer, but it can read from or write to a memory location that is outside of the intended boundary of the buffer. This is going to have an impact on confidentiality, integrity, and availability. The summary by CVE is:
A heap-based buffer over-read was discovered in the invert_pt_dynamic function in p_lx_elf.cpp in UPX 4.0.0 via a crafted Mach-O file.
The weakness was published 08/26/2022 as 392. It is possible to read the advisory at github.com. This vulnerability is uniquely identified as CVE-2020-27796 since 10/27/2020. Technical details and a public exploit are known.
The exploit is shared for download at 0day.today. It is declared as proof-of-concept.
There is no information about possible countermeasures known. It may be suggested to replace the affected object with an alternative product.
The vulnerability is also documented in the vulnerability database at 0day.today (39744). Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
Product
Name
Version
License
Website
- Product: https://github.com/upx/upx/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 7.5VulDB Meta Temp Score: 7.3
VulDB Base Score: 7.3
VulDB Temp Score: 6.9
VulDB Vector: 🔍
VulDB Reliability: 🔍
NVD Base Score: 7.8
NVD Vector: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
Exploiting
Class: Memory corruptionCWE: CWE-119
CAPEC: 🔍
ATT&CK: 🔍
Physical: Partially
Local: Yes
Remote: Yes
Availability: 🔍
Access: Public
Status: Proof-of-Concept
Download: 🔍
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
0day.today: 🔍
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: no mitigation knownStatus: 🔍
0-Day Time: 🔍
Timeline
10/27/2020 🔍08/26/2022 🔍
08/26/2022 🔍
04/11/2025 🔍
Sources
Product: github.comAdvisory: 392
Status: Confirmed
CVE: CVE-2020-27796 (🔍)
GCVE (CVE): GCVE-0-2020-27796
GCVE (VulDB): GCVE-100-207315
scip Labs: https://www.scip.ch/en/?labs.20161013
Entry
Created: 08/26/2022 09:03Updated: 04/11/2025 16:34
Changes: 08/26/2022 09:03 (39), 08/26/2022 09:05 (1), 09/05/2024 09:18 (23), 04/11/2025 16:34 (11)
Complete: 🔍
Cache ID: 216::103
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.