Hermes Agent
CVE-2026-53869
HIGH
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify exposed Hermes Agent host
-
DeliveryLure victim to attacker-controlled page
-
ExploitServe JS that opens WebSocket to rebindable hostname
-
ExecutionDNS rebinds to 127.0.0.1 bypassing Host/Origin
-
PersistWebSocket upgrade skips FastAPI middleware
-
ImpactInject commands into /api/pty or read terminal stream
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Authentication required for critical functions
MITRE ATT&CK
1 technique across 1 tactic: Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Hermes Agent prior to 0.16.0 must be running and listening on a host reachable from the victim's browser (typical default: a loopback or LAN bind on a developer workstation), and the same user must load an attacker-controlled page in a browser on that host - DNS rebinding is the delivery mechanism, so UI in a browser context is required. Exploitation specifically targets the WebSocket endpoints /api/pty, /api/ws, /api/pub, and /api/events; the bug does not affect plain HTTP routes because FastAPI middleware still validates those. The attacker must also win a DNS-rebind race against browser/OS DNS caching, which adds practical complexity even though no Hermes-side authentication is needed. |
| Impact | The vendor CVSS 4.0 vector (AV:N/AC:L/PR:N/UI:N, VA:H only) understates real impact and overstates ease: the description clearly says attackers can inject commands and read terminal output, which is high confidentiality and integrity impact, not just availability, and DNS rebinding always requires a victim to load attacker content in a browser (UI required) plus winning a TTL/rebind race (non-trivial complexity). EPSS and KEV data were not provided, and no public PoC is referenced - exploitation is plausible but currently theoretical, with VulnCheck as the original reporter. Real-world risk is highest for developer/workstation deployments of Hermes Agent that bind to localhost and are reachable from any browser tab on the same host; server or headless installs without a browsing user are largely out of reach. Treat as a high-priority patch for desktop users, medium-priority elsewhere; the mismatch between the published 8.7 score and the actual impact metrics should be noted when triaging. |
| Exploit ScenarioDerived | A developer running Hermes Agent on their laptop visits an attacker-controlled web page; the page's JavaScript opens a WebSocket to a hostname the attacker briefly resolves to a public IP (passing the same-origin policy), then rebinds the DNS record to 127.0.0.1 so subsequent WebSocket frames hit the local /api/pty endpoint. Because the Host/Origin middleware never fires on the upgrade, the connection is accepted and the attacker streams commands into the victim's shell or reads terminal output. No public PoC is referenced, but the technique is a well-documented variant of standard DNS rebinding against localhost services. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 17, 2026
DNS rebinding in NousResearch Hermes Agent prior to 0.16.0 allows remote attackers to reach privileged local WebSocket endpoints (/api/pty, /api/ws, /api/pub, /api/events) by tricking a victim's browser into resolving an attacker-controlled hostname to the agent's loopback address, bypassing Host and Origin checks. Because FastAPI HTTP middleware does not run on WebSocket upgrade requests, the validation layer is silently skipped, letting attackers inject commands into the PTY or stream terminal output. No public exploit has been identified at time of analysis, but VulnCheck reported the issue and an upstream patch is available.
RemediationAI
Vendor-released patch: Hermes Agent 0.16.0 (release tag v2026.6.5, https://github.com/NousResearch/hermes-agent/releases/tag/v2026.6.5); the fix corresponds to upstream commit d9ec90585cf7616b5972e44cf8d92bb569fc3feb and PRs #30221 and #31685, which move Host/Origin validation into a WebSocket-aware dependency so it runs on upgrade requests. Operators who cannot upgrade immediately should bind the agent to a non-loopback interface only behind an authenticating reverse proxy, or firewall outbound DNS for the agent's listening host so browser-driven rebinding cannot resolve external names to 127.0.0.1 - note this breaks any legitimate browser-based local UI. As a lighter compensating control, restrict the listening port with a host firewall rule that allows only the local user's browser process (per-app firewall) or disable the /api/pty endpoint via configuration if PTY access is not needed, accepting loss of in-browser terminal features. Consult the VulnCheck advisory at https://www.vulncheck.com/advisories/hermes-agent-dns-rebinding-bypass-via-websocket-endpoints for current guidance.
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in pypi
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Hermes Agent exposes a FastAPI-based local control plane that brokers a pseudo-terminal (/api/pty), generic WebSocket channel (/api/ws), pub/sub (/api/pub), and server-sent events (/api/events). The vendor relies on HTTP middleware to enforce Host/Origin allow-lists as a defense against cross-origin attacks from a browser context, but Starlette/FastAPI runs middleware only on the HTTP request path - WebSocket upgrades short-circuit that pipeline and reach the endpoint handlers directly. This matches CWE-306 (Missing Authentication for Critical Function): a security-critical check exists in code but is not invoked on a reachable code path, so the WebSocket endpoints behave as if unauthenticated when targeted via DNS rebinding (where a malicious site rebinds its A record to 127.0.0.1 after the same-origin check is satisfied).
Know when Hermes Agent 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
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Network-reachable WebSocket with no auth (AV:N, PR:N), but DNS rebinding requires winning a TTL race (AC:H) and a victim browsing an attacker page (UI:R); PTY command injection yields full C/I/A:H.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Hermes Agent before 0.16.0 contains a DNS rebinding vulnerability in WebSocket endpoints that allows remote attackers to bypass Host and Origin validation. FastAPI HTTP middleware does not execute for WebSocket upgrade requests on /api/pty, /api/ws, /api/pub, and /api/events endpoints, enabling attackers to exploit DNS rebinding and inject malicious commands or read terminal output.
Blast Radius
ecosystem impact- 1 pypi packages depend on hermes-agent (1 direct, 0 indirect)
Ecosystem-wide dependent count for version 0.16.0.
Executive ViewAI
NousResearch Hermes Agent versions below 0.16.0 are vulnerable to DNS rebinding attacks (CVSS 8.7) that allow remote attackers to bypass access controls and inject commands into privileged terminal endpoints, potentially leading to system compromise. No public exploit identified at time of analysis. Any organization operating vulnerable versions faces immediate risk to system integrity and data confidentiality.
Apply vendor patch: version 0.16.0 or later
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Affected Products (CPE)CVE.org
More in Hermes Agent
View allRemote code execution in NousResearch Hermes Agent 0.18.2-0.21.0 allows an unauthenticated attacker to execute arbitrary
Remote command injection in NousResearch hermes-agent allows unauthenticated attackers to execute arbitrary OS commands
Path traversal in NousResearch hermes-agent (all versions through 2026.5.16) exposes arbitrary server-side files via the
Path traversal in NousResearch hermes-agent through version 2026.4.16 allows remote unauthenticated attackers to bypass
Remote sandbox escape in NousResearch hermes-agent versions up to 2026.4.16 allows unauthenticated attackers to manipula
Path traversal in NousResearch hermes-agent 0.8.0 exposes arbitrary server-side files to unauthenticated remote attacker
Remote code/prompt injection in NousResearch Hermes Agent through 0.12.0 stems from improper neutralization in the _comp
Remote injection in NousResearch Hermes Agent through version 2026.4.30 allows unauthenticated attackers to manipulate t
Code injection in NousResearch hermes-agent 2026.4.23 allows remote unauthenticated attackers to inject and execute arbi
Improper output escaping in NousResearch Hermes Agent versions up to 2026.4.16 allows remote unauthenticated attackers t
Remote injection vulnerability in NousResearch hermes-agent versions up to 2026.4.23 enables unauthenticated attackers t
Uncontrolled resource consumption in NousResearch hermes-agent (all versions through 2026.4.30) allows remote unauthenti
GHSA-4pqm-j46f-795x
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB