{"id":"CVE-2026-121621","kind":"vulnerability","aliases":["CVE-2026-121621"],"related":[],"title":"Argo CD Image Updater: proxy URL setting lets an attacker run shell commands","description":"A command injection vulnerability was found in Argo CD Image Updater, where a proxy URL configured on an SSH Git repository is passed unsanitized into a shell-interpreted SSH command. An attacker able to set a malicious proxy value can inject shell metacharacters to execute arbitrary commands and access credentials in the context of the Image Updater process.","summary":"Argo CD Image Updater passes a proxy URL from an SSH Git repository configuration unsanitized into a shell-interpreted SSH command. An attacker who can set a malicious proxy value can inject shell metacharacters to run arbitrary commands and read credentials held by the Image Updater process.","severity":"high","cvss":8.8,"epss":null,"exploited":false,"exploited_at":null,"products":[{"name":"argocd-image-updater","fixed":[],"affected":"unknown; fix merged in master after v1.4.0 (PR #1905)","ecosystem":"vendor"}],"ecosystems":[],"tags":["argo-cd","gitops","infrastructure","kubernetes"],"not_affected_if":["no-ssh-git-proxy","trusted-admins-only"],"how_to_check":"Check which Argo CD Image Updater version you run (image tag of the argocd-image-updater deployment). No fixed release is confirmed yet: PR #1905 is merged in master and milestoned v1.5.0, so watch the releases page. Review repository and credential-template Secrets for SSH Git repositories that set a 'proxy' value, and remove any unexpected ones. Also check your Argo CD itself: the same flaw in Argo CD is fixed in 3.3.15, 3.4.10, 3.5.4 and 3.6.0-rc2.","fix":"Fix merged to argocd-image-updater master in PR #1905 (2026-11-02, milestone v1.5.0); no released version confirmed yet. Until then, do not set a proxy on SSH Git repositories and limit who can edit repository config.","status":"open","published_at":"2026-11-03T21:17:37+00:00","first_seen_at":"2026-11-03T21:19:30+00:00","triaged_at":"2026-11-03T21:20:36+00:00","updated_at":"2026-11-03T21:22:26+00:00","category":"infrastructure","confidence":0.6,"triage":{"at":"2026-11-03T21:20:36Z","model":"claude-haiku-5-5","output":{"fix":"unknown","reach":"unknown","title":"Argo CD Image Updater: proxy URL setting lets an attacker run shell commands","impact":"high","summary":"Argo CD Image Updater passes a proxy URL from an SSH Git repository configuration unsanitized into a shell-interpreted SSH command. An attacker who can set a malicious proxy value can inject shell metacharacters to run arbitrary commands and read credentials held by the Image Updater process.","audience":"businesses","category":"infrastructure","nicknames":[],"who_cares":["argo-cd","kubernetes","gitops"],"confidence":0.6,"fix_status":"unknown","needs_auth":"yes","worst_case":"Code runs in the Image Updater process; credentials readable.","analyst_note":"Find the affected and fixed version ranges and any setting workaround from the NVD entry or the Argo CD project advisory.","how_to_check":"- Check the installed Argo CD Image Updater version and compare it against the fixed release listed in the advisory: unknown\n- Look for SSH Git repository configurations that set a proxy value: unknown","plain_action":"","needs_analyst":true,"not_affected_if":["no-ssh-git-proxy","trusted-admins-only"],"who_is_affected":"Teams running Argo CD Image Updater with SSH Git repositories that use a proxy setting are exposed, and the risk depends on who can edit that repository configuration. Installations without SSH Git repositories configured with a proxy, or where only trusted administrators can change those settings, are less exposed. The sources do not give affected version ranges.","user_interaction":"no","needs_special_setup":"yes","severity_if_unknown":"high"},"cost_usd":0.000706,"input_tokens":4142,"output_tokens":584,"severity_before":"high"},"analyst_status":"done","analyst_note":"Find the affected and fixed version ranges and any setting workaround from the NVD entry or the Argo CD project advisory.","search":"'-121621':16A,19A '-2026':15A,18A 'abl':111C 'access':127C 'arbitrari':67B,124C 'argo':1A,25B,30B,85C 'argo-cd':24B 'argocd':21A 'argocd-image-updater':20A 'attack':10A,53B,110C 'cd':2A,26B,31B,86C 'command':13A,51B,68B,79C,108C,125C 'configur':43B,93C 'context':131C 'credenti':71B,128C 'cve':14A,17A 'execut':123C 'found':83C 'git':41B,97C 'gitop':27B 'held':72B 'imag':3A,32B,75B,87C,134C 'image':22A 'infrastructur':28B 'inject':62B,80C,119C 'interpret':49B,106C 'kubernet':29B 'let':8A 'malici':58B,115C 'metacharact':64B,121C 'pass':34B,100C 'process':77B,136C 'proxi':5A,36B,59B,91C,116C 'read':70B 'repositori':42B,98C 'run':11A,66B 'set':7A,56B,113C 'shell':12A,48B,63B,105C,120C 'shell-interpret':47B,104C 'ssh':40B,50B,96C,107C 'unsanit':44B,101C 'updat':4A,33B,76B,88C,135C 'updater':23A 'url':6A,37B,92C 'valu':60B,117C 'vulner':81C","nicknames":[],"mitigations":[],"who_affected":"Teams running Argo CD Image Updater with Git write-back over SSH where a proxy value is set on the SSH repository are exposed. The attacker needs to be able to set that proxy value (low privileges, network access per the CVSS vector), and the commands run with the Image Updater process's access, including its credentials. Installations that use no SSH Git proxy, or where only trusted admins can edit repository settings, can skip it. Affected Image Updater versions are not stated in the sources I read.","tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":"none","audience":"businesses","plain_action":null,"pkeys":["argocdimageupdater"],"ptokens":["argocd","image","updater"],"labels":["argocd","gitops","high","infrastructure","kubernetes"],"campaign_type":null,"first_public_at":"2026-10-07T15:58:47+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","cvss_by":"secalert@redhat.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-121621","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-121621","severity":null,"published_at":"2026-11-03T21:17:37+00:00","modified_at":"2026-11-03T21:17:37+00:00","first_seen_at":"2026-11-03T21:19:30+00:00","fetched_at":"2026-11-03T21:19:30+00:00","note":null},{"source":"analyst","external_id":"CVE-2026-121621:1568","url":null,"severity":null,"published_at":"2026-11-03T21:22:26+00:00","modified_at":"2026-11-03T21:22:26+00:00","first_seen_at":"2026-11-03T21:22:26+00:00","fetched_at":"2026-11-03T21:22:26+00:00","note":"Red Hat page and merged PR #1905 (argocd-image-updater, merged 2026-11-02, milestone v1.5.0) confirm the flaw and fix in master. Same flaw as Argo CD CVE-2026-55797 / GHSA-j6cw-g6p4-7hch. No Image Updater advisory or release with the fix read; affected versions unknown. Image Updater releases through v1.4.0 and v1.3.2 do not mention it. Not verified."}],"documents":[{"id":60952,"url":"https://github.com/argoproj-labs/argocd-image-updater/pull/1905","title":"fix: prevent command injection via SSH proxy handling in GIT_SSH_COMMAND (argocd-image-updater #1905)","kind":"other","source":"analyst","publisher":null,"text":null,"published_at":null,"relation":"fix","confidence":null,"note":null},{"id":60953,"url":"https://access.redhat.com/security/cve/CVE-2026-121621","title":"Red Hat CVE-2026-121621","kind":"advisory","source":"analyst","publisher":null,"text":null,"published_at":null,"relation":"advisory","confidence":null,"note":null},{"id":43225,"url":"https://github.com/argoproj/argo-cd/security/advisories/GHSA-j6cw-g6p4-7hch","title":"Argo CD GHSA-j6cw-g6p4-7hch (CVE-2026-55797), same flaw in Argo CD","kind":"advisory","source":"nvd","publisher":"vendor","text":null,"published_at":"2026-10-07T15:58:47+00:00","relation":"mentions","confidence":null,"note":null}],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}