CVE-2026-50138 is a high-severity security vulnerability in goshs.de/goshs/v2 (go), affecting versions <= 2.0.9. It is fixed in 2.1.0.
WebDAV listener ignores --read-only, --upload-only, and --no-delete mode flags Ecosystem: Go Package: goshs.de/goshs/v2 (github.com/patrickhener/goshs) Affected: <= v2.0.9 (every release that ships the WebDAV handler) Summary When goshs is launched with WebDAV enabled (-w), the mode-restriction flags --read-only, --upload-only, and --no-delete are enforced only on the primary HTTP port. The WebDAV port is wired straight to golang.org/x/net/webdav.Handler with no equivalent guard, so an authenticated WebDAV client can PUT, DELETE, MKCOL, MOVE, and COPY despite the operator's stated intent. Details httpserver/server.go:207-238, the WebDAV mux registers only IPWhitelistMiddleware, ServerHeaderMiddleware, and optionally BasicAuthMiddleware. There is no fs.ReadOnly || fs.UploadOnly || fs.NoDelete check on the WebDAV path. The HTTP mux in the same file (lines 134-204) does check these flags on every state-changing route. Proof of concept Impact Integrity, --read-only and --no-delete are silently downgraded to "no protection" on the WebDAV port. Any WebDAV client (curl, cadaver, Windows Explorer, Finder) can overwrite/delete files. Confidentiality, --upload-only is also bypassed: WebDAV GET/PROPFIND still return file contents. Trust, operators using goshs -w -ro -d /srv/case-files -b reviewer:pw to deliver engagement artifacts believe the directory is immutable. It isn't. Suggested fix Add a small http.HandlerFunc in front of wdHandler that maps WebDAV verbs to the existing mode flags: Add regression tests in integration/functions.go covering each mode flag × each WebDAV verb. Reporter: Nishant Verma. Reproduced live against goshs v2.0.9 (commit 8fc1e91) on 2026-05-27.
CVE-2026-50138 has a CVSS score of 8.1 (High). The vector is network-reachable, low privileges required, and no user interaction. A CVSS score reflects the worst-case severity of the vulnerability, not your specific exposure. Whether this affects your application depends on whether the vulnerable code is present and reachable in your environment.
A fixed version is available (2.1.0). Upgrading removes the vulnerable code path.
go
goshs.de/goshs/v2 (<= 2.0.9)goshs.de/goshs/v2 → 2.1.0 (go)Severity tells you how bad this could be in the worst case. It does not tell you whether you are exposed. Exploitability and impact are functions of runtime truth: whether the vulnerable code is present, reachable, and actually executes in your application. A vulnerable package can sit in your dependency tree and never run.
Kodem, an Intelligent Application Security platform, uses runtime intelligence to reveal which vulnerabilities actually execute in production, so teams prioritize the ones that genuinely matter instead of chasing every advisory.
Kodem's runtime-powered SCA identifies whether CVE-2026-50138 is reachable in your applications. Explore open-source security for your team.
See if CVE-2026-50138 is reachable in your applications. Get a demo
Already deployed Kodem? See CVE-2026-50138 in your environment →Upgrade goshs.de/goshs/v2 to 2.1.0 or later to resolve this vulnerability.
Kodem Kai can prioritize this vulnerability in your dependency tree and generate a fix recommendation.
CVE-2026-50138 is a high-severity security vulnerability in goshs.de/goshs/v2 (go), affecting versions <= 2.0.9. It is fixed in 2.1.0.
CVE-2026-50138 has a CVSS score of 8.1 (High). This score reflects the worst-case severity of the vulnerability, not your specific exposure. Whether it represents real risk in your environment depends on whether the vulnerable code is present and reachable.
goshs.de/goshs/v2 (go) versions <= 2.0.9 is affected.
Yes. CVE-2026-50138 is fixed in 2.1.0. Upgrade to this version or later.
Whether CVE-2026-50138 is exploitable in your environment depends on whether the vulnerable code is present and reachable. A CVSS score is a worst-case rating; it does not account for your specific deployment, configuration, or usage patterns. Kodem, an Intelligent Application Security platform, uses runtime intelligence to show which vulnerabilities actually execute in production, so you can focus on the ones that represent real risk. Get a demo
Exploitability and impact are not fixed properties of a CVE. They depend on runtime truth: whether the vulnerable code is present, reachable, and actually executes in your application. A high CVSS score on a dependency that never runs is not the same as real risk. Kodem, an Intelligent Application Security platform, uses runtime intelligence to reveal which vulnerabilities actually execute in production, so teams prioritize the ones that genuinely matter.
Upgrade goshs.de/goshs/v2 to 2.1.0 or later.