CVE-2026-89151
LowCVSS 3.5Exploitation Probability (EPSS)
Low risk4th percentile - higher than 4% of all known CVEs
Summary
Forgejo before 16.0.4 allows use of restricted API tokens for unintended access to the "allow maintainer edit" feature.
Risk Assessment
An attacker with a restricted API token may gain access to features they should not be authorized for, potentially leading to unauthorized repository changes.
Recommendation
Update Forgejo to version 16.0.4 or later.
Other vulnerabilities in Forgejo
See all- CVE-2026-89094Critical
Forgejo before 16.0.4 allows remote code execution via a crafted template repository because template expansion on files in .forgejo/template is mishandled.
- CVE-2025-68937Critical
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 template repositories. This is also fixed for 11 LTS in 11.0.7 and later.
- CVE-2026-90679Medium
Forgejo 13.0.0 through 16.0.4, when "[federation] ENABLED = true" is set, has a spoofing issue affecting identity integrity but not allowing account takeover or content modification. It does not verify that the HTTP Signature on an incoming ActivityPub activity was produced by the key belonging to the actor named in the activity body. A remote attacker hosting a single valid ActivityPub actor and keypair can submit signature-valid activities attributed to any actor identity.
- CVE-2026-82556Medium
Vulnerability in Forgejo up to 15.0.4 in the net.LookupIP function of is_migrate_allowed.go allows remote server-side request forgery (SSRF). The attack can be initiated remotely, and the exploit is public.
- CVE-2026-59102Medium
Forgejo before version 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.
Original NVD description (English source)
Forgejo before 16.0.4 allows use of restricted API tokens for unintended access to the "allow maintainer edit" feature.

