Submit #822026: NousResearch hermes-agent <= v2026.4.23 Improper Authentication (CWE-287)info

TitleNousResearch hermes-agent <= v2026.4.23 Improper Authentication (CWE-287)
Description# Technical Details An Authorization Bypass exists in the `_sync_anthropic_entry_from_credentials_file` method in `agent/credential_pool.py` of hermes-agent. The application fails to properly isolate multi-tenant credentials during pool rotation when a token encounters a rate limit. # Vulnerable Code File: agent/credential_pool.py Method: _sync_anthropic_entry_from_credentials_file Why: The method blindly reads the global `~/.claude/.credentials.json` file and overrides individual exhausted pool entries, collapsing distinct accounts into one. # Reproduction 1. Configure `auth.json` with multiple Anthropic `claude_code` tokens and set a specific token in `~/.claude/.credentials.json`. 2. Induce rate limiting (HTTP 429) for the tokens in the pool to trigger exhaustion and rotation. 3. Observe that `_sync_anthropic_entry_from_credentials_file` overwrites each exhausted token with the contents of the global credentials file. # Impact - Breaches isolated authorization boundaries, leading to Information Leakage and Authentication Bypass. - Completely negates failover and rate-limit bypassing functions.
Source⚠️ https://gist.github.com/YLChen-007/caf38652afeccbbd53a9d77152b6198d
User
 Eric-j (UID 98073)
Submission05/07/2026 15:45 (3 months ago)
Moderation06/01/2026 15:28 (25 days later)
StatusAccepted
VulDB entry367645 [NousResearch hermes-agent up to 2026.4.23 Credential Pool Synchronization agent/credential_pool.py _sync_anthropic_entry_from_credentials_file improper authentication]
Points20

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!