SEPTEMBER 19, 2026
Live Feed
Back to database
Case File

CVE-2026-77814

HIGH · CVSS 7.5 EPSS 0.41% Public Exploit

Source: NVD + CISA KEV + EPSS · Published 2026-08-21 · Last synced 2026-09-18

CyberRota Analysis

AI-Generated

The vulnerability arises from improper path validation in the scripts/iib/api.py file, where the comparison of requested paths against allowed parent directories fails to account for path separators. This oversight can lead to unauthorized file disclosures, allowing attackers to access files outside the intended directory confinement, particularly in network-exposed deployments of the Stable Diffusion WebUI. Organizations utilizing this software, especially those with enabled access control settings, should prioritize remediation to mitigate the risk of sensitive data exposure.

Public Exploit Signal

A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.

Note: these links are listed for security research and verification purposes only.

CVE
CVE-2026-77814
Severity
HIGH
CVSS
7.5
EPSS
0.41%

Original NVD Description

is_path_trusted in scripts/iib/api.py compares the requested path against each allowed parent directory with path.startswith(parent_path), without appending a path separator. A directory whose name merely begins with an allowed path therefore satisfies the comparison, so where /data/images is allowed a request for /data/images_private/secret.txt is treated as trusted and served by FileResponse, disclosing files the confinement was meant to exclude. Whether the check applies depends on get_enable_access_control in scripts/iib/tool.py: it returns true when IIB_ACCESS_CONTROL is set to enable, false when set to disable, and otherwise true when the host Stable Diffusion WebUI was started with share, ngrok, listen or server_name, falling back to false. Confinement is therefore active in the network-exposed WebUI deployments that rely on it, while a standalone run with no such option serves every readable file regardless of this flaw. The fix compares against parent_path joined with os.sep.