Origin bypass in Wails BindingsAllowedOrigins wildcard matching
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Passive
- Attack complexity
- Low
- Attack requirements
- Present
- Impact type
- —
- Confidentiality · integrity · availability
- High · High · Low
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub.
Summary
Wails, a Go framework for desktop applications with web front ends, is affected from 2.0.0 before 2.13.0. The BindingsAllowedOrigins check turns wildcard patterns into an unrestricted regular expression (CWE-625), so a trailing or partial-label wildcard placed after an allowed domain can match an attacker-controlled lookalike origin. Such an origin can then invoke the application's bound Go methods over IPC, and the impact depends on what those methods expose. A complete-component subdomain wildcard is not affected.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
Description from the CNA
Wails is a framework for building desktop applications using Go and web technologies. From 2.0.0 until 2.13.0, BindingsAllowedOrigins in v2/internal/frontend/originvalidator/originValidator.go passes wildcard patterns to wildcardPatternToRegex, which expands every asterisk to an unrestricted regular-expression match. When an application configures a trailing or partial-label wildcard immediately after an allowed domain, an attacker-controlled lookalike origin can match the allowed suffix and invoke bound Go methods through IPC. A complete-component subdomain wildcard is an unaffected configuration. The resulting confidentiality, integrity, and availability impact depends on the file, database, command, credential, or other operations exposed by the application's bound methods. This issue is fixed in version 2.13.0.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| wailsapp | wails | 2.0.0 to before 2.13.0 | 2.13.0 | Patch available | CNA |
| — | github.com/wailsapp/wails/v2 (Go) | 2.0.0 to before 2.13.0 | 2.13.0 | Patch available | GHSA-47hv-j4px-h3c9 |
- wails Vendorwailsapp Affected 2.0.0 to before 2.13.0 Fixed in 2.13.0 Patch available CNA
- github.com/wailsapp/wails/v2 (Go) Vendor— Affected 2.0.0 to before 2.13.0 Fixed in 2.13.0 Patch available GHSA-47hv-j4px-h3c9
Remediation
Update wails to version 2.13.0 or later. For Go modules, use github.com/wailsapp/wails/v2 at version 2.13.0 or later.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
- Fix · CNA wails (wailsapp) Fixed in 2.13.0
- Fix · GHSA-47hv-j4px-h3c9 github.com/wailsapp/wails/v2 (Go) Fixed in 2.13.0 Advisory →
Vendor assessments
Timeline
- 2026-11-05 Threatist record created from CVE-2026-34157
- 2026-11-06 Affected versions changed · Red Hat
- 2026-11-06 CVSS score added · Red Hat
- 2026-11-07 Priority changed: MEDIUM → LOW
References
Sources
- CVE-2026-34157 · CVE Program
- CVE-2026-34157 · NVD
- FIRST EPSS
- CVE-2026-34157 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences