# CVE-2026-56750: Gitea insufficient session expiration in Remember-Me auth token

Source: https://junglewise.ai/threats/cve-2026-56750-gitea-insufficient-session-expiration-in-remember-me-auth-token  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-07-21. Updated: 2026-07-21  
License: CC BY 4.0 with a link back

CVE-2026-56750 · Severity: critical · CVSS 4 · Published 2026-07-21

Gitea, a popular self-hosted Git service, contains a flaw in how it handles 'Remember-Me' login sessions. If an attacker steals a user's login token, they can maintain permanent access to the victim's account even after the theft is detected by the system. This allows an attacker to bypass security controls and persistently access private code repositories and user data.

Technologies: [Gitea](https://junglewise.ai/threats/technologies/gitea), [code.gitea.io/gitea (Go)](https://junglewise.ai/threats/technologies/code-gitea-io-gitea), [gitea.dev (Go)](https://junglewise.ai/threats/technologies/gitea-dev). Vendors: [Gitea](https://junglewise.ai/threats/vendors/gitea), [Go](https://junglewise.ai/threats/vendors/go).

## Quick answers

**Is CVE-2026-56750 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-56750 being exploited in the wild.

**How severe is CVE-2026-56750?** Critical severity, with a CVSS score of 4, published 21 July 2026.

**Which products and versions are affected?** Gitea < 1.27.0; code.gitea.io/gitea (Go) < 1.27.0, SEMVER:introduced=0,fixed=1.27.0; gitea.dev (Go) SEMVER:introduced=0,fixed=1.27.0.

**Is there a fix for CVE-2026-56750?** Yes. code.gitea.io/gitea (Go): upgrade to 1.27.0 or later; gitea.dev (Go): upgrade to 1.27.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-56750 attacked?** It is attacked over the network, in a network appliance.

**Am I affected by CVE-2026-56750?** Check whether you run Gitea, code.gitea.io/gitea (Go) or gitea.dev (Go) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- code.gitea.io/gitea (Go): upgrade to 1.27.0 or later

  ```sh
  go get code.gitea.io/gitea@v1.27.0
  ```

- gitea.dev (Go): upgrade to 1.27.0 or later

  ```sh
  go get gitea.dev@v1.27.0
  ```


## Technical details

Gitea implements a split-token (ID:Hash) design for 'Remember-Me' cookies. When a token is used, the hash is rotated while the ID remains constant. If an attacker uses a stolen token, they receive a new rotated hash. When the legitimate user subsequently attempts to use their now-outdated token, Gitea's CheckAuthToken function correctly identifies a hash mismatch but only returns an error (ErrAuthTokenInvalidHash) without deleting the compromised token from the database. This failure to invalidate all sessions associated with the compromised ID allows the attacker's active session to persist indefinitely. The issue is fixed in version 1.27.0.

## Affected products

- Gitea Gitea < 1.27.0

## Identifiers

- CVE-2026-56750
- GHSA-rgv6-xp99-6mgj
- GO-2026-6072

## Timeline

- 2026-07-13: disclosed: Initial report to Gitea
- 2026-07-21: advisory: GitHub Advisory published
- 2026-07-21: patched: Fix released in version 1.27.0

## References

- [https://api.github.com/users/AdamKorcz](https://api.github.com/users/AdamKorcz)
- [https://github.com/AdamKorcz](https://github.com/AdamKorcz)
- [https://api.github.com/users/AdamKorcz/gists%7B/gist_id%7D](https://api.github.com/users/AdamKorcz/gists%7B/gist_id%7D)
- [https://api.github.com/users/AdamKorcz/repos](https://api.github.com/users/AdamKorcz/repos)
- [https://avatars.githubusercontent.com/u/44787359?v=4](https://avatars.githubusercontent.com/u/44787359?v=4)
- [https://api.github.com/users/AdamKorcz/events%7B/privacy%7D](https://api.github.com/users/AdamKorcz/events%7B/privacy%7D)

## Related threats

- [Gitea account takeover via OAuth2 auto-linking](https://junglewise.ai/threats/cve-2026-120263-when-oauth2-client-account-linking-is-set-to-auto-not-the)
- [Gitea limited-visibility profile disclosure via public-only token](https://junglewise.ai/threats/cve-2026-119627-the-web-profile-and-rss-atom-feed-routes-of-users-and)
- [Gitea token scope bypass in web routes](https://junglewise.ai/threats/cve-2026-119625-the-username-web-route-accepted-personal-access-tokens-over-http)
- [Gitea project boards information disclosure of private pull requests](https://junglewise.ai/threats/cve-2026-119533-repository-and-organization-project-boards-listed-the-pull)
- [Gitea API token scope bypass in repository deletion](https://junglewise.ai/threats/cve-2026-119441-delete-api-v1-orgs-org-repos-deletes-all-repositories-of-an)
