Skip to content
OpenAdvisories
Medium · 5.5 CVE-2026-81878 EUVD-2026-84503

radare2: Integer overflow causes heap out-of-bounds write in radare2 PYC parser

Published Sep 22, 2026 · Updated Sep 22, 2026 · Assigned by GitHub_M

Description

radare2 is a UNIX-like reverse engineering framework and command-line toolset. Prior to 6.2.0, radare2's CPython bytecode .pyc marshal parser was vulnerable because the CPython marshal readers accepted a 32-bit string length without rejecting values that overflow the size-plus-one allocation. The vulnerability is triggered by opening or inspecting a crafted .pyc file through r2 or rabin2. A length of 0xffffffff wrapped the allocation to zero before the common byte reader wrote attacker-controlled data and fill bytes beyond the heap allocation. This can cause heap memory corruption and denial of service; arbitrary code execution is possible but has not been demonstrated. This issue is fixed in version 6.2.0.

Affected products

VendorProductAffectedFixed
radareorg radare2 < 6.2.0 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Ubuntu 26.10 radare2 No fix yet —
Ubuntu 26.04 LTS radare2 No fix yet —
Ubuntu 16.04 LTS radare2 No fix yet —
Show 3 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu Pro 24.04 LTS radare2 No fix yet —
Ubuntu Pro 20.04 LTS radare2 No fix yet —
Ubuntu Pro 18.04 LTS radare2 No fix yet —
ReleasePackageFixed inAdvisory
openSUSE Leap 16.0 radare2 6.2.2-bp160.1.1 openSUSE-SU-2026:21988-1

Advisories 1

References