{"id":"CVE-2026-104080","kind":"vulnerability","aliases":["CVE-2026-104080"],"related":[],"title":"Control Web Panel: unauthenticated shell injection grants root command execution","description":"Control Web Panel (CWP) before webpanel_version 1.30 contains an OS command injection vulnerability in the loopback API /valid_token/ route that allows unauthenticated attackers to execute arbitrary commands as root by injecting shell metacharacters into the unvalidated 'user' parameter. Attackers can send a crafted request to the /valid_token/ route, which passes the parameter unescaped into a shell_exec() call.","summary":"Control Web Panel (CWP) before webpanel_version 1.30 passes the 'user' parameter of its loopback /valid_token/ API route unescaped into a shell call. An unauthenticated attacker who can reach that route can inject shell metacharacters and run arbitrary commands as root.","severity":"high","cvss":8.6,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["control-web-panel","infrastructure","linux","self-hosted","web-hosting"],"not_affected_if":["cwp-1.30-or-later"],"how_to_check":"- Check the installed CWP version against `webpanel_version` in the panel's version file; versions below 1.30 are affected per the sources.\n- Confirm whether the panel's loopback API route `/valid_token/` is reachable from outside the host, such as through a proxy or forwarded port.","fix":"- Move Control Web Panel to `webpanel_version` 1.30 or later, as stated by the sources.","status":"open","published_at":"2026-11-02T16:17:22+00:00","first_seen_at":"2026-11-02T16:24:03+00:00","triaged_at":"2026-11-02T16:26:23+00:00","updated_at":"2026-11-02T16:26:23+00:00","category":"infrastructure","confidence":0.7,"triage":{"at":"2026-11-02T16:26:23Z","model":"claude-haiku-5-5","output":{"fix":"- Move Control Web Panel to `webpanel_version` 1.30 or later, as stated by the sources.","reach":"network","title":"Control Web Panel: unauthenticated shell injection grants root command execution","impact":"high","summary":"Control Web Panel (CWP) before webpanel_version 1.30 passes the 'user' parameter of its loopback /valid_token/ API route unescaped into a shell call. An unauthenticated attacker who can reach that route can inject shell metacharacters and run arbitrary commands as root.","audience":"businesses","category":"infrastructure","nicknames":[],"who_cares":["control-web-panel","self-hosted","linux","web-hosting"],"confidence":0.7,"fix_status":"available","needs_auth":"no","worst_case":"Unauthenticated attacker runs arbitrary commands as root on server","analyst_note":"Confirm from the NVD entry or the VulnCheck advisory how the loopback route becomes reachable remotely, and whether the fix is limited to version 1.30.","how_to_check":"- Check the installed CWP version against `webpanel_version` in the panel's version file; versions below 1.30 are affected per the sources.\n- Confirm whether the panel's loopback API route `/valid_token/` is reachable from outside the host, such as through a proxy or forwarded port.","plain_action":"","needs_analyst":true,"not_affected_if":["cwp-1.30-or-later"],"who_is_affected":"Servers running Control Web Panel before version 1.30 are exposed. The flaw is in a loopback-only API route, so the risk depends on whether an attacker can reach that route, directly or through a proxy or local foothold; the sources do not say which configurations expose it further.","user_interaction":"no","needs_special_setup":"unknown","severity_if_unknown":"high"},"cost_usd":0.000733,"input_tokens":4195,"output_tokens":627,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-104080':13A,16A '-2026':12A,15A '/valid_token':44B,88C,117C '1.30':36B,77C 'allow':91C 'api':45B,87C 'arbitrari':66B,96C 'attack':54B,93C,109C 'call':51B,128C 'command':9A,67B,81C,97C 'contain':78C 'control':1A,18B,29B,70C 'control-web-panel':17B 'craft':113C 'cve':11A,14A 'cwp':32B,73C 'exec':127C 'execut':10A,95C 'grant':7A 'host':25B,28B 'infrastructur':21B 'inject':6A,61B,82C,101C 'linux':22B 'loopback':43B,86C 'metacharact':63B,103C 'os':80C 'panel':3A,20B,31B,72C 'paramet':40B,108C,122C 'pass':37B,120C 'reach':57B 'request':114C 'root':8A,69B,99C 'rout':46B,59B,89C,118C 'run':65B 'self':24B 'self-host':23B 'send':111C 'shell':5A,50B,62B,102C,126C 'unauthent':4A,53B,92C 'unescap':47B,123C 'unvalid':106C 'user':39B,107C 'version':35B,76C 'vulner':83C 'web':2A,19B,27B,30B,71C 'web-host':26B 'webpanel':34B,75C","nicknames":[],"mitigations":[],"who_affected":"Servers running Control Web Panel before version 1.30 are exposed. The flaw is in a loopback-only API route, so the risk depends on whether an attacker can reach that route, directly or through a proxy or local foothold; the sources do not say which configurations expose it further.","tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"businesses","plain_action":null,"pkeys":[],"ptokens":[],"labels":["controlwebpanel","high","infrastructure","linux","selfhosted","webhosting"],"first_public_at":"2026-11-02T16:17:22+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","cvss_by":"disclosure@vulncheck.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-104080","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-104080","severity":null,"published_at":"2026-11-02T16:17:22+00:00","modified_at":"2026-11-02T16:17:22+00:00","first_seen_at":"2026-11-02T16:24:03+00:00","fetched_at":"2026-11-02T16:24:03+00:00","note":null}],"documents":[{"id":52758,"url":"https://www.vulncheck.com/advisories/control-web-panel-cwp-os-command-injection-via-valid-token","title":"Third-party advisory: www.vulncheck.com","kind":"advisory","source":"nvd","publisher":"research","text":null,"published_at":null,"relation":"advisory","confidence":null,"note":"Third-party advisory: www.vulncheck.com"}],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}