{"id":"CVE-2026-57169","kind":"vulnerability","aliases":["CVE-2026-57169"],"related":[],"title":"Dockhand is a Docker management application","description":"Dockhand is a Docker management application. Prior to 1.0.34, the in-browser container terminal endpoint /api/containers/<id>/exec does not enforce authentication on the WebSocket upgrade request. When an unauthenticated attacker has network reach to Dockhand, knows a target container ID, and targets a container with an interactive shell, the attacker can open a raw WebSocket terminal session and execute commands inside a known target container. This allows unauthenticated command execution inside the container, with possible host compromise when the container has sensitive mounts or privileged execution. This issue is fixed in version 1.0.34.","summary":"Dockhand, a Docker management web app, does not check authentication on the WebSocket endpoint that opens an in-browser terminal into a container. An unauthenticated attacker who can reach the server and knows a container ID can run commands inside that container, and possibly reach the host if the container has sensitive mounts or privileged mode.","severity":"critical","cvss":9.6,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["docker","dockhand","package","self-hosted"],"not_affected_if":["network-restricted","version-1.0.34-or-later"],"how_to_check":"Check the installed Dockhand version and whether it is below 1.0.34.\nFrom outside the trusted network, try a WebSocket upgrade to /api/containers/<id>/exec without credentials.","fix":"Upgrade Dockhand to 1.0.34 or later.\nUntil then, restrict network access to the Dockhand port to trusted hosts.","status":"open","published_at":"2026-10-16T17:17:35+00:00","first_seen_at":"2026-10-23T21:57:13+00:00","triaged_at":"2026-10-23T22:06:57+00:00","updated_at":"2026-10-23T22:28:55+00:00","category":"package","confidence":0.8,"triage":{"at":"2026-10-23T22:06:57Z","model":"claude-haiku-5-5","output":{"fix":"Upgrade Dockhand to 1.0.34 or later.\nUntil then, restrict network access to the Dockhand port to trusted hosts.","reach":"network","impact":"high","summary":"Dockhand, a Docker management web app, does not check authentication on the WebSocket endpoint that opens an in-browser terminal into a container. An unauthenticated attacker who can reach the server and knows a container ID can run commands inside that container, and possibly reach the host if the container has sensitive mounts or privileged mode.","category":"package","who_cares":["self-hosted","docker","dockhand"],"confidence":0.8,"needs_auth":"no","worst_case":"Unauthenticated command execution inside containers, possibly host compromise","analyst_note":"Confirm the affected version range and whether the NVD record or the Dockhand advisory lists a commit or patch; the sources only say prior to 1.0.34.","how_to_check":"Check the installed Dockhand version and whether it is below 1.0.34.\nFrom outside the trusted network, try a WebSocket upgrade to /api/containers/<id>/exec without credentials.\nunknown","needs_analyst":true,"not_affected_if":["version-1.0.34-or-later","network-restricted"],"user_interaction":"no","needs_special_setup":"no","severity_if_unknown":"critical"},"cost_usd":0.000517,"input_tokens":2864,"output_tokens":462,"severity_before":"critical"},"analyst_status":null,"analyst_note":null,"search":"'-2026':8A,11A '-57169':9A,12A '/api/containers':92C '/exec':93C '1.0.34':84C,169C 'allow':143C 'app':24B 'applic':6A,81C 'attack':45B,106C,126C 'authent':28B,97C 'browser':38B,88C 'check':27B 'command':58B,136C,145C 'compromis':153C 'contain':42B,54B,61B,69B,89C,115C,120C,141C,149C,156C 'cve':7A,10A 'docker':4A,13B,21B,79C 'dockhand':1A,14B,19B,76C,111C 'endpoint':32B,91C 'enforc':96C 'execut':135C,146C,162C 'fix':166C 'host':18B,66B,152C 'id':55B,116C 'in-brows':36B,86C 'insid':59B,137C,147C 'interact':123C 'issu':164C 'know':52B,112C 'known':139C 'manag':5A,22B,80C 'mode':75B 'mount':72B,159C 'network':108C 'open':34B,128C 'packag':15B 'possibl':63B,151C 'prior':82C 'privileg':74B,161C 'raw':130C 'reach':48B,64B,109C 'request':102C 'run':57B 'self':17B 'self-host':16B 'sensit':71B,158C 'server':50B 'session':133C 'shell':124C 'target':114C,118C,140C 'termin':39B,90C,132C 'unauthent':44B,105C,144C 'upgrad':101C 'version':168C 'web':23B 'websocket':31B,100C,131C","nicknames":[],"mitigations":[],"who_affected":null,"tier":null,"verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-16T17:17:35+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H","cvss_by":"security-advisories@github.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-57169","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-57169","severity":null,"published_at":"2026-10-16T17:17:35+00:00","modified_at":"2026-10-16T20:04:29+00:00","first_seen_at":"2026-10-23T21:57:13+00:00","fetched_at":"2026-10-23T22:28:55+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"}