Skip to content

Instantly share code, notes, and snippets.

@jwang-a
Created December 26, 2021 03:15
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jwang-a/cb4b6e9551457aa299066076b836a2cd to your computer and use it in GitHub Desktop.
Save jwang-a/cb4b6e9551457aa299066076b836a2cd to your computer and use it in GitHub Desktop.
CVE-2021-4407 reference
[Vulnerability Type Other]
CWE-697: Incorrect Comparison
[Vendor of Product]
unicorn-engine
[Affected Product Code Base]
unicorn engine - <=2.0.0
[Affected Component]
uc.c, split_region
[Attack Type]
Local
[Impact Code execution]
true
[Attack Vectors]
run specially crafted code withing unicorn with uc_mem_map_ptr() and uc_mem_unmap() supported
[Description]
An issue was discovered in split_region in uc.c in Unicorn Engine through 1.0.3 and 2.x through 2.0.0-rc4.
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.
[Discoverer]
jwang@Balsn
[Reference]
Fix Patch : https://github.com/unicorn-engine/unicorn/commit/c733bbada356b0373fa8aa72c044574bb855fd24#diff-f978cc716461a0e6511a9a54b7931a714240e15fdc97ca002f75d36bda3af915
Detailed Analysis : https://github.com/jwang-a/CTF/blob/master/MyChallenges/Pwn/Unicorns_Aisle/UnicornsAisle.pdf
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment