Skip to content
Fencer Intel
critical 9.8

CVE-2026-35471 json

Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') in goshs

published 7mo ago modified 3mo ago also GHSA-6qcc-6q27-whp8 , GO-2026-5186 , EUVD-2026-19539

cvss
9.8
version 3.0, CNA
cisa kev
Not listed
not in CISA's catalog
epss
0.7%
EPSS 0.7% chance of exploitation in 30 days, percentile 51%
public exploits
0
none known

Summary

goshs is a SimpleHTTPServer written in Go. Prior to 2.0.0-beta.3, tdeleteFile() missing return after path traversal check. This vulnerability is fixed in 2.0.0-beta.3.

Patch / fix

  • go github.com/patrickhener/goshs 1.1.5-0.20260401172448-237f3af891a9
  • goshs goshs 2.0.0
  • govulncheck-vulndb openSUSE Leap 16.0 0.0.20260723T184607-160000.1.1
  • goshs openSUSE Tumbleweed 2.0.0-1.1

opensuse advisories openSUSE-SU-2026:21483-1openSUSE-SU-2026:10542-1

Is CVE-2026-35471 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.

Check with Fencer

CISA SSVC

Exploitation
Proof of concept is public
Automatable
yes
Technical impact
total
Assessed
7mo ago

Exploit prediction

0.65% chance of exploitation in the next 30 days, higher than 51% of all scored CVEs (FIRST EPSS, 2026-11-09).

Exploits and checks

  • github.com https://github.com/patrickhener/goshs/security/advisories/GHSA-6qcc-6q27-whp8 referenced PoC, tagged "exploit" by a source, unverified

CVSS scores

assigned by version score vector
CNA 3.0 9.8 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
GitHub 3.0 9.8 CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Affected packages

ecosystem package affected fixed in
go github.com/patrickhener/goshs
<1.1.5-0.20260401172448-237f3af891a9
1.1.5-0.20260401172448-237f3af891a9

Affected products

  • patrickhener goshs

Classification

Weakness
  • CWE-22 Improper Limitation of a Pathname to a Restricted Directory

References

Sources

Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.