{"id":"CVE-2026-55158","summary":"Conflibot: Command injection via crafted pull request branch names under pull_request_target","details":"Conflibot warns in advance when merging a pull request will cause conflicts in other open pull requests. Prior to 1.2.1, src/index.ts builds git checkout, git merge, and git format-patch commands by interpolating the attacker-controlled pull request head.ref value into strings passed to exec. In the documented pull_request_target configuration, an attacker can open a pull request, including from a fork, whose branch name contains shell metacharacters, and the workflow automatically interprets those characters as commands without maintainer interaction. The commands execute on a runner with base-repository secrets and a write-scoped GITHUB_TOKEN, allowing arbitrary command execution, secret or token exfiltration, unauthorized pushes, and other token abuse. The fixed implementations in src/index.ts and src/conflibot.ts use execFile or spawn argument arrays, and the v2 line also uses numeric pull-request refs rather than branch names. This issue is fixed in versions 1.2.1 and 2.0.0.","aliases":["GHSA-2qvg-qr73-mqxp"],"modified":"2026-09-18T03:30:23.594712638Z","published":"2026-09-15T14:47:58.804Z","database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/55xxx/CVE-2026-55158.json","cna_assigner":"GitHub_M","cwe_ids":["CWE-78"]},"references":[{"type":"WEB","url":"https://github.com/wktk/conflibot/releases/tag/v1.2.1"},{"type":"WEB","url":"https://github.com/wktk/conflibot/releases/tag/v2.0.0"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/55xxx/CVE-2026-55158.json"},{"type":"ADVISORY","url":"https://github.com/wktk/conflibot/security/advisories/GHSA-2qvg-qr73-mqxp"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-55158"},{"type":"FIX","url":"https://github.com/wktk/conflibot/commit/0107ac6a4575ea200d0b92287ea58f975be9505d"},{"type":"FIX","url":"https://github.com/wktk/conflibot/commit/59e255c49c920fd6b67471ab9ef3bf194439a3f2"},{"type":"FIX","url":"https://github.com/wktk/conflibot/pull/329"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/wktk/conflibot","events":[{"introduced":"0"},{"fixed":"0107ac6a4575ea200d0b92287ea58f975be9505d"},{"fixed":"59e255c49c920fd6b67471ab9ef3bf194439a3f2"},{"fixed":"401bde09ac47fb11375ecf9fb663970532995776"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"1.2.1"}],"source":["AFFECTED_FIELD","REFERENCES"]}}],"versions":["v1.2.0","v1.1.2-pre2","v1.1.2-pre1","v1.1.1","v1.1.0","v1.0.1","v1.0.0","v0.3.0","v0.2.0","v0.1.0","v0.0.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-55158.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N"}]}