CVE-2021-44078 json
An issue was discovered in split_region in uc.c in Unicorn Engine before 2.0.0-rc5.
published 2021-12-26 4 y ago modified 2026-06-17 4 mo ago also PYSEC-2021-868 , EUVD-2021-0455
- cvss
- 8.1
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.5%
- EPSS 0.5% chance of exploitation in 30 days, percentile 46%
- public exploits
- 0
- none known
Summary
An issue was discovered in split_region in uc.c in Unicorn Engine before 2.0.0-rc5. It allows local attackers to escape the sandbox. An attacker must first obtain the ability to execute crafted code in the target sandbox in order to exploit this vulnerability. The specific flaw exists within the virtual memory manager. The issue results from the faulty comparison of GVA and GPA while calling uc_mem_map_ptr to free part of a claimed memory block. An attacker can leverage this vulnerability to escape the sandbox and execute arbitrary code on the host machine.
Patch / fix
- pypi unicorn 2.0.0rc1
Exploit prediction
0.55% chance of exploitation in the next 30 days, higher than 46% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 8.1 | CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H |
| NVD | 2.0 | 6.9 | AV:L/AC:M/Au:N/C:C/I:C/A:C |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | unicorn | <2.0.0rc1 |
2.0.0rc1 |
Classification
- Weakness
-
- CWE-697 Incorrect Comparison
References
-
github.com
/unicorn-engine/unicorn/commit/c733bbada356b0373fa8aa72c044574bb855fd24
patch, third-party-advisory
-
github.com
/unicorn-engine/unicorn/compare/2.0.0-rc4...2.0.0-rc5
patch, third-party-advisory, web
-
unicorn-engine.org
/changelog/
vendor-advisory, web
-
gist.github.com
/jwang-a/cb4b6e9551457aa299066076b836a2cd
third-party-advisory, web
-
github.com
/jwang-a/CTF/blob/master/MyChallenges/Pwn/Unicorns_Aisle/UnicornsAisle.pdf
third-party-advisory, web
Sources
- CVE List CVE-2021-44078
- NVD CVE-2021-44078
- OSV PYSEC-2021-868
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.