{"id":"CVE-2026-116474","kind":"vulnerability","aliases":["CVE-2026-116474"],"related":[],"title":"Gitea: Actions job could fake trusted commit signatures on any repository","description":"The `GITEA_TOKEN` of a Gitea Actions job authenticates as the `gitea-actions` system user, and the `/api/v1/user` email and GPG key endpoints accepted that user, so a job could register an email address and a GPG key on it; without required email confirmation (the default) the address is stored as activated. Commit verification treats a key without a real owner as the instance signing key, so any user who can run a workflow job could make commits signed with their own key show as trusted and signed by the instance in every repository where they appear, including pull requests to repositories the user cannot write to. The impact is limited to the displayed signature status: enforcement such as required signed commits only checks that a signature is verified and is unaffected, and no access is gained. The `/api/v1/user` routes now reject system users.","summary":"A Gitea Actions job runs as a system user that could register an email and GPG key on itself, so commits signed with that key show as verified and signed by the instance. The impact is limited to the displayed signature status; enforcement such as required signed commits is unaffected and no access is gained.","severity":"low","cvss":null,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["gitea","gitea-actions","other","self-hosted"],"not_affected_if":["actions-disabled"],"how_to_check":"- Check the Gitea version with `gitea --version` and compare it to the fixed release in the sources","fix":null,"status":"open","published_at":"2026-11-01T10:18:35+00:00","first_seen_at":"2026-11-01T10:49:33+00:00","triaged_at":"2026-11-01T10:51:35+00:00","updated_at":"2026-11-01T10:51:35+00:00","category":"other","confidence":0.6,"triage":{"at":"2026-11-01T10:51:35Z","model":"claude-haiku-5-5","output":{"fix":"unknown","reach":"network","title":"Gitea: Actions job could fake trusted commit signatures on any repository","impact":"low","summary":"A Gitea Actions job runs as a system user that could register an email and GPG key on itself, so commits signed with that key show as verified and signed by the instance. The impact is limited to the displayed signature status; enforcement such as required signed commits is unaffected and no access is gained.","audience":"businesses","category":"other","nicknames":[],"who_cares":["gitea","self-hosted","gitea-actions"],"confidence":0.6,"fix_status":"unknown","needs_auth":"yes","worst_case":"Forged commits display as verified and signed by the instance","analyst_note":"Confirm the affected and fixed Gitea versions from the NVD entry or the Gitea advisory, since the sources give no version range.","how_to_check":"- Check the Gitea version with `gitea --version` and compare it to the fixed release in the sources\n- Unknown whether a specific configuration exposes it beyond the default; sources do not say","plain_action":"","needs_analyst":true,"not_affected_if":["actions-disabled"],"who_is_affected":"Teams running a self-hosted Gitea instance with Gitea Actions enabled, where anyone able to run a workflow job could influence displayed commit signature status. Required signed commits enforcement is not affected, and instances without Actions can skip it. The sources do not give the affected version range.","user_interaction":"no","needs_special_setup":"unknown","severity_if_unknown":"low"},"cost_usd":0.000694,"input_tokens":4285,"output_tokens":530,"severity_before":"unknown"},"analyst_status":null,"analyst_note":null,"search":"'-116474':14A,17A '-2026':13A,16A '/api/v1/user':99C,220C 'accept':105C 'access':78B,216C 'action':2A,21B,28B,87C,94C 'activ':133C 'address':115C,129C 'appear':178C 'authent':89C 'cannot':186C 'check':205C 'commit':7A,46B,73B,134C,159C,203C 'confirm':125C 'could':4A,36B,111C,157C 'cve':12A,15A 'default':127C 'display':65B,195C 'email':39B,100C,114C,124C 'endpoint':104C 'enforc':68B,198C 'everi':174C 'fake':5A 'gain':80B,218C 'gitea':1A,18B,20B,27B,82C,86C,93C 'gitea-act':19B,92C 'gpg':41B,102C,118C 'host':25B 'impact':60B,190C 'includ':179C 'instanc':58B,145C,172C 'job':3A,29B,88C,110C,156C 'key':42B,50B,103C,119C,138C,147C,164C 'limit':62B,192C 'make':158C 'owner':142C 'pull':180C 'real':141C 'regist':37B,112C 'reject':223C 'repositori':11A,175C,183C 'request':181C 'requir':71B,123C,201C 'rout':221C 'run':30B,153C 'self':24B 'self-host':23B 'show':51B,165C 'sign':47B,55B,72B,146C,160C,169C,202C 'signatur':8A,66B,196C,208C 'status':67B,197C 'store':131C 'system':33B,95C,224C 'token':83C 'treat':136C 'trust':6A,167C 'unaffect':75B,213C 'user':34B,96C,107C,150C,185C,225C 'verif':135C 'verifi':53B,210C 'without':122C,139C 'workflow':155C 'write':187C","nicknames":[],"mitigations":[],"who_affected":"Teams running a self-hosted Gitea instance with Gitea Actions enabled, where anyone able to run a workflow job could influence displayed commit signature status. Required signed commits enforcement is not affected, and instances without Actions can skip it. The sources do not give the affected version range.","tier":"C","verified":{},"analyst_revisit_at":null,"fix_status":"unknown","audience":"businesses","plain_action":null,"first_public_at":"2026-11-01T10:18:35+00:00","kev":null,"cvss_vector":null,"cvss_by":null,"poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-116474","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-116474","severity":null,"published_at":"2026-11-01T10:18:35+00:00","modified_at":"2026-11-01T10:18:35+00:00","first_seen_at":"2026-11-01T10:49:33+00:00","fetched_at":"2026-11-01T10:49:33+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}