Read the docs
TI-2026-76201 Aliases CVE-2026-109553

Gitea SSH certificate principal lets users impersonate other users

Priority LOW 34CWE-287Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
None
Attack complexity
High
Impact type
Security bypass
Confidentiality · integrity · availability
High · High · High
Fix status
No fix listed

Attack profile from CVSS 3.1 · CISA ADP. Fix status from CNA. Impact type from CWE-287.

Summary

Gitea through 28.1.0 resolves SSH certificate principals by searching the content of all stored public keys instead of only principal keys. When Gitea trusts a user certificate authority and accepts arbitrary principals, a user can register another user's public key line as their own principal, or a holder of a certificate signed by that authority can list it, and then authenticate as the key's owner through the HTTP signature API and the built-in SSH server. Instances that do not trust a user certificate authority are not affected. This is CWE-287, Improper Authentication.

Written with Claude Haiku 5.5 from the sources below · 2026-11-02

Description from the CNA

Gitea resolved the principals of an SSH certificate by searching the content of all stored public keys instead of only principal keys. When Gitea trusts a user certificate authority (`SSH_TRUSTED_USER_CA_KEYS`) and accepts arbitrary principals (`SSH_AUTHORIZED_PRINCIPALS_ALLOW=anything`), a user could register another user's public key line as their own principal, or a holder of a certificate signed by that authority could list it, and then authenticate as the owner of that key through the HTTP signature API and the built-in SSH server. Instances that do not trust a user certificate authority are not affected.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00175 7th percentileScored 2026-11-07
Fix No fix listed No fixed version in the sources yet

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
GiteaGiteaup to 28.1.0—No fix listedCNA
  • Gitea VendorGitea Affected up to 28.1.0 Fixed in — No fix listed CNA

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:gitea:gitea:*:*:*:*:*:*:*:*——Gitea
  • cpe:2.3:a:gitea:gitea:*:*:*:*:*:*:*:* Versions — — ·Gitea

Remediation

The sources list no fixed version for Gitea.

Written with Claude Haiku 5.5 from the sources below · 2026-11-02

Timeline

  1. 2026-10-18 Threatist record created from CVE-2026-109553
  2. 2026-10-20 CVSS score added · CISA ADP
  3. 2026-10-20 CISA SSVC decision points changed
  4. 2026-11-02 Weakness changed · CISA ADP

References

  • TI-2026-42785 Gitea before 1.27.1 allows remote code execution via the diffpatch API through Git hook installation. KEVCVSS 3.1CRITICAL 9.8
  • TI-2026-42033 Improper authorization on OAuth sign-in callback silently re-enables administrator-disabled accounts CVSS 3.1CRITICAL 9.8
  • TI-2026-40842 Privilege Escalation via Access Token Scope Escalation in API CVSS 3.1CRITICAL 9.8
  • TI-2026-16922 Gitea Docker image trusts spoofable reverse-proxy headers by default CVSS 3.1CRITICAL 9.8
  • TI-2026-42043 Team-repository linking endpoint bypasses the RepoAdminChangeTeamAccess organization setting CVSS 3.1CRITICAL 9.1
  • TI-2026-40381 OIDC userinfo Endpoint Returns Identity Claims Without Enforcing API Token Scopes CVSS 3.1CRITICAL 9.1
See all 240 →

Sources

This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences