Skip to content
OpenAdvisories

Vendor

Gitea

210 known vulnerabilities.

104 results · Clear filters · Feed

  • Medium 4.3

    Gitea limited-visibility profile disclosure with public-only tokens

    The web profile and RSS/Atom feed routes of users and organizations checked only whether a signed-in viewer could see a limited-visibility owner, without considering the `public-only` restriction of the personal access token used to authenticate. Any user hol…

  • Medium 4.3

    Gitea user and organization feed token scope bypass

    The `/{username}` web route accepted personal access tokens over HTTP Basic authentication without checking their scope. A token confined to an unrelated scope, such as `read:issue`, could read its owner's private activity through the user RSS/Atom feed and t…

  • Medium 6.5

    Gitea issue changes on archived repositories through the API

    The web interface blocks issue and pull request changes on archived repositories, but several issue routes of the REST API did not check whether the repository is archived. A user allowed to change issues of an archived repository could use the API to edit, c…

  • Medium 4.3

    Gitea OAuth2 userinfo private group disclosure to public-only tokens

    The OAuth2 userinfo endpoint (`/login/oauth/userinfo`) decided whether to limit the `groups` claim to public organizations by re-parsing the `Authorization` header as an OAuth2 access token instead of using the scope of the credential that authenticated the r…

  • Medium 6.5

    Gitea Helm chart upload decompression denial of service

    When parsing an uploaded Helm chart, Gitea decompressed the archive and read every tar entry while looking for `Chart.yaml` without limiting the decompressed size, and did so before the package size quota was checked; the quota only considers the compressed u…

  • Medium 4.3

    Gitea private repository listing to public-only tokens on profiles

    The repositories, stars and watching tabs of user profiles and the repository list of organization home pages included private repositories for every signed-in request without checking whether the request used a personal access token restricted to public reso…

  • Medium 6.5

    Gitea admin API public-only token scope bypass

    The `/api/v1/admin` route group did not enforce the `public-only` restriction of personal access tokens. A public-only token with admin scope issued by a site administrator could therefore list private organizations and the email addresses of all users, creat…

  • Medium 6.5

    Gitea Actions job token spoofing of instance-signed commits

    The `GITEA_TOKEN` of a Gitea Actions job authenticates as the `gitea-actions` system user, and the `/api/v1/user` email and GPG key endpoints accepted that user, so a job could register an email address and a GPG key on it; without required email confirmation…

  • Medium 6.5
    CVE-2026-116296 Public exploit

    Gitea archived repository release, milestone and label modification

    The API routes for releases, release assets, milestones and repository labels did not reject changes to archived repositories. A user with write access to an archived repository, or a holder of such a user's write-scoped token, could replace or delete release…

  • Medium 5.3

    Gitea contribution heatmap private activity disclosure to public-only tokens

    `GET /api/v1/users/{username}/heatmap` computed the contribution heatmap with the repository access of the token owner and ignored the public-only restriction of the access token, unlike the activity feed endpoints. A holder of a user's public-only token coul…

  • Medium 5.4

    Gitea stored XSS through legacy Actions artifact Content-Encoding

    Legacy (v1 to v3) Actions artifact uploads stored the request's `Content-Encoding` header unchecked in the column that is served as the artifact's `Content-Type` on download, and a value starting with `video/` or `audio/` also removed the sandboxing Content-S…

  • Medium 4.3

    Gitea Actions task token private repository enumeration

    Gitea Actions task tokens authenticate to the REST API as a shared system user with a negative ID, which repository, organization, project and key filters treated as having no owner restriction, and the token carried no API scope to restrict user-scoped route…

  • Medium 6.5

    Gitea Actions fork workflow trust through pull request review commit

    Workflows triggered by a pull request review were read from the commit named in the review's `commit_id`, while the fork restrictions were decided by the reviewed pull request, and the commit was not checked to belong to that pull request. A user with read ac…

  • Medium 6.5
    CVE-2026-97859 Public exploit

    Gitea API disclosure of private user social graph, keys and stars

    Seven Gitea API routes under `/api/v1/users/{username}` (followers, following, following/{target}, starred, subscriptions, keys and gpg_keys) were registered without the `individualPermsChecker` middleware that enforces the visibility of the target user. An a…

  • Medium 6.3

    Gitea release attachment re-linking of issue attachments

    Adding attachments to a release checked the repository and release of an attachment but not whether it was already linked to an issue or comment. A user with write access to the releases of a repository, who knew the UUID of an attachment in that repository, …

  • Medium 6.5

    Gitea private profile information disclosure through POST request

    The visibility check of Gitea user profiles was applied to GET requests only, while `POST /{username}` (follow and unfollow) required only a signed-in user. Any authenticated user could therefore obtain the full name, location, website and description of a us…

  • Medium 4.3
    CVE-2026-110311 Public exploit

    Gitea draft release creation disclosing attachment metadata

    Creating a draft release through the API returned an `assets` list that was built from a release without an ID, which matched every attachment that was not linked to a release. A user who could create a draft release in a repository therefore received the met…

  • Medium 4.3

    Gitea watched repositories API disclosure after access revocation

    `GET /api/v1/user/subscriptions` returned the metadata of every repository a user was watching without checking that the user still had access to it. A user who watched a private repository while having access, and later lost it, for example through a team pe…

  • Medium 4.3

    Gitea reactions accepted on locked issues and comments

    The Gitea web handlers for adding and removing reactions on issues and comments did not refuse locked issues for users without write access, although the API did. A signed-in user who could read an issue could therefore add or remove reactions on a locked iss…

  • Medium 6.5

    Gitea Actions artifact v4 API unbounded request body

    The Gitea Actions artifact v4 (Twirp) handlers read the whole request body into memory without a size limit. A user who can run a workflow and obtains the runner token of that run could send an oversized request to the artifact service and exhaust the memory …

  • Medium 5.3

    Gitea panic on the repositories route of individual users

    Requesting `/{username}/-/repositories` for an individual user instead of an organization made the organization home handler dereference a nil organization and panic. The request needs no authentication and no special configuration. The server answered with a…

  • Medium 5.4

    Gitea OpenID account linking without session binding

    The Gitea OpenID association callback in the security settings accepted a positive OpenID 2.0 assertion without checking that the signed-in user had started the linking. Because OpenID 2.0 allows unsolicited assertions, an attacker-controlled OpenID provider …

  • Medium 5.9

    Gitea private attachment disclosure through repository mismatch

    Gitea's web attachment handler skips its cross-repository ownership check for attachments created before 16 January 2026 and checks permissions against the repository named in the request URL instead. An unauthenticated attacker who knows a private attachment…

  • Medium 5.3

    Gitea blind SSRF through OpenID assertion verification

    When OpenID sign-in is enabled, Gitea processes unauthenticated assertion parameters and sends an HTTP POST request to the caller-supplied OpenID provider endpoint during verification. An attacker controls the destination and much of the form body, allowing i…

  • Medium 6.5

    Gitea repository ownership escalation by administrators

    Gitea's collaboration access-mode endpoint accepts the Owner access mode from an authenticated repository collaborator with Admin access. The collaborator can promote their effective permissions from Admin to Owner and then perform owner-only operations, incl…

  • Medium 4.3

    Gitea Maven checksum upload quota bypass and memory exhaustion

    Gitea's Maven upload handler reads checksum uploads entirely into memory and returns before enforcing package-size quotas. An authenticated user with package-publish permission can submit an oversized body to a checksum endpoint despite legitimate checksum va…

  • Medium 5.3

    Gitea hidden-owner repository listing disclosure

    Gitea uses inconsistent repository visibility predicates, and the condition used by some repository-listing endpoints admits repositories whose owners are hidden from the viewer. Those listings disclose repository metadata even though direct routes correctly …

  • Medium 4.3

    Gitea repository initialization resource exhaustion

    Gitea does not limit the length of the gitignores field accepted by repository-creation forms and the API. Repository initialization splits the field into template names, repeatedly reads the referenced templates, and buffers their contents in memory. An atta…

  • Medium 4.3

    Gitea private workflow badge token scope bypass

    Gitea's Actions workflow status badge endpoint does not enforce repository-read scope or the public-only restriction on the token authenticating the request. A token lacking read:repository, or restricted to public repositories, can retrieve the latest workfl…

  • Medium 4.3

    Gitea private pull request title disclosure through markup

    Gitea's repository markup endpoint resolves same-repository pull request references without enforcing the viewer's Pull Requests permission. A member with only Wiki access to a private repository can submit a markup preview request and retrieve a private pull…

  • Medium 4.3

    Gitea organization listing token scope bypass

    Gitea's organization-list API does not enforce the read:organization token scope. A token limited to another category, such as read:misc, can retrieve organization metadata visible to its owner. For a site administrator's token, the response can include Limit…

  • Medium 6.5

    Gitea private comparison disclosure with public-only tokens

    Gitea's shared comparison helper omits the token repository-access check used when updating pull requests. A public-only token with read:repository scope can route a comparison or pull request creation through a public base repository and retrieve commit hist…

  • Medium 5.8

    Gitea local code execution through writable Git hooks

    Gitea creates server-side Git hook directories and scripts with mode 0777 and relies on the process umask to restrict access. With a permissive umask such as 0000 or 0002, another local user who can reach the repository storage may modify a hook or add an exe…

  • Medium 5.4

    Gitea private migration creation with public-only tokens

    Gitea's repository migration API accepts a public-only token when the request specifies creation of a private repository. A delegated token intended to operate only on public resources can create a private repository and migration task under the authorizing a…

  • Medium 5.4

    Gitea organization repository creation token scope bypass

    Gitea's organization repository-creation API requires write:organization but omits the write:repository token scope enforced by other repository-creation routes. A personal access token or OAuth application token without repository-write scope can therefore c…

  • Medium 4.3

    Gitea restricted-user SSH and GPG key metadata disclosure

    Gitea's user SSH and GPG key-list API endpoints omit the profile visibility check applied by their web equivalents. A restricted account can retrieve public keys, key titles, fingerprints, and GPG-embedded email addresses belonging to Limited-visibility users…

  • Medium 4.3

    Gitea restricted-user issue search disclosure

    Gitea's API and web issue-search paths do not treat restricted accounts as anonymous viewers when evaluating Limited-visibility repository owners. A restricted user can search and retrieve issue titles and bodies that should be hidden by the owner's visibilit…

  • Medium 4.3

    Gitea restricted-user activity and heatmap disclosure

    Gitea's activity-feed and contribution-heatmap API handlers do not apply the profile visibility check for restricted accounts viewing Limited-visibility users. A restricted user can retrieve activity records and contribution timestamps that the corresponding …

  • Medium 6.5

    Gitea required Actions check bypass through skipped workflows

    For pull request events, Gitea reads workflow definitions from the pull request head and posts a synthetic skipped status when workflow branch or path filters exclude execution. A fork pull request author can supply a workflow matching a required status conte…

  • Medium 4.3

    Gitea restricted-user organization metadata disclosure

    Gitea's user organization-list API includes Limited-visibility organizations for authenticated restricted accounts without applying the visibility restriction enforced by the single-organization endpoint. A restricted user can list a known user's public organ…