Skip to main content

radare2 CVE-2026-112077

| EUVDEUVD-2026-104060 MEDIUM
Protection Mechanism Failure (CWE-693)
2026-10-19 VulDB GHSA-x2f6-pg54-586w
6.3
CVSS 4.0 · Vendor: VulDB
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach exposed r2 HTTP /cmd endpoint
  2. Exploit
    Submit command through http.sandbox grain=all gap
  3. Impact
    Spawn process / execute arbitrary OS command

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V15 - Secure Coding and Architecture Protection mechanism completeness
Exploitation Conditions

Exploitation requires the radare2 HTTP server (=h or background =h&) to be explicitly started and bound to an interface reachable by an untrusted party; it is not running by default. The operator must be relying on http.sandbox=true for confinement, yet because cfg.sandbox.grain defaults to 'all', sandbox capabilities including exec are never actually revoked for /cmd commands, so the 'protection' can be bypassed to spawn processes. Limiting factors: the server is off by default (non-default deployment), http.auth is separate and disabled by default (the HTTP sandbox is explicitly not authentication), and the attack is rated high complexity/difficult. Patched in 6.2.4, which fixes the session sandbox policy to enforce restrictions per-thread independent of the local grain value.

Impact

This is a high-CVSS-context-but-low-real-risk issue in practice. The CVSS 4.0 vector (AV:N/AC:H/PR:N/UI:N, impacts VC:L/VI:L/VA:L, score 6.3) indicates a network-reachable flaw with no authentication but high attack complexity. Crucially, the CVSS vector's AC:H and the exploit-maturity field (E:X, meaning exploitation status is not defined) align with the maintainer's own account: this is a protection-mechanism-failure (CWE-693) sandbox-configuration weakness, not a default-reachable remote bug. There is no CISA KEV listing and no public exploit identified at time of analysis, and no EPSS score was supplied, so there is no signal of active or imminent widespread exploitation. The signals are therefore consistent rather than conflicting: a genuine but conditional weakness. Important nuance for prioritization - the maintainer explicitly states the report overstates severity: the r2 HTTP server defaults to http.sandbox=true, but cfg.sandbox.grain defaults to 'all', so process execution (exec) is never actually blocked for commands received via /cmd; the HTTP sandbox is also not authentication. The practical consequence when the endpoint IS reached by an untrusted party is arbitrary command execution, which is higher impact than the vendor's L/L/L rating implies - hence my independent assessment below rates impact higher while keeping AC:H to reflect the non-default exposure requirement. Net: low real-world priority for most users because the vulnerable server is off by default, but high impact for anyone who exposes the r2 HTTP server to untrusted networks.

Exploit ScenarioDerived

An analyst starts radare2's HTTP server (=h / =h&) and binds it to a network-reachable interface without http.auth, trusting that the default http.sandbox=true will confine remote commands. An attacker who can reach the /cmd endpoint submits a command that spawns a process, because cfg.sandbox.grain defaults to 'all' and exec is never actually blocked, achieving arbitrary OS command execution in the r2 user's context. No public exploit identified at time of analysis, and the attack is rated high complexity because it depends on this non-default, exposed deployment.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 19, 2026

radare2 6.2.0 and 6.2.2 fail to actually enforce confinement on commands submitted to its built-in HTTP server: when http.sandbox=true, requests to the /cmd endpoint are supposed to run under a restricted sandbox, but because cfg.sandbox.grain defaults to 'all', process-execution and other capabilities are never revoked, so a remote unauthenticated party who can reach the server can bypass the protection mechanism and spawn processes on the analyst's host. Exploitation is rated high complexity and non-default - the operator must have explicitly started the HTTP server (=h or background =h&) and exposed it to an untrusted network, and http.auth is disabled by default - so overall real-world risk is low despite a high-context CVSS assessment (C:H/I:H/A:H vs. the CNA's more conservative 6.3). No public exploit code or active exploitation was identified at time of analysis, and the vendor shipped a fix in 6.2.4.

RemediationAI

Vendor-released patch: upgrade to radare2 6.2.4 (https://github.com/radareorg/radare2/releases/tag/6.2.4), which incorporates commit 18fd12efa98a7d1977de7bdd379d8a848777b90f and enforces a fixed per-command HTTP sandbox policy independent of the local cfg.sandbox.grain value. If upgrading immediately is not possible, do not rely on http.sandbox=true as a confinement boundary on 6.2.0/6.2.2 - the maintainers confirm it does not block exec, so the effective mitigations are architectural: keep the server off entirely, or bind it to loopback only via http.bind so that only local clients reach /cmd (this removes remote exposure but does nothing against a local adversary), and enable http.auth as the actual access control since the sandbox is explicitly not authentication (trade-off: credentials in transit unless the endpoint is also network-restricted). Operators who must expose the endpoint can additionally narrow cfg.sandbox.grain to an explicit permission set such as !exec,!disk,!socket before enabling the local sandbox, accepting that commands may then break; because the pre-6.2.4 HTTP path only toggles cfg.sandbox without touching grain, this must be verified manually rather than assumed. Network-layer ACLs or a reverse proxy that allowlists client IPs are a further compensating control with the trade-off of added latency and a new component to keep patched. Treat any r2 HTTP server that has been reachable by untrusted parties as potentially abused and review the host for spawned processes and filesystem artifacts, and note that the separate static-file and upload endpoints are unaffected by this fix and still need their own exposure review.

Affected VersionsENISA

radare2 6.2.0
radare2 6.2.2

Affected Packages

euvd radare2 no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

radare2's HTTP reverse-tunnel server (libr/core/rtr_http.inc.c, built on rtr.c) exposes a /cmd/: path that pipes attacker-supplied r2 commands into the core via r_core_cmd_str_pipe(). The intended defense is a two-layer configuration: the http.sandbox boolean (default true) and the generic cfg.sandbox / cfg.sandbox.grain mechanism that gates capability classes such as exec, disk, socket and env through radare2's internal wrapper layer. The bug is a class CWE-693 (Protection Mechanism Failure) mismatch between those layers: the HTTP path toggled cfg.sandbox on for the duration of a command but never narrowed cfg.sandbox.grain, which defaults to 'all'. The sandbox therefore reported 'enabled' while still permitting every capability, including process execution, so the HTTP restriction was cosmetic. The upstream patch (commit 18fd12efa98a7d1977de7bdd379d8a848777b90f) replaces the toggle/restore hack with an explicit HttpSandboxPolicy captured once when the server starts, executed through r_sandbox_run(grain, ...) in a per-thread context so that remote commands run with no optional permissions (no exec, no new sockets, no network, no filesystem via sandbox wrappers, no env, no hidden paths) and cannot read, write or reset cfg.sandbox / cfg.sandbox.grain or queue deferred commands. The documentation added in the same commit clarifies that these are radare2 wrapper-level restrictions, not OS confinement, and that they do not synchronize access to the shared analysis state. Note this only concerns the /cmd endpoint; separate static-file and upload endpoints are unchanged, and the HTTP sandbox is explicitly not an authentication mechanism.

Know when Radare2 gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulDB) PRIMARY 6.3 MEDIUM
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N
vuln.today AI 8.1 HIGH

