Description
OpenWrt is a Linux operating system targeting embedded devices. Prior to 25.12.5, the cgi-download handler in cgi-io authorizes the requested path against the caller's ubus session file ACL before canonicalization, and rpcd session.c uses fnmatch() without FNM_PATHNAME, allowing traversal such as an allowed wildcard prefix followed by ../ to read root-readable files including /etc/shadow. This vulnerability is fixed in 25.12.5.
Published: 2026-07-15
Score: 4.9 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The flaw resides in OpenWrt’s cgi-download handler, which validates the requested path against the caller’s ubus session file ACL before performing canonicalization. The lack of path normalisation allows an attacker to specify a path that matches an authorised wildcard prefix followed by "/../", enabling traversal into directories containing system files. An attacker can therefore read any root‑readable file such as "/etc/shadow", obtaining sensitive credentials. This constitutes a remote file read vulnerability.

Affected Systems

The vulnerability applies to all OpenWrt releases before version 25.12.5. Any device running an affected OpenWrt firmware that exposes the cgi-io download interface is at risk. The vendor does not list specific model or patch level variants beyond the excluded 25.12.5 release.

Risk and Exploitability

The CVSS score is 4.9, indicating a moderate impact with limited privileges needed; the EPSS score is less than 1%, suggesting a low probability of exploitation at present. The vulnerability is not listed in the CISA KEV catalog. The likely attack vector is initiating an HTTP request to the vulnerable cgi-download endpoint from an unauthorised client, assuming network exposure of the interface. No additional exploitation conditions are described beyond the path traversal privilege issue.

Generated by OpenCVE AI on July 31, 2026 at 03:06 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the OpenWrt firmware to 25.12.5 or later, which removes the path traversal check.
  • If immediate upgrade is not possible, disable or restrict access to the cgi-io download endpoint through local firewall rules until a fix is applied.
  • Ensure ubus session ACLs are strictly defined and do not permit wildcard prefixes that could be abused for traversal.

Generated by OpenCVE AI on July 31, 2026 at 03:06 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 16 Jul 2026 00:00:00 +0000

Type Values Removed Values Added
First Time appeared Openwrt
Openwrt openwrt
Vendors & Products Openwrt
Openwrt openwrt

Wed, 15 Jul 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Wed, 15 Jul 2026 18:30:00 +0000

Type Values Removed Values Added
Description OpenWrt is a Linux operating system targeting embedded devices. Prior to 25.12.5, the cgi-download handler in cgi-io authorizes the requested path against the caller's ubus session file ACL before canonicalization, and rpcd session.c uses fnmatch() without FNM_PATHNAME, allowing traversal such as an allowed wildcard prefix followed by ../ to read root-readable files including /etc/shadow. This vulnerability is fixed in 25.12.5.
Title OpenWrt: ACL bypass and arbitrary root file read via cgi-io cgi-download
Weaknesses CWE-22
References
Metrics cvssV3_1

{'score': 4.9, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-15T19:31:18.877Z

Reserved: 2026-07-14T22:32:17.731Z

Link: CVE-2026-62947

cve-icon Vulnrichment

Updated: 2026-07-15T19:31:06.291Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-31T03:15:04Z

Weaknesses
  • CWE-22

    Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')