Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessEstablish SimpleX contact with target agent
-
DeliveryRename own profile displayName to an allowlisted value
-
ExploitSend DM to gateway
-
ExecutionAllowlist matches spoofed profile name
-
ImpactGain unauthorized agent access
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Access control enforcement
MITRE ATT&CK
1 technique across 1 tactic: Defense Evasion The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires ALL of: (1) the SimpleX Gateway adapter enabled in hermes-agent; (2) the operator having configured SIMPLEX_ALLOWED_USERS with contacts' human display names rather than numeric contactIds (a non-default choice, but one the UI actively encourages since it only surfaces display names) - if the allowlist uses numeric contactIds the bug is not reachable; (3) the attacker being an established SimpleX contact able to message the agent; and (4) the attacker knowing an allowlisted display-name value to impersonate. The attacker then renames their self-asserted profile displayName (source.user_name) to that value. Limiting factors: high attack complexity (AC:H), the non-default and knowledge-dependent allowlist configuration, and the need for prior contact establishment - all consistent with the description's 'exploitation appears to be difficult'. Impact is limited to unauthorized authorization into the agent, not code execution. |
| Impact | This is a genuine-but-low-priority issue whose signals are internally consistent - no inflated CVSS to correct here. The vendor CVSS 4.0 base score is 1.3 (AV:N/AC:H/PR:L/UI:N with only VC:L/VI:L/VA:L partial impacts), EPSS is 0.23% (14th percentile), and SSVC records Exploitation=poc, Automatable=no, Technical Impact=partial. All four frameworks agree this is low-severity, non-automatable, and only partially impactful. POC is public but there is NO CISA KEV listing, so exploitation status is publicly available exploit code exists - not active exploitation; the two must not be conflated. The high attack complexity (AC:H) is corroborated by both the description ('high complexity level', 'exploitation appears to be difficult') and the source diff: the flaw only bites when an operator populates the SIMPLEX_ALLOWED_USERS allowlist with human display names AND the attacker knows an allowlisted name to impersonate. The attack vector is nominally network (SimpleX messaging), but reach requires being an established SimpleX contact of the agent, which tempers the 'remote' framing. Net: a real authorization-bypass logic bug worth patching on niche deployments, but not an urgent, widely-exploitable priority. |
| Exploit ScenarioDerived | An operator runs hermes-agent's SimpleX gateway and populates SIMPLEX_ALLOWED_USERS with a trusted contact's human display name (which the SimpleX UI naturally surfaces) rather than the numeric contactId. A malicious SimpleX contact edits their own self-asserted profile display name to match an allowlisted value, then sends a direct message; the gateway's _is_user_authorized() matched the attacker-controlled profile name and grants them agent access. Public exploit/POC code is referenced in the CVE (GitHub issue #44729), but there is no evidence of active exploitation. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 16, 2026
SimpleX Gateway authorization bypass in NousResearch hermes-agent 2026.6.5 allows an established SimpleX contact to authorize themselves to the agent by renaming their own profile display name to a value already present in the SIMPLEX_ALLOWED_USERS allowlist. The gateway's allowlist check matched the contact's self-asserted, remote-controlled profile name (source.user_name) alongside the numeric contactId, so any contact who guesses or knows an allowlisted display name can be treated as trusted without holding the real identity. Exploitation requires the SimpleX platform adapter to be enabled, an allowlist configured with human display names rather than numeric contactIds, a pre-existing contact relationship, and knowledge of an allowlisted name (remote, high complexity, authenticated per PR:L); publicly available exploit code exists and EPSS is only 0.23% (14th percentile), with no CISA KEV listing and no confirmed in-the-wild exploitation. Impact is limited to unauthorized authorization into the agent, not code execution.
RemediationAI
Vendor fix: upstream fix available (commit 490c486ff65b766d9de0fe0e6f26e1778aaa8fb3, merged via pull request https://github.com/NousResearch/hermes-agent/pull/41246); a released patched version is not independently confirmed, so deploying the commit or a build containing it is the primary fix, and operators should track https://github.com/NousResearch/hermes-agent/issues/44730 for the release that carries it. Until that build is deployed, the most effective compensating control is to reconfigure SIMPLEX_ALLOWED_USERS to use numeric contactIds instead of display names - with numeric IDs the vulnerable match on source.user_name is never the deciding factor and the bug is unreachable - at the cost of operational effort, since the SimpleX UI surfaces display names rather than numeric IDs and operators must obtain the IDs by other means. Alternative compensating controls with their trade-offs: disable the SimpleX platform adapter entirely if the agent does not need SimpleX messaging (removes the exposure completely but cuts the channel), or strictly limit which contacts can reach the agent by accepting messages only from already-established, vetted contacts and monitoring for unexpected profile renames (partial, since the bug itself depends on the attacker being an established contact). Note that after applying the fix, allowlists containing remote profile display names will no longer match - configurations must be updated to numeric contactIds or the CLI-assigned local display name, otherwise legitimate contacts may be locked out.
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
The issue is an improper access control weakness (CWE-284) in hermes-agent's SimpleX messaging integration. In the SimpleX protocol, a contact has two distinct name forms: a numeric contactId (stable, assigned by the CLI) and a profile displayName that the remote party sets for itself and can change at any time. The adapter at plugins/platforms/simplex/adapter.py populated the session's user_id with the numeric contactId and user_name with the peer's self-asserted profile display name, while the gateway's _is_user_authorized() in gateway/run.py added both the numeric id and source.user_name to the set of allowlist candidates. Because profile display names are attacker-controlled and not unique, the authorization decision could be satisfied by a remote-controlled value, letting a contact impersonate an allowlisted user by renaming their profile. The upstream fix introduces a separate field, user_id_alt, carrying the contact's localDisplayName - the alias the SimpleX CLI assigns and deduplicates locally (e.g. alice, alice_1) and which a remote party cannot force to collide with another contact - and removes source.user_name from the allowlist matching entirely, with tests updated to assert that only the numeric contactId or local alias authorize.
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:H/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P
AC:H because exploitation needs a non-default display-name allowlist plus knowledge of an allowlisted value; PR:L as the attacker must be an established SimpleX contact; impacts limited to partial unauthorized agent access.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
Lifecycle Timeline
2DescriptionCVE.org
A vulnerability was detected in NousResearch hermes-agent 2026.6.5. Affected by this vulnerability is an unknown functionality of the file hermes-agent/plugins/platforms/simplex/adapter.py of the component SimpleX Gateway Authorization. The manipulation of the argument contactId results in improper access controls. The attack may be launched remotely. A high complexity level is associated with this attack. The exploitation appears to be difficult. The exploit is now public and may be used. The patch is identified as 490c486ff65b766d9de0fe0e6f26e1778aaa8fb3. Applying a patch is advised to resolve this issue.
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.
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-49046
GHSA-6r3x-gc73-h69w
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB