CVE-2026-58443
CRITICAL
CVSS 9.1
code.gitea.io/gitea
Verified Advisory
Authorization bypass in Gitea pull request update API endpoint (CVE-2026-58443)
Gitea fails to re-apply a token's public-only restriction when the pull request update endpoint (`POST /api/v1/repos/{public-owner}/{public-repo}/pulls/{index}/update`) operates on a private head repository. The public-only check is evaluated only against the route's base repository; the head repository authorization falls through to ordinary user RBAC without token scope enforcement. A valid `public-only,write:repository` token can thereby cause Gitea to push public base commits into a private head branch, and when Actions is enabled on the private repository, also trigger private `push` workflow runs.
Affected versions:
- <= v1.26.4
We recommend updating to: 1.27.0.
CVSS 9.6 · our assessment: act_now
Reference: https://github.com/go-gitea/gitea/security/advisories/GHSA-xxjv-752h-3vp2
Details: https://vuln.today/cve/CVE-2026-58443
Verified by vuln.today against published advisories.
Affected versions
- – <= v1.26.4
Fixed in: 1.27.0
More advisories for code.gitea.io/gitea
- CVE-2026-55982 – OIDC userinfo scope bypass in Gitea (CVE-2026-55982)
- CVE-2026-20706 – Token scope bypass on archive download endpoint in Gitea (CVE-2026-20706)
- CVE-2026-58314 – Server-side request forgery in Gitea hostmatcher and OpenID sign-in (CVE-2026-58314)
- CVE-2026-58436 – Quadratic-time denial of service in Gitea Locale middleware (CVE-2026-58436)
- CVE-2026-58437 – Repository visibility manipulation via undocumented git push options in Gitea (CVE-2026-58437)
- CVE-2026-55987 – Account deactivation bypass via OAuth2 sign-in in Gitea (CVE-2026-55987)
- CVE-2026-54481 – Improper certificate validation in Gitea internal API HTTP client (CVE-2026-54481)
- CVE-2026-56654 – Privilege escalation via Personal Access Token scope bypass in Gitea (CVE-2026-56654)