CVE-2026-73804 (GCVE-0-2026-73804)
Vulnerability from cvelistv5
Published
2026-10-14 14:38
Modified
2026-10-18 13:40
CWE
  • CWE-266 - Incorrect Privilege Assignment
  • CWE-863 - Incorrect Authorization
Summary
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 information, causing route-level token scope checks to be skipped. This converts a user-scoped token into an unscoped API authentication method while retaining the account's normal role and repository permissions.
Impacted products
Vendor Product Version
Gitea Gitea Version: 0   ≤ 1.26.4
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "cvssV3_1": {
              "attackComplexity": "LOW",
              "attackVector": "NETWORK",
              "availabilityImpact": "NONE",
              "baseScore": 8.1,
              "baseSeverity": "HIGH",
              "confidentialityImpact": "HIGH",
              "integrityImpact": "HIGH",
              "privilegesRequired": "LOW",
              "scope": "UNCHANGED",
              "userInteraction": "NONE",
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N",
              "version": "3.1"
            }
          },
          {
            "other": {
              "content": {
                "id": "CVE-2026-73804",
                "options": [
                  {
                    "Exploitation": "poc"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "total"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2026-10-18T13:40:42.994142Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2026-10-18T13:40:55.669Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "references": [
          {
            "tags": [
              "exploit"
            ],
            "url": "https://github.com/go-gitea/gitea/security/advisories/GHSA-q55v-4cmj-xh65"
          }
        ],
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "packageName": "gitea.dev",
          "product": "Gitea",
          "vendor": "Gitea",
          "versions": [
            {
              "lessThanOrEqual": "1.26.4",
              "status": "affected",
              "version": "0",
              "versionType": "semver"
            }
          ]
        }
      ],
      "credits": [
        {
          "lang": "en",
          "type": "reporter",
          "value": "https://github.com/ohxorud-dev"
        },
        {
          "lang": "en",
          "type": "coordinator",
          "value": "https://github.com/bircni"
        },
        {
          "lang": "en",
          "type": "remediation reviewer",
          "value": "https://github.com/lunny"
        },
        {
          "lang": "en",
          "type": "remediation reviewer",
          "value": "https://github.com/delvh"
        },
        {
          "lang": "en",
          "type": "remediation developer",
          "value": "https://github.com/wxiaoguang"
        },
        {
          "lang": "en",
          "type": "coordinator",
          "value": "https://github.com/TheFox0x7"
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "Gitea allows a token with write:user scope to register an attacker-controlled SSH public key on the token owner\u0027s account. API requests signed with the corresponding private key authenticate as that account through HTTP Signature without API token scope information, causing route-level token scope checks to be skipped. This converts a user-scoped token into an unscoped API authentication method while retaining the account\u0027s normal role and repository permissions."
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-266",
              "description": "CWE-266: Incorrect Privilege Assignment",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-863",
              "description": "CWE-863: Incorrect Authorization",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-10-14T14:38:00.292Z",
        "orgId": "88ee5874-cf24-4952-aea0-31affedb7ff2",
        "shortName": "Gitea"
      },
      "references": [
        {
          "name": "GitHub Security Advisory GHSA-q55v-4cmj-xh65",
          "tags": [
            "vendor-advisory"
          ],
          "url": "https://github.com/go-gitea/gitea/security/advisories/GHSA-q55v-4cmj-xh65"
        },
        {
          "name": "Gitea 1.27.2 release announcement",
          "tags": [
            "release-notes"
          ],
          "url": "https://blog.gitea.com/release-of-1.27.2/"
        },
        {
          "name": "Fix: go-gitea/gitea pull request #38862",
          "tags": [
            "patch"
          ],
          "url": "https://github.com/go-gitea/gitea/pull/38862"
        },
        {
          "name": "Fix: go-gitea/gitea pull request #38895",
          "tags": [
            "patch"
          ],
          "url": "https://github.com/go-gitea/gitea/pull/38895"
        },
        {
          "name": "go-gitea/gitea v1.27.2 release",
          "tags": [
            "release-notes"
          ],
          "url": "https://github.com/go-gitea/gitea/releases/tag/v1.27.2"
        }
      ],
      "title": "Gitea API token scope escalation through HTTP signatures"
    }
  },
  "cveMetadata": {
    "assignerOrgId": "88ee5874-cf24-4952-aea0-31affedb7ff2",
    "assignerShortName": "Gitea",
    "cveId": "CVE-2026-73804",
    "datePublished": "2026-10-14T14:38:00.292Z",
    "dateReserved": "2026-08-13T16:50:59.187Z",
    "dateUpdated": "2026-10-18T13:40:55.669Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "vulnrichment": {
      "containers": "{\"adp\": [{\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"cvssV3_1\": {\"scope\": \"UNCHANGED\", \"version\": \"3.1\", \"baseScore\": 8.1, \"attackVector\": \"NETWORK\", \"baseSeverity\": \"HIGH\", \"vectorString\": \"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N\", \"integrityImpact\": \"HIGH\", \"userInteraction\": \"NONE\", \"attackComplexity\": \"LOW\", \"availabilityImpact\": \"NONE\", \"privilegesRequired\": \"LOW\", \"confidentialityImpact\": \"HIGH\"}}, {\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2026-73804\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"poc\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"total\"}], \"version\": \"2.0.3\", \"timestamp\": \"2026-10-18T13:40:42.994142Z\"}}}], \"references\": [{\"url\": \"https://github.com/go-gitea/gitea/security/advisories/GHSA-q55v-4cmj-xh65\", \"tags\": [\"exploit\"]}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2026-10-18T13:40:37.311Z\"}}], \"cna\": {\"title\": \"Gitea API token scope escalation through HTTP signatures\", \"credits\": [{\"lang\": \"en\", \"type\": \"reporter\", \"value\": \"https://github.com/ohxorud-dev\"}, {\"lang\": \"en\", \"type\": \"coordinator\", \"value\": \"https://github.com/bircni\"}, {\"lang\": \"en\", \"type\": \"remediation reviewer\", \"value\": \"https://github.com/lunny\"}, {\"lang\": \"en\", \"type\": \"remediation reviewer\", \"value\": \"https://github.com/delvh\"}, {\"lang\": \"en\", \"type\": \"remediation developer\", \"value\": \"https://github.com/wxiaoguang\"}, {\"lang\": \"en\", \"type\": \"coordinator\", \"value\": \"https://github.com/TheFox0x7\"}], \"affected\": [{\"vendor\": \"Gitea\", \"product\": \"Gitea\", \"versions\": [{\"status\": \"affected\", \"version\": \"0\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"1.26.4\"}], \"packageName\": \"gitea.dev\", \"defaultStatus\": \"unaffected\"}], \"references\": [{\"url\": \"https://github.com/go-gitea/gitea/security/advisories/GHSA-q55v-4cmj-xh65\", \"name\": \"GitHub Security Advisory GHSA-q55v-4cmj-xh65\", \"tags\": [\"vendor-advisory\"]}, {\"url\": \"https://blog.gitea.com/release-of-1.27.2/\", \"name\": \"Gitea 1.27.2 release announcement\", \"tags\": [\"release-notes\"]}, {\"url\": \"https://github.com/go-gitea/gitea/pull/38862\", \"name\": \"Fix: go-gitea/gitea pull request #38862\", \"tags\": [\"patch\"]}, {\"url\": \"https://github.com/go-gitea/gitea/pull/38895\", \"name\": \"Fix: go-gitea/gitea pull request #38895\", \"tags\": [\"patch\"]}, {\"url\": \"https://github.com/go-gitea/gitea/releases/tag/v1.27.2\", \"name\": \"go-gitea/gitea v1.27.2 release\", \"tags\": [\"release-notes\"]}], \"descriptions\": [{\"lang\": \"en\", \"value\": \"Gitea allows a token with write:user scope to register an attacker-controlled SSH public key on the token owner\u0027s account. API requests signed with the corresponding private key authenticate as that account through HTTP Signature without API token scope information, causing route-level token scope checks to be skipped. This converts a user-scoped token into an unscoped API authentication method while retaining the account\u0027s normal role and repository permissions.\"}], \"problemTypes\": [{\"descriptions\": [{\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-266\", \"description\": \"CWE-266: Incorrect Privilege Assignment\"}, {\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-863\", \"description\": \"CWE-863: Incorrect Authorization\"}]}], \"providerMetadata\": {\"orgId\": \"88ee5874-cf24-4952-aea0-31affedb7ff2\", \"shortName\": \"Gitea\", \"dateUpdated\": \"2026-10-14T14:38:00.292Z\"}}}",
      "cveMetadata": "{\"cveId\": \"CVE-2026-73804\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2026-10-18T13:40:55.669Z\", \"dateReserved\": \"2026-08-13T16:50:59.187Z\", \"assignerOrgId\": \"88ee5874-cf24-4952-aea0-31affedb7ff2\", \"datePublished\": \"2026-10-14T14:38:00.292Z\", \"assignerShortName\": \"Gitea\"}",
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }
  }
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…

Loading…