Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with low-privilege credentials
-
DeliverySend crafted input to list_tools endpoint
-
ExploitTrigger unbounded memory allocation in MCP tool
-
ExecutionExhaust agent process memory
-
ImpactDeny service to all users
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Memory allocation limits
|
| Exploitation Conditions | Exploitation requires a low-privilege authenticated account with access to the hermes-agent MCP tool interface - specifically the list_tools function in tools/mcp_tool.py. The CVSS 4.0 vector confirms PR:L (low privilege required) and AV:N (network-accessible), so the attacker must be authenticated but does not need administrative rights. No special non-default configuration is documented as required. Exploitation is limited to availability impact only (VA:L); there is no path to confidentiality or integrity compromise. Single-user or locally-deployed instances with no external user access are not realistically at risk. |
| Impact | Real-world risk is low-to-moderate for deployments that expose hermes-agent to untrusted or multi-tenant users. CVSS 4.0 scores this at 2.1, reflecting the low availability impact (VA:L) and the PR:L requirement - an authenticated low-privilege user is needed, which materially reduces the threat surface compared to unauthenticated vectors. There is no confidentiality or integrity impact (VC:N/VI:N), so this is strictly a denial-of-service issue, contradicting the 'Information Disclosure' tag applied in the input metadata. The CVSS E:P modifier confirms the public exploit is real. EPSS data is not provided, and the CVE is not listed in CISA KEV. Practically, this vulnerability is relevant primarily in multi-user or SaaS deployments of hermes-agent where untrusted low-privilege users can invoke the MCP tool interface; single-user or locally-deployed instances face minimal risk. The vendor's non-response to disclosure is a negative signal for patch availability. |
| Exploit ScenarioDerived | An authenticated low-privilege user with access to a multi-user hermes-agent deployment sends crafted input to the list_tools MCP endpoint, causing the agent process to allocate memory without bound proportional to the attacker-controlled payload. Repeated or sustained requests exhaust available memory, degrading or crashing the agent service for all users. A public proof-of-concept report documenting the resource amplification technique is available on GitHub, lowering the bar for exploitation. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 01, 2026
Uncontrolled memory allocation in NousResearch hermes-agent up to 0.18.2 allows a low-privileged remote attacker to exhaust memory resources by manipulating input to the list_tools function within the MCP Tool component (tools/mcp_tool.py). The vulnerability is a denial-of-service class issue (CWE-789) with low availability impact per the CVSS 4.0 vector, and a public proof-of-concept report describing resource amplification behavior has been published on GitHub. No vendor patch exists, as the vendor did not respond to coordinated disclosure.
RemediationAI
No vendor-released patch has been identified at time of analysis - the vendor did not respond to coordinated disclosure. As a compensating control, operators should restrict access to the MCP tool interface (specifically any endpoint or API surface that invokes list_tools) to fully trusted, authenticated users only, and avoid exposing hermes-agent to untrusted or external low-privilege accounts. Implementing rate limiting or request-size caps at the application or reverse-proxy layer can limit memory amplification potential. Monitoring for anomalous memory growth in the hermes-agent process can provide early warning. The public PoC at https://github.com/lche511/cve/blob/main/Hermes_MCP_Tool_Resource_Amplification_DoS_Report/REPORT.md should be reviewed to understand the specific input patterns that trigger the issue and inform any input-validation patches applied locally to tools/mcp_tool.py.
Affected VersionsENISA
Affected Packages
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
NousResearch hermes-agent is an AI agent framework that integrates with the Model Context Protocol (MCP) to enumerate and invoke external tools. The affected component is the list_tools function in tools/mcp_tool.py, which processes MCP tool listings. CWE-789 (Uncontrolled Memory Allocation) describes a root cause where an application allocates memory based on attacker-controlled input without imposing an upper bound, enabling resource exhaustion. The CPE cpe:2.3:a:nousresearch:hermes-agent:*:*:*:*:*:*:*:* covers all versions through 0.18.2. The public PoC, hosted at the GitHub repository lche511/cve and titled 'Hermes MCP Tool Resource Amplification DoS Report', characterizes this as a resource amplification attack - an attacker can craft input that causes the list_tools function to allocate disproportionate memory relative to request size.
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:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:P
Network-reachable DoS requiring low-privilege auth; no confidentiality or integrity impact per CWE-789 and CVSS 4.0 impact metrics.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
Lifecycle Timeline
3DescriptionCVE.org
A vulnerability was found in NousResearch hermes-agent up to 0.18.2. This vulnerability affects the function list_tools of the file tools/mcp_tool.py of the component MCP Tool. Performing a manipulation results in uncontrolled memory allocation. It is possible to initiate the attack remotely. The exploit has been made public and could be used. The vendor was contacted early about this disclosure but did not respond in any way.
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
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
EUVD-2026-69713
GHSA-mqg2-c725-2vx3
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB