CVE-2026-103667 json
Gitea container registry stored XSS through blob media type
published last mo. modified 26d ago also BIT-gitea-2026-103667 , EUVD-2026-93910 , GHSA-7cq7-4v93-8wjm
- cvss
- 5.4
- 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 8%
- public exploits
- 0
- none known
Summary
Gitea's container registry served blob downloads with a `Content-Type` taken from the media type declared in pushed image manifests, without a `Content-Disposition` or restrictive content security policy. A user who can push container images can publish a blob containing HTML and JavaScript with a `text/html` media type. When a victim who is authenticated to the instance opens the blob URL in a browser, the script runs on the Gitea origin and can perform actions as the victim, such as creating API tokens.
Patch / fix
- bitnami gitea 28.0.0
- gitea gitea 28.0.0
- github.com/go-gitea/gitea#39398 pull request
- github.com/go-gitea/gitea/releases/tag/v28.0.0 release
Is CVE-2026-103667 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 FencerCISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- last mo.
Exploit prediction
0.19% chance of exploitation in the next 30 days, higher than 8% of all scored CVEs (FIRST EPSS, 2026-11-11).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CISA ADP | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N |
| CNA | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N |
| OSV | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| bitnami | gitea | <28.0.0 |
28.0.0 |
Affected products
- Gitea Gitea
Classification
- Weakness
-
- CWE-79 Improper Neutralization of Input During Web Page Generation
References
-
github.com
/go-gitea/gitea/pull/39398
patch, issue-tracking
-
github.com
/go-gitea/gitea/security/advisories/GHSA-7cq7-4v93-8wjm
vendor-advisory, mitigation, advisory
-
blog.gitea.com
/release-of-28.0.0/
release-notes, article
-
github.com
/go-gitea/gitea/releases/tag/v28.0.0
release-notes, article
-
nvd.nist.gov
/vuln/detail/CVE-2026-103667
web
Sources
- CVE List CVE-2026-103667
- NVD CVE-2026-103667
- OSV BIT-gitea-2026-103667
- Maintainer advisory GHSA-7cq7-4v93-8wjm
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.
The maintainers of go-gitea/gitea published their own advisory on GitHub. Reviewed sources take precedence over it.