CVE-2026-103059 (GCVE-0-2026-103059)
Vulnerability from cvelistv5
Published
2026-10-06 19:22
Modified
2026-10-07 14:17
Severity ?
Summary
When Gitea's built-in SSH server is enabled (`START_SSH_SERVER = true`), the presented public key was looked up with an SQL `LIKE` comparison of its encoded content, which is case-insensitive on some databases, including the default SQLite. An attacker who can construct a case variant of another user's registered RSA public key for which they can derive the private key could have that key matched to the victim's account and authenticate over SSH as that user. Keys are now looked up by fingerprint.
Impacted products
Vendor Product Version
Gitea Gitea Version: 0   ≤ 1.27.3
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "cvssV3_1": {
              "attackComplexity": "LOW",
              "attackVector": "NETWORK",
              "availabilityImpact": "NONE",
              "baseScore": 9.1,
              "baseSeverity": "CRITICAL",
              "confidentialityImpact": "HIGH",
              "integrityImpact": "HIGH",
              "privilegesRequired": "NONE",
              "scope": "UNCHANGED",
              "userInteraction": "NONE",
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N",
              "version": "3.1"
            }
          },
          {
            "other": {
              "content": {
                "id": "CVE-2026-103059",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "yes"
                  },
                  {
                    "Technical Impact": "total"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2026-10-07T14:17:16.900412Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "problemTypes": [
          {
            "descriptions": [
              {
                "cweId": "CWE-305",
                "description": "CWE-305 Authentication Bypass by Primary Weakness",
                "lang": "en",
                "type": "CWE"
              }
            ]
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2026-10-07T14:17:20.596Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "packageName": "gitea.dev",
          "product": "Gitea",
          "vendor": "Gitea",
          "versions": [
            {
              "lessThanOrEqual": "1.27.3",
              "status": "affected",
              "version": "0",
              "versionType": "semver"
            }
          ]
        }
      ],
      "credits": [
        {
          "lang": "en",
          "type": "reporter",
          "value": "https://github.com/carlini"
        },
        {
          "lang": "en",
          "type": "remediation developer",
          "value": "https://github.com/TheFox0x7"
        },
        {
          "lang": "en",
          "type": "remediation developer",
          "value": "https://github.com/wxiaoguang"
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "When Gitea\u0027s built-in SSH server is enabled (`START_SSH_SERVER = true`), the presented public key was looked up with an SQL `LIKE` comparison of its encoded content, which is case-insensitive on some databases, including the default SQLite. An attacker who can construct a case variant of another user\u0027s registered RSA public key for which they can derive the private key could have that key matched to the victim\u0027s account and authenticate over SSH as that user. Keys are now looked up by fingerprint."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-10-06T19:22:57.192Z",
        "orgId": "88ee5874-cf24-4952-aea0-31affedb7ff2",
        "shortName": "Gitea"
      },
      "references": [
        {
          "name": "GitHub Security Advisory GHSA-8pwg-hcgm-54cp",
          "tags": [
            "vendor-advisory"
          ],
          "url": "https://github.com/go-gitea/gitea/security/advisories/GHSA-8pwg-hcgm-54cp"
        },
        {
          "name": "Fix: go-gitea/gitea pull request #39423",
          "tags": [
            "patch"
          ],
          "url": "https://github.com/go-gitea/gitea/pull/39423"
        },
        {
          "name": "Gitea 28.0.0 release announcement",
          "tags": [
            "release-notes"
          ],
          "url": "https://blog.gitea.com/release-of-28.0.0/"
        },
        {
          "name": "go-gitea/gitea v28.0.0 release",
          "tags": [
            "release-notes"
          ],
          "url": "https://github.com/go-gitea/gitea/releases/tag/v28.0.0"
        }
      ],
      "title": "Gitea built-in SSH server authentication bypass through key case folding"
    }
  },
  "cveMetadata": {
    "assignerOrgId": "88ee5874-cf24-4952-aea0-31affedb7ff2",
    "assignerShortName": "Gitea",
    "cveId": "CVE-2026-103059",
    "datePublished": "2026-10-06T19:22:57.192Z",
    "dateReserved": "2026-10-04T21:57:35.559Z",
    "dateUpdated": "2026-10-07T14:17:20.596Z",
    "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\": 9.1, \"attackVector\": \"NETWORK\", \"baseSeverity\": \"CRITICAL\", \"vectorString\": \"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N\", \"integrityImpact\": \"HIGH\", \"userInteraction\": \"NONE\", \"attackComplexity\": \"LOW\", \"availabilityImpact\": \"NONE\", \"privilegesRequired\": \"NONE\", \"confidentialityImpact\": \"HIGH\"}}, {\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2026-103059\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"yes\"}, {\"Technical Impact\": \"total\"}], \"version\": \"2.0.3\", \"timestamp\": \"2026-10-07T14:17:16.900412Z\"}}}], \"problemTypes\": [{\"descriptions\": [{\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-305\", \"description\": \"CWE-305 Authentication Bypass by Primary Weakness\"}]}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2026-10-07T14:16:38.441Z\"}}], \"cna\": {\"title\": \"Gitea built-in SSH server authentication bypass through key case folding\", \"credits\": [{\"lang\": \"en\", \"type\": \"reporter\", \"value\": \"https://github.com/carlini\"}, {\"lang\": \"en\", \"type\": \"remediation developer\", \"value\": \"https://github.com/TheFox0x7\"}, {\"lang\": \"en\", \"type\": \"remediation developer\", \"value\": \"https://github.com/wxiaoguang\"}], \"affected\": [{\"vendor\": \"Gitea\", \"product\": \"Gitea\", \"versions\": [{\"status\": \"affected\", \"version\": \"0\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"1.27.3\"}], \"packageName\": \"gitea.dev\", \"defaultStatus\": \"unaffected\"}], \"references\": [{\"url\": \"https://github.com/go-gitea/gitea/security/advisories/GHSA-8pwg-hcgm-54cp\", \"name\": \"GitHub Security Advisory GHSA-8pwg-hcgm-54cp\", \"tags\": [\"vendor-advisory\"]}, {\"url\": \"https://github.com/go-gitea/gitea/pull/39423\", \"name\": \"Fix: go-gitea/gitea pull request #39423\", \"tags\": [\"patch\"]}, {\"url\": \"https://blog.gitea.com/release-of-28.0.0/\", \"name\": \"Gitea 28.0.0 release announcement\", \"tags\": [\"release-notes\"]}, {\"url\": \"https://github.com/go-gitea/gitea/releases/tag/v28.0.0\", \"name\": \"go-gitea/gitea v28.0.0 release\", \"tags\": [\"release-notes\"]}], \"descriptions\": [{\"lang\": \"en\", \"value\": \"When Gitea\u0027s built-in SSH server is enabled (`START_SSH_SERVER = true`), the presented public key was looked up with an SQL `LIKE` comparison of its encoded content, which is case-insensitive on some databases, including the default SQLite. An attacker who can construct a case variant of another user\u0027s registered RSA public key for which they can derive the private key could have that key matched to the victim\u0027s account and authenticate over SSH as that user. Keys are now looked up by fingerprint.\"}], \"providerMetadata\": {\"orgId\": \"88ee5874-cf24-4952-aea0-31affedb7ff2\", \"shortName\": \"Gitea\", \"dateUpdated\": \"2026-10-06T19:22:57.192Z\"}}}",
      "cveMetadata": "{\"cveId\": \"CVE-2026-103059\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2026-10-07T14:17:20.596Z\", \"dateReserved\": \"2026-10-04T21:57:35.559Z\", \"assignerOrgId\": \"88ee5874-cf24-4952-aea0-31affedb7ff2\", \"datePublished\": \"2026-10-06T19:22:57.192Z\", \"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…