{"id":"CVE-2025-46816","aliases":["EUVD-2025-13620","GHSA-rwj2-w85g-5cmm","GO-2025-3672","openSUSE-SU-2025:15135-1"],"status":"published","title":"goshs route not protected, allows command execution","description":"goshs is a SimpleHTTPServer written in Go. Starting in version 0.3.4 and prior to version 1.0.5, running goshs without arguments makes it possible for anyone to execute commands on the server. The function `dispatchReadPump` does not checks the option cli `-c`, thus allowing anyone to execute arbitrary command through the use of websockets. Version 1.0.5 fixes the issue.","severity":{"version":"3.0","score":9.4,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L","level":"critical","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-11","score":0.0075,"percentile":0.55411,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":true,"fix_available":true},"cwes":["CWE-284","CWE-77"],"published":"2025-05-06T16:45:17Z","modified":"2026-10-28T02:30:26Z","exploits":[{"source":"pocgithub","id":"Guilhem7/CVE-2025-46816","title":"Guilhem7/CVE-2025-46816","date":"2025-06-04","url":"https://github.com/Guilhem7/CVE-2025-46816"}],"fixes":[{"ecosystem":"Go","package":"github.com/patrickhener/goshs","fixed_in":["1.0.5"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"Go","package":"github.com/patrickhener/goshs","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.3.4"},{"last_affected":"1.0.4"},{"fixed":"1.0.5"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/patrickhener/goshs","ranges":[{"type":"SEMVER","events":[{"introduced":"0.3.4"},{"fixed":"1.0.5"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/patrickhener/goshs","ranges":[{"type":"SEMVER","events":[{"introduced":"0.3.4"},{"fixed":"1.0.5"}]}]},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"govulncheck-vulndb","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.0.20250515T200012-1.1"}]}],"bundled":11}],"products":[{"vendor":"patrickhener","product":"goshs"}],"references":[{"url":"https://github.com/patrickhener/goshs/security/advisories/GHSA-rwj2-w85g-5cmm","tags":["x_refsource_CONFIRM","advisory","web"]},{"url":"https://github.com/patrickhener/goshs/commit/160220974576afe5111485b8d12fd36058984cfa","tags":["x_refsource_MISC","fix","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2025-46816","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-rwj2-w85g-5cmm"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/46xxx/CVE-2025-46816.json","tags":["advisory"]},{"url":"https://github.com/patrickhener/goshs","tags":["package"]},{"url":"https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/QOPKRPL75SZMLT3YSQAZEDWH7RBRXGJK/","tags":["advisory"]},{"url":"https://www.suse.com/security/cve/CVE-2024-52290","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2024-8063","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2025-3757","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2025-3931","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2025-4432","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2025-46331","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2025-4658","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2025-46721","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2025-46735","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2025-46815","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2025-46816","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2025-46816","title":"goshs route not protected, allows command execution","description":"goshs is a SimpleHTTPServer written in Go. Starting in version 0.3.4 and prior to version 1.0.5, running goshs without arguments makes it possible for anyone to execute commands on the server. The function `dispatchReadPump` does not checks the option cli `-c`, thus allowing anyone to execute arbitrary command through the use of websockets. Version 1.0.5 fixes the issue.","status":"published","published":"2025-05-06T18:41:58.035Z","modified":"2025-05-06T19:23:18.087Z","cvss":[{"version":"3.0","score":9.4,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L","level":"critical","assessor":"cna"}],"cwes":["CWE-284","CWE-77"],"updated_at":"2026-11-02T14:32:36.706507Z"}],"euvd":[{"id":"EUVD-2025-13620","description":"goshs is a SimpleHTTPServer written in Go. Starting in version 0.3.4 and prior to version 1.0.5, running goshs without arguments makes it possible for anyone to execute commands on the server. The function `dispatchReadPump` does not checks the option cli `-c`, thus allowing anyone to execute arbitrary command through the use of websockets. Version 1.0.5 fixes the issue.","status":"published","published":"2025-05-06T18:41:58Z","modified":"2025-05-06T19:23:18Z","cvss":[{"version":"3.0","score":9.4,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L","level":"critical"}],"updated_at":"2026-11-02T20:32:53.861279Z"}],"ghsa":[{"id":"GHSA-rwj2-w85g-5cmm","title":"goshs route not protected, allows command execution","description":"### Summary\n\nIt seems that when running **goshs** without arguments it is possible for anyone to execute commands on the server. This was tested on version **1.0.4** of **goshs**. The command function was introduced in version **0.3.4**.\n\n### Details\n\nIt seems that the function ```dispatchReadPump``` does not checks the option cli ```-c```, thus allowing anyone to execute arbitrary command through the use of websockets.\n\n### PoC\n\nUsed **websocat** for the POC:\n```bash\necho -e '{\"type\": \"command\", \"content\": \"id\"}' |./websocat 'ws://192.168.1.11:8000/?ws' -t\n```\n\n### Impact\n\nThe vulnerability will only impacts goshs server on vulnerable versions.","status":"published","published":"2025-05-06T16:45:17Z","modified":"2025-05-06T21:44:06Z","cvss":[{"version":"3.0","score":9.4,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L","level":"critical"}],"cwes":["CWE-77","CWE-284"],"updated_at":"2026-11-02T14:38:43.172412Z"}],"nvd":[{"id":"CVE-2025-46816","description":"goshs is a SimpleHTTPServer written in Go. Starting in version 0.3.4 and prior to version 1.0.5, running goshs without arguments makes it possible for anyone to execute commands on the server. The function `dispatchReadPump` does not checks the option cli `-c`, thus allowing anyone to execute arbitrary command through the use of websockets. Version 1.0.5 fixes the issue.","status":"published","published":"2025-05-06T19:16:00.08Z","modified":"2026-06-17T09:26:58.9Z","cvss":[{"version":"3.0","score":9.4,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L","level":"critical","assessor":"secondary"}],"cwes":["CWE-77","CWE-284"],"updated_at":"2026-11-02T14:11:04.33372Z"}],"osv":[{"id":"CVE-2025-46816","title":"goshs route not protected, allows command execution","description":"goshs is a SimpleHTTPServer written in Go. Starting in version 0.3.4 and prior to version 1.0.5, running goshs without arguments makes it possible for anyone to execute commands on the server. The function `dispatchReadPump` does not checks the option cli `-c`, thus allowing anyone to execute arbitrary command through the use of websockets. Version 1.0.5 fixes the issue.","status":"published","published":"2025-05-06T18:41:58.035Z","modified":"2026-10-28T02:30:26.064694Z","cvss":[{"version":"3.0","score":9.4,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L","level":"critical"}],"cwes":["CWE-284","CWE-77"],"updated_at":"2026-11-02T15:44:49.707645Z"},{"id":"GHSA-rwj2-w85g-5cmm","title":"goshs route not protected, allows command execution","description":"### Summary\n\nIt seems that when running **goshs** without arguments it is possible for anyone to execute commands on the server. This was tested on version **1.0.4** of **goshs**. The command function was introduced in version **0.3.4**.\n\n### Details\n\nIt seems that the function ```dispatchReadPump``` does not checks the option cli ```-c```, thus allowing anyone to execute arbitrary command through the use of websockets.\n\n### PoC\n\nUsed **websocat** for the POC:\n```bash\necho -e '{\"type\": \"command\", \"content\": \"id\"}' |./websocat 'ws://192.168.1.11:8000/?ws' -t\n```\n\n### Impact\n\nThe vulnerability will only impacts goshs server on vulnerable versions.","status":"published","published":"2025-05-06T16:45:17Z","modified":"2025-05-15T20:41:56.148303Z","cvss":[{"version":"3.0","score":9.4,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L","level":"critical"}],"cwes":["CWE-284","CWE-77"],"updated_at":"2026-11-02T15:46:56.639206Z"},{"id":"GO-2025-3672","title":"goshs route not protected, allows command execution in github.com/patrickhener/goshs","description":"goshs route not protected, allows command execution in github.com/patrickhener/goshs","status":"published","published":"2025-05-15T20:00:12Z","modified":"2026-03-03T04:56:34.298515Z","updated_at":"2026-11-02T15:47:01.728182Z"},{"id":"openSUSE-SU-2025:15135-1","title":"govulncheck-vulndb-0.0.20250515T200012-1.1 on GA media","description":"These are all security issues fixed in the govulncheck-vulndb-0.0.20250515T200012-1.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2025-05-20T00:00:00Z","modified":"2026-02-05T09:20:55.285479Z","updated_at":"2026-11-02T16:58:37.399567Z"}]}}
