CVE-2026-35393: patrickhener goshs path traversal in POST multipart upload

CVE-2026-35393 · Severity: critical · CVSS 9.8 · Published 2026-04-06

goshs is a simple web server tool used to share files over a network. A security flaw allows an attacker to upload files to any location on the server's hard drive without needing a password. This could allow an attacker to overwrite critical system files, potentially leading to a full takeover of the server or a complete loss of data.

Technologies: github.com/patrickhener/goshs (Go). Vendors: Go.

Quick answers

Is CVE-2026-35393 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-35393 being exploited in the wild.
How severe is CVE-2026-35393?
Critical severity, with a CVSS score of 9.8, published 6 April 2026.
Which products and versions are affected?
github.com/patrickhener/goshs (Go) SEMVER:introduced=0,fixed=1.1.5-0.20260401172448-237f3af891a9.
Is there a fix for CVE-2026-35393?
Yes. github.com/patrickhener/goshs (Go): upgrade to 1.1.5-0.20260401172448-237f3af891a9 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-35393 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-35393?
Check whether you run github.com/patrickhener/goshs (Go) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • github.com/patrickhener/goshs (Go): upgrade to 1.1.5-0.20260401172448-237f3af891a9 or later
    go get github.com/patrickhener/goshs@v1.1.5-0.20260401172448-237f3af891a9

Technical details

A path traversal vulnerability (CWE-22) exists in the 'goshs' web server within the POST multipart upload handler located in 'httpserver/updown.go'. While the filename itself is sanitized, the target directory is derived directly from the unsanitized 'req.URL.Path'. By using URL-encoded traversal sequences (e.g., %2e%2e/) in the upload path, an unauthenticated remote attacker can escape the intended webroot. This allows for arbitrary file writes to any directory on the host filesystem that the server process has permissions to access. The issue is fixed in version 2.0.0-beta.3.

Affected products

  • patrickhener goshs < 2.0.0-beta.3

Identifiers

  • CVE-2026-35393
  • GHSA-jg56-wf8x-qrv5
  • GO-2026-5468

Timeline

  • 2026-04-02: advisory: GitHub Security Advisory published
  • 2026-04-06: disclosed: CVE published to NVD
  • 2026-04-06: patched: Fix released in version 2.0.0-beta.3

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.