CVE-2026-49958: nesquena hermes-webui · Time-of-check Time-of-use (TOCTOU) Race Condition
Affects nesquena hermes-webuiSource CVE Database V5
Not known to be exploited · CVSS 4.3 Medium : upgrade to 0.51.303 when convenient.
Data as of 30 Oct 2026, 06:59 UTC
- EPSS
- 0.08% chance of exploitation in 30 days – higher than 0% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- Patch
- Available – fixed in 0.51.303
CVSS:4.0/AV:L/AC:H/AT:N/PR:L/UI:A/VC:N/VI:L/VA:H/SC:N/SI:N/SA:NExploitation evidence
Disclosed: evidence found.
CVE published 9 Jun 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 29 Oct 2026.
What to do
Upgrade nesquena/hermes-webui and hermes-webui to 0.51.303.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| nesquenahermes-webui | Affected
| Fixed in– |
GitHubnesquena/hermes-webuipkg:github/nesquena/hermes-webuiOther threats | Affected
| Fixed in
|
GitHubhermes-webuipkg:github/hermes-webuiOther threats | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
AI-suggested
If you cannot patch yet, avoid running hermes-webui versions prior to 0.51.303 in untrusted environments or restrict access to trusted users only.
Description
Hermes WebUI before version 0.51.303 contains a time-of-check time-of-use (TOCTOU) race condition vulnerability in the git_discard function within api/workspace_git.py that allows attackers to delete files outside the configured workspace boundary by replacing a validated path component with a symlink after validation but before deletion. Attackers can substitute a workspace-controlled path component with a symlink pointing to an external directory between the safe_resolve_ws() validation step and the subsequent Path.unlink() or shutil.rmtree() deletion call, causing the delete operation to follow the symlink and remove arbitrary files outside the workspace.
References
- github.com/nesquena/hermes-webui/releases/tag/v0.51.303 (opens in a new tab)
- github.com/nesquena/hermes-webui/pull/3702 (opens in a new tab)
- github.com/nesquena/hermes-webui/pull/3756 (opens in a new tab)
- github.com/nesquena/hermes-webui/commit/4580f584964d640b95c4ffc9245a21ab926bec73 (opens in a new tab)
- vulncheck.com/advisories/hermes-webui-toctou-race-condition-via-git-discard (opens in a new tab)