Medium severity · published Jul 2, 2026
CVE-2026-59102
Forgejo < 15.0.3 - Stored XSS via Actions Run Full Name Rendering
5.4
CVSS
0.3%
EPSS
No
On KEV
Description
Forgejo before 15.0.3 contains a stored cross-site scripting vulnerability that allows authenticated attackers to execute arbitrary JavaScript in other users' browsers by setting a full name containing an HTML payload and triggering an Actions run. When the DEFAULT_SHOW_FULL_NAME option is enabled, the run description is assembled server-side with the user's display name interpolated into an HTML string via a translation function that does not escape its arguments, and the frontend renders the result using a Vue v-html binding, causing script execution for any user who views the affected Actions run page.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Attack vector
Network
Complexity
Low
Privileges
Low
User interaction
Required
Confidentiality
Low
Integrity
Low
Availability
None
Scope
Changed
Exploitation
Is it being used?
Exploit prediction (EPSS)0.3% · higher than 28% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
FO
forgejo · forgejo
before 15.0.3 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-59102
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-59102
codeberg.org
https://codeberg.org/forgejo/forgejo/pulls/13002
codeberg.org
https://codeberg.org/forgejo/forgejo/src/branch/forgejo/release-notes-published/15.0.3.md
github.com
https://github.com/geo-chen/oss/blob/main/forgejo.md
www.vulncheck.com
https://www.vulncheck.com/advisories/forgejo-stored-xss-via-actions-run-full-name-rendering
More from forgejo
9.9
CVE-2026-89094
Forgejo before 16.0.4 allows remote code execution via a crafted template repository because template expansion on files in .forgejo/template is mishandled
9.5
CVE-2025-68937
Forgejo before 13.0.2 allows attackers to write to unintended files, and possibly obtain server shell access, because of mishandling of out-of-repository symlink destinations for…
9.1
CVE-2023-49946
In Forgejo before 1.20.5-1, certain endpoints do not check whether an object belongs to a repository for which permissions are being checked
7.5
CVE-2023-49947
Forgejo before 1.20.5-1 allows 2FA bypass when docker login uses Basic Authentication
6.3
CVE-2026-82556
Forgejo Repository Migration is_migrate_allowed.go net.LookupIP server-side request forgery
