CVE-2026-40189 goshs has a file-based ACL authorization bypass in goshs state-changing routes

Critical 9.3 Published Updated

Unauthenticated attackers can bypass ACLs to upload, delete, or modify files in protected directories, potentially removing the ACL file to gain full access.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-40189?

CVE-2026-40189 is a critical missing authorization vulnerability in patrickhener goshs, published on 10 Apr 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

goshs is a SimpleHTTPServer written in Go. Prior to 2.0.0-beta.4, goshs enforces the documented per-folder .goshs ACL/basic-auth mechanism for directory listings and file reads, but it does not enforce the same authorization checks for state-changing routes. An unauthenticated attacker can upload files with PUT, upload files with multipart POST /upload, create directories with ?mkdir, and delete files with ?delete inside a .goshs-protected directory. By deleting the .goshs file itself, the attacker can remove the folder's auth policy and then access previously protected content without credentials. This results in a critical authorization bypass affecting confidentiality, integrity, and availability. This vulnerability is fixed in 2.0.0-beta.4.

Weakness: CWE-862

Which versions are affected by CVE-2026-40189?

3 open source packages ship an affected version, including github.com/patrickhener/goshs. It affects 1 product.

PackageAffectedFixed in
github.com/patrickhener/goshs GoAll versionsNone
github.com/patrickhener/goshs GoAll versions to 1.1.4None
github.com/patrickhener/goshs GoAll versions to 1.1.4None

Products include Goshs Goshs.

How do I fix CVE-2026-40189?

Upgrade to a fixed version.

Upgrade, and check permissions on every request on the server, not only in the interface. More about Missing authorization.

Is CVE-2026-40189 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-40189 exists.

Sources

Also known as GHSA-wvhv-qcqf-f3cx, GO-2026-5728.

Is CVE-2026-40189 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free