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 without being on the tag allow list and change repository visibility through push options, for example making a private repository public. Pull requests created through the AGit flow with a deploy key were also attributed to the owner.
{
"cna_assigner": "Gitea",
"cwe_ids": [
"CWE-863"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/79xxx/CVE-2026-79960.json"
}{
"extracted_events": [
{
"cpe": "cpe:2.3:a:gitea:gitea:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "28.0.0"
}
],
"source": "CPE_RANGE"
},
{
"original_tag": "v28.0.0",
"range": [
{
"fixed": "15b8a5805adf57c5189602008d38cccfd3c795e0"
}
],
"source": "REFERENCES_TAG"
}
]
}