CVE-2026-28683 json
Gokapi: Stored XSS in SVG Hotlinks
published 2026-03-05 8 mo ago modified 2026-06-17 4 mo ago also EUVD-2026-9993 , GHSA-3c22-5j5m-4jq7 , GO-2026-4612
- cvss
- 8.7
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 10%
- public exploits
- 0
- none known
Summary
Gokapi is a self-hosted file sharing server with automatic expiration and encryption support. Prior to version 2.2.3, if a malicious authenticated user uploads SVG and creates a hotlink for it, they can achieve stored XSS. This issue has been patched in version 2.2.3.
Patch / fix
- go github.com/forceu/gokapi 2.2.3
- forceu gokapi 2.2.3
- govulncheck-vulndb openSUSE Leap 15.6 0.0.20260317T205859-150000.1.152.1
suse advisories SUSE-SU-2026:1042-1
- govulncheck-vulndb openSUSE Leap 16.0 0.0.20260723T184607-160000.1.1
opensuse advisories openSUSE-SU-2026:21483-1
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- 8 mo ago
Exploit prediction
0.21% chance of exploitation in the next 30 days, higher than 10% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 8.7 | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N |
| GitHub | 3.1 | 8.7 | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| go | github.com/forceu/gokapi | <2.2.3 all versions |
2.2.3 |
Affected products
- Forceu Gokapi
Classification
- Weakness
-
- CWE-79 Improper Neutralization of Input During Web Page Generation
References
-
github.com
/Forceu/Gokapi/security/advisories/GHSA-3c22-5j5m-4jq7
web, vendor-advisory, advisory
-
github.com
/Forceu/Gokapi/releases/tag/v2.2.3
web, release-notes
-
nvd.nist.gov
/vuln/detail/CVE-2026-28683
advisory
-
github.com
/Forceu/Gokapi
package
Sources
- CVE List CVE-2026-28683
- GitHub Advisory GHSA-3c22-5j5m-4jq7
- NVD CVE-2026-28683
- OSV GO-2026-4612
Fencer Vulns 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.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.