{"api_version":"1","generated_at":"2026-10-06T21:45:56+00:00","cve":"CVE-2026-96589","urls":{"html":"https://cve.report/CVE-2026-96589","api":"https://cve.report/api/cve/CVE-2026-96589.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-96589","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-96589"},"summary":{"title":"Gitea private repository access retained after rejected transfer","description":"When a private repository is transferred to a user who lacks access, Gitea grants that recipient temporary read access as a collaborator so they can review the repository. Rejecting or cancelling the transfer did not revoke this collaboration, so the named recipient kept persistent read access to the private repository, including its code, issues, pull requests and wiki, and could clone it. The repository owner was not notified. Transfer-granted access is now removed while collaborations that existed before the transfer are preserved.","state":"PUBLISHED","assigner":"Gitea","published_at":"2026-10-06 20:17:35","updated_at":"2026-10-06 20:17:35"},"problem_types":["CWE-672","CWE-863","CWE-672 CWE-672: Operation on a Resource after Expiration or Release","CWE-863 CWE-863: Incorrect Authorization"],"metrics":[],"references":[{"url":"https://github.com/go-gitea/gitea/releases/tag/v28.0.0","name":"https://github.com/go-gitea/gitea/releases/tag/v28.0.0","refsource":"88ee5874-cf24-4952-aea0-31affedb7ff2","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/go-gitea/gitea/pull/39042","name":"https://github.com/go-gitea/gitea/pull/39042","refsource":"88ee5874-cf24-4952-aea0-31affedb7ff2","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://blog.gitea.com/release-of-28.0.0/","name":"https://blog.gitea.com/release-of-28.0.0/","refsource":"88ee5874-cf24-4952-aea0-31affedb7ff2","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/go-gitea/gitea/security/advisories/GHSA-xfqq-h54g-92f8","name":"https://github.com/go-gitea/gitea/security/advisories/GHSA-xfqq-h54g-92f8","refsource":"88ee5874-cf24-4952-aea0-31affedb7ff2","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-96589","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-96589","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Gitea","product":"Gitea","version":"affected 1.27.3 semver","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[{"source":"CNA","value":"https://github.com/tomchuoi","lang":"en"},{"source":"CNA","value":"https://github.com/sondt99","lang":"en"},{"source":"CNA","value":"https://github.com/Mon3mRT","lang":"en"},{"source":"CNA","value":"https://github.com/Black1hp","lang":"en"},{"source":"CNA","value":"https://github.com/bircni","lang":"en"},{"source":"CNA","value":"https://github.com/silverwind","lang":"en"},{"source":"CNA","value":"https://github.com/wxiaoguang","lang":"en"}],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"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/tomchuoi"},{"lang":"en","type":"reporter","value":"https://github.com/sondt99"},{"lang":"en","type":"finder","value":"https://github.com/Mon3mRT"},{"lang":"en","type":"finder","value":"https://github.com/Black1hp"},{"lang":"en","type":"remediation developer","value":"https://github.com/bircni"},{"lang":"en","type":"remediation developer","value":"https://github.com/silverwind"},{"lang":"en","type":"remediation developer","value":"https://github.com/wxiaoguang"}],"descriptions":[{"lang":"en","value":"When a private repository is transferred to a user who lacks access, Gitea grants that recipient temporary read access as a collaborator so they can review the repository. Rejecting or cancelling the transfer did not revoke this collaboration, so the named recipient kept persistent read access to the private repository, including its code, issues, pull requests and wiki, and could clone it. The repository owner was not notified. Transfer-granted access is now removed while collaborations that existed before the transfer are preserved."}],"problemTypes":[{"descriptions":[{"cweId":"CWE-672","description":"CWE-672: Operation on a Resource after Expiration or Release","lang":"en","type":"CWE"},{"cweId":"CWE-863","description":"CWE-863: Incorrect Authorization","lang":"en","type":"CWE"}]}],"providerMetadata":{"dateUpdated":"2026-10-06T19:25:38.737Z","orgId":"88ee5874-cf24-4952-aea0-31affedb7ff2","shortName":"Gitea"},"references":[{"name":"GitHub Security Advisory GHSA-xfqq-h54g-92f8","tags":["vendor-advisory"],"url":"https://github.com/go-gitea/gitea/security/advisories/GHSA-xfqq-h54g-92f8"},{"name":"Fix: go-gitea/gitea pull request #39042","tags":["patch"],"url":"https://github.com/go-gitea/gitea/pull/39042"},{"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 private repository access retained after rejected transfer"}},"cveMetadata":{"assignerOrgId":"88ee5874-cf24-4952-aea0-31affedb7ff2","assignerShortName":"Gitea","cveId":"CVE-2026-96589","datePublished":"2026-10-06T19:25:38.737Z","dateReserved":"2026-10-04T21:59:53.552Z","dateUpdated":"2026-10-06T19:25:38.737Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-10-06 20:17:35","lastModifiedDate":"2026-10-06 20:17:35","problem_types":["CWE-672","CWE-863","CWE-672 CWE-672: Operation on a Resource after Expiration or Release","CWE-863 CWE-863: Incorrect Authorization"],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"96589","Ordinal":"1","Title":"Gitea private repository access retained after rejected transfer","CVE":"CVE-2026-96589","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"96589","Ordinal":"1","NoteData":"When a private repository is transferred to a user who lacks access, Gitea grants that recipient temporary read access as a collaborator so they can review the repository. Rejecting or cancelling the transfer did not revoke this collaboration, so the named recipient kept persistent read access to the private repository, including its code, issues, pull requests and wiki, and could clone it. The repository owner was not notified. Transfer-granted access is now removed while collaborations that existed before the transfer are preserved.","Type":"Description","Title":"Gitea private repository access retained after rejected transfer"}]}}}