{"id":"CVE-2026-40189","revision":"86b57a1b736247d7a4f9acaa710ff56e","records":[{"revision":"86b57a1b736247d7a4f9acaa710ff56e","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-40189","aliases":[],"title":"goshs has a file-based ACL authorization bypass in goshs state-changing routes","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.","state":0,"publishedAt":"2026-04-10T19:44:54.672+00:00","modifiedAt":"2026-04-13T20:53:02.4+00:00","affected":[{"ecosystem":"Vendor product","name":"goshs","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"vendor\": \"patrickhener\",\n                    \"product\": \"goshs\",\n                    \"versions\": [\n                        {\n                            \"version\": \"< 2.0.0-beta.4\",\n                            \"status\": \"affected\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","score":9.3,"severity":"CRITICAL"}],"references":["https://github.com/patrickhener/goshs/security/advisories/GHSA-wvhv-qcqf-f3cx","https://github.com/patrickhener/goshs/commit/f212c4f4a126556bab008f79758e21a839ef2c0f","https://github.com/patrickhener/goshs/releases/tag/v2.0.0-beta.4"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-40189","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-40189","identifiers":["CVE-2026-40189"]},"retained":false,"historicalAffected":[]}],"coverage":[]}