Executive brief
Hermes WebUI, a web interface for managing AI models and services, is vulnerable to a resource exhaustion attack. An unauthenticated attacker can repeatedly request login options to force the server to perform excessive disk and processor work. This can lead to a denial-of-service condition, making the interface slow or completely unavailable for legitimate users.
Technical details
A resource exhaustion vulnerability exists in the passkey authentication flow of Hermes WebUI. The `/api/auth/passkey/options` endpoint is public by design but lacked rate limiting or storage caps for pending WebAuthn challenges. An unauthenticated attacker can send unlimited POST requests to this endpoint, causing the server to repeatedly rewrite a JSON challenge store file. This results in unbounded growth of the `.passkey_challenges.json` file and excessive CPU and disk I/O. The vulnerability is mitigated in version 0.51.270 by implementing global and per-context challenge caps, process-local locking during file mutations, and returning HTTP 429 (Too Many Requests) when limits are reached.
Affected products
- nesquena Hermes WebUI < 0.51.270
Timeline
- 2026-06-05: patched: Fix merged in PR #3624 and released in v0.51.270
- 2026-06-09: disclosed: CVE-2026-49955 published
References
- https://github.com/nesquena/hermes-webui/commit/58528a4d88b0fa4f7b822e31d6051c669769bd3b
- https://github.com/nesquena/hermes-webui/pull/3624
- https://github.com/nesquena/hermes-webui/pull/3674
- https://github.com/nesquena/hermes-webui/releases/tag/v0.51.270
- https://www.vulncheck.com/advisories/hermes-webui-resource-exhaustion-via-passkey-options