Skip to content
OpenAdvisories

Vendor

Gitea

210 known vulnerabilities.

64 results · Clear filters · Feed

  • High 7.5

    Gitea private pull request disclosure on project boards

    Repository and organization project boards listed the pull requests that reference each issue on the board without checking whether the viewer can read them. When a private pull request mentions an issue on a board the viewer can open, the board revealed the …

  • High 7.5

    Gitea public-only token bypass on bulk organization repository deletion

    `DELETE /api/v1/orgs/{org}/repos` deletes all repositories of an organization, but it did not enforce the public-only restriction of access tokens: the route only checked that the organization itself was public. A public-only token of an owner of a public org…

  • High 7.5

    Gitea public-only token bypass in repository and organization creation

    Gitea 1.27.3 stopped personal access tokens restricted to public resources (`public-only`) from creating repositories through `POST /api/v1/user/repos` and `POST /api/v1/repos/migrate`, but `POST /api/v1/org/{org}/repos`, `POST /api/v1/orgs/{org}/repos`, `POS…

  • High 8.1

    Gitea cross-site request forgery on repository topics

    `POST /{owner}/{repo}/topics` was registered without the sign-in middleware that provides the cross-origin protection, so a request issued by a third-party site was not rejected. A repository administrator who visited a malicious page could have the topics of…

  • High 7.5

    Gitea SSH certificate principal impersonation of other users

    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_AUTHORIZE…

  • High 8.1

    Gitea API token scope escalation through HTTP signatures

    Gitea allows a token with write:user scope to register an attacker-controlled SSH public key on the token owner's account. API requests signed with the corresponding private key authenticate as that account through HTTP Signature without API token scope infor…

  • High 8.8
    CVE-2026-73802 Public exploit

    Gitea Runner host isolation bypass through container options

    Gitea Runner passes workflow-controlled container options into Docker job container configuration while privileged mode is disabled. Host namespace settings, expanded capabilities, and security profile overrides can remain effective despite Privileged being f…

  • High 8.8

    Gitea reusable workflow secret exposure in pull_request_target

    Gitea resolves local reusable workflow files from a fork's head commit when a trusted base-branch workflow runs for a pull_request_target event. A fork author can modify a referenced reusable workflow so attacker-controlled code executes with the repository a…

  • High 7.5

    Gitea external renderer argument injection and code execution

    Gitea substitutes a URL derived from the markup Context field into external renderer command templates without escaping the reference path before shell-style argument splitting. A crafted Context can inject additional renderer arguments, including options tha…

  • High 8.8

    Gitea second-factor bypass through OpenID identity linking

    Gitea's OpenID connect handler accepts a user's password without enforcing enrolled TOTP or WebAuthn verification before completing sign-in and linking an OpenID identifier. When OpenID sign-in is enabled, an attacker who knows the victim's password can obtai…

  • High 8.8

    Gitea fork workflow approval bypass through review events

    Gitea's pull request review notifier does not attach the pull request to the Actions notification, so the fork workflow approval gate does not recognize the run as originating from a fork. Review comment and review approval or rejection events can consequentl…

  • High 8.1

    Gitea fork workflow approval bypass through concurrency cancellation

    Gitea enforces first-time fork contributor approval by blocking jobs, but some job transition and dispatch paths do not re-check the run's approval requirement. A separate run sharing a job-level concurrency group can cancel a pending job and cause its blocke…

  • High 8.1

    Gitea tag delete route deletes releases without release permission

    The Gitea web route for deleting tags (`POST /{owner}/{repo}/tags/delete`) requires only write access to the Code unit, but shares its handler with release deletion and did not check that the target was a plain tag. A collaborator with Code write access and w…

  • High 7.1

    Gitea push mirror local path check uses the repository owner

    The Gitea push mirror API checked whether the repository owner, instead of the requesting user, may use local file system paths. On instances with `[security] IMPORT_LOCAL_PATHS = true`, a repository administrator who is not allowed to import local paths coul…

  • High 7.5

    Gitea Actions memory exhaustion through large static matrices

    Gitea expanded a workflow's static `strategy.matrix` into its full Cartesian product without a size limit when creating a run, before the fork pull request approval gate applied. A user who can open a pull request from a fork could submit a small workflow fil…

  • High 8.1

    Gitea installer authentication bypass for existing accounts

    When Gitea's web installer is reachable against a database that already contains users, such as after `INSTALL_LOCK` has been reset to `false`, submitting the install form with an administrator username matching an existing account issued an authenticated ses…

  • High 7.5

    Gitea denial of service through external issue tracker patterns

    A repository's external issue tracker regular expression containing alternating capture groups could produce invalid slice indexes when Gitea rendered issue references, causing a runtime panic that terminated the Gitea process. A user who can edit a repositor…

  • High 7.1

    Gitea deploy key pushes acting as the repository owner

    When a push was authenticated with a deploy key, Gitea recorded the repository owner as the pusher, so permission checks in the push hook pipeline evaluated the owner instead of the deploy key. A holder of a writable deploy key could create protected tags wit…

  • High 7.5

    Gitea repository migration SSRF through DNS rebinding

    Gitea validates a repository migration hostname against its network allow and block lists before invoking Git, but the Git subprocess independently resolves the hostname when connecting. An attacker who can start a migration and control the destination's DNS …

  • High 7.5

    Gitea SSRF through Git HTTP redirects in mirrors and fetches

    Gitea validated the initial remote URL for push mirrors, wiki remote checks, and fetches of migrated pull request heads, but the subsequent raw Git operations followed HTTP redirects without revalidating the destination. A repository administrator using a pol…

  • High 8.1

    Gitea API team demotion not applied to unit permissions

    Changing an organization team's permission through the API with only the `permission` field did not rebuild the team's per-unit access, and the requested level was not applied as a cap. After an organization owner demoted a team, for example from admin to rea…

  • High 8.1

    Gitea push mirror SSRF and forced writes to internal Git hosts

    Gitea validated a push mirror's remote address against the `[migrations]` allow and block lists only when the mirror was created. Each synchronization passed the stored address directly to `git push`, so a name that later resolved to a blocked or internal add…

  • High 7.5

    Gitea trusted workflow cancellation by unapproved fork runs

    When a Gitea Actions run was inserted, older runs in the same workflow-level concurrency group were cancelled without checking whether the new run still needed approval. Because fork pull request runs are inserted under the base repository, a user who can ope…

  • High 7.7

    Gitea migration SSRF through ALLOWED_DOMAINS address check bypass

    When `[migrations] ALLOWED_DOMAINS` was configured, a hostname matching the allow list was accepted without checking its resolved address against the local-network restrictions. A user who can start repository migrations and control the DNS of an allowed host…

  • High 8.8

    Gitea fork workflow job revival through later approval

    A user who can open a fork pull request can place workflow content with a shared run-level concurrency group into a Gitea Actions run that is awaiting approval. When a later run in that group cancels the blocked job, the run becomes terminal while still marke…

  • High 8.8

    Gitea fork workflow approval bypass through cancel and rerun

    Gitea Actions blocks the jobs of workflow runs from first-time fork pull request contributors until a maintainer approves the run. The rerun path only required a run to be finished and built the new attempt's jobs without considering the pending approval, so …

  • High 8.1

    Public-only tokens bypass private-resource restrictions on `/api/v1/user` self routes

    Public-only tokens bypass private-resource restrictions on `/api/v1/user` self routes

  • High 7.5

    SSRF via Migration Asset Downloads Bypasses hostmatcher — Reads Internal Files and Cloud Metadata

    SSRF via Migration Asset Downloads Bypasses hostmatcher — Reads Internal Files and Cloud Metadata

  • High 7.5

    Cross-repository IDOR in issue-dependency removal lets an attacker tamper with and comment on private repos they cannot access

    Cross-repository IDOR in issue-dependency removal lets an attacker tamper with and comment on private repos they cannot access

  • High 8.1

    Branch Protection Bypass via PR Retargeting Preserves Stale `official` Approval Flag

    Branch Protection Bypass via PR Retargeting Preserves Stale `official` Approval Flag

  • High 7.5

    ParseAcceptLanguage quadratic-time DoS via Locale middleware on unauthenticated requests

    ParseAcceptLanguage quadratic-time DoS via Locale middleware on unauthenticated requests

  • High 7.1

    Repository Visibility Manipulation via Git Push Options

    Repository Visibility Manipulation via Git Push Options

  • High 7.5

    Private Repository Metadata Remains Accessible After Access Revocation

    Private Repository Metadata Remains Accessible After Access Revocation

  • High 7.5

    Private org member list leaked via /members API endpoint — incomplete fix for PR #38145

    Private org member list leaked via /members API endpoint — incomplete fix for PR #38145

  • High 7.5

    REST API exposes organization membership of private organizations to public

    REST API exposes organization membership of private organizations to public

  • High 7.7

    Two SSRF findings in Gitea 1.26.2

    Two SSRF findings in Gitea 1.26.2

  • High 7.1

    Fork-PR Actions task can read a third private repository via the collaborative-owner branch (missing fork-PR guard)

    Fork-PR Actions task can read a third private repository via the collaborative-owner branch (missing fork-PR guard)

  • High 8.5

    Repository Migration Follows Git HTTP Redirects After URL Allow/Block Validation, Enabling Internal Git Repository Exfiltration

    Repository Migration Follows Git HTTP Redirects After URL Allow/Block Validation, Enabling Internal Git Repository Exfiltration

  • High 8.1

    OAuth2 sign-in reactivates an administrator-deactivated account on auth sources without refresh tokens (incomplete fix of #38009)

    OAuth2 sign-in reactivates an administrator-deactivated account on auth sources without refresh tokens (incomplete fix of #38009)

  • High 7.5

    Internal API HTTP client hardcodes InsecureSkipVerify:true with no config override (CWE-295)

    Internal API HTTP client hardcodes InsecureSkipVerify:true with no config override (CWE-295)