Network-reachable /cmd with no default auth gives AV:N/PR:N; non-default exposed server and difficult trigger give AC:H; successful bypass permits arbitrary process execution, so C/I/A:H.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulDB).

CVSS VectorVendor: VulDB

Attack Vector
Network
Attack Complexity
High
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

A vulnerability was detected in radareorg radare2 6.2.0/6.2.2. This issue affects the function r_core_cmd_str_pipe in the library libr/core/rtr_http.inc.c of the component HTTP Sandbox Policy Handler. Performing a manipulation results in protection mechanism failure. Remote exploitation of the attack is possible. The attack is considered to have high complexity. The exploitability is assessed as difficult. Upgrading to version 6.2.4 is capable of addressing this issue. The patch is named 18fd12efa98a7d1977de7bdd379d8a848777b90f. Upgrading the affected component is recommended. The pre-requisite of the vulnerability is reflected by the CVSS vector. One of the project maintainers explains: "There is a real sandbox configuration issue here, but the report overstates it. The HTTP server defaults to http.sandbox=true, so commands received through /cmd temporarily enable cfg.sandbox. However, cfg.sandbox.grain defaults to all, which means all sandbox capabilities - including exec - remain allowed. Therefore enabling the HTTP sandbox alone does NOT prevent commands from spawning processes. This only matters when the HTTP command endpoint is reachable by someone you do not trust. It is not a remote vulnerability by default: the HTTP server must first be started and exposed to the attacker."

Threat Intelligence Overview

EPSS Score
0.3%
Top 80% exploitable
Prevalence
Low
popular reverse-engineering tool but production/server-exposed footprint is niche
Data Quality
7 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

32
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +32
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2023-46570 CRITICAL POC
9.8 Oct 28

An out-of-bounds read in radare2 v.5.8.9 and before exists in the print_insn32 function of libr/arch/p/nds32/nds32-dis.h

CVE-2023-46569 CRITICAL POC
9.8 Oct 28

An out-of-bounds read in radare2 v.5.8.9 and before exists in the print_insn32_fpu function of libr/arch/p/nds32/nds32-d

CVE-2023-4322 CRITICAL POC
9.8 Aug 14

Heap-based Buffer Overflow in GitHub repository radareorg/radare2 prior to 5.9.0. Rated critical severity (CVSS 9.8), th

CVE-2026-6942 CRITICAL POC
9.3 Apr 23

OS command injection in radare2-mcp (the Model Context Protocol server that bridges the radare2 reverse-engineering fram

CVE-2022-1899 CRITICAL POC
9.1 May 26

Out-of-bounds Read in GitHub repository radareorg/radare2 prior to 5.7.0. Rated critical severity (CVSS 9.1), this vulne

CVE-2022-1297 CRITICAL POC
9.1 Apr 11

Out-of-bounds Read in r_bin_ne_get_entrypoints function in GitHub repository radareorg/radare2 prior to 5.6.8. Rated cri

CVE-2022-1296 CRITICAL POC
9.1 Apr 11

Out-of-bounds read in `r_bin_ne_get_relocs` function in GitHub repository radareorg/radare2 prior to 5.6.8. Rated critic

CVE-2023-5686 HIGH POC
8.8 Oct 20

Heap-based Buffer Overflow in GitHub repository radareorg/radare2 prior to 5.9.0. Rated high severity (CVSS 8.8), this v

CVE-2026-40499 HIGH POC
8.4 Apr 15

Command injection in radare2's PDB parser (versions <6.1.4) enables arbitrary command execution when analysts process ma

CVE-2026-40517 HIGH POC
8.4 Apr 22

Command injection in radare2 PDB parser (versions before 6.1.4) enables arbitrary OS command execution when users analyz

CVE-2017-16357 HIGH POC
7.8 Nov 01

In radare 2.0.1, a memory corruption vulnerability exists in store_versioninfo_gnu_verdef() and store_versioninfo_gnu_ve

CVE-2017-15932 HIGH POC
7.8 Oct 27

In radare2 2.0.1, an integer exception (negative number leading to an invalid memory access) exists in store_versioninfo

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy