{"id":"CVE-2026-96626","kind":"vulnerability","aliases":["CVE-2026-96626"],"related":[],"title":"Arcane: registry URL change leaks stored container registry token","description":"Arcane is an interface for managing Docker containers, images, networks, and volumes. Prior to 2.5.0, UpdateRegistry and TestRegistry in backend/api/services/container_registry_service.go allow the registry URL to change while preserving the stored encrypted token. When a holder of registries:update and registries:test repoints a generic registry URL without supplying a replacement token, TestRegistry decrypts the preserved token and RegistryLogin sends it to the attacker-controlled host because normalizeRegistryServerAddressInternal does not restrict the destination. This exposes the stored container-registry PAT or password and can enable image access or tampering. This issue is fixed in version 2.5.0.","summary":"Arcane, a Docker management interface, lets a user with registry update and test permissions repoint a stored registry URL while keeping the saved token. The test then sends that decrypted token to the attacker-chosen host, exposing the registry password or PAT and enabling image access or tampering.","severity":"high","cvss":8.5,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["arcane","container-registry","docker","package","self-hosted"],"not_affected_if":["arcane-2.5.0-or-later","no-generic-registries","trusted-registry-admins"],"how_to_check":"- Check the installed Arcane version; releases before `2.5.0` are affected.\n- Review which users hold `registries:update` and `registries:test` permissions in Arcane.","fix":"- Upgrade Arcane to `2.5.0` or later.\n- Rotate the stored container registry tokens and passwords after upgrading if the registry permissions were held by untrusted users.","status":"open","published_at":"2026-10-16T22:18:58+00:00","first_seen_at":"2026-10-23T21:57:14+00:00","triaged_at":"2026-10-25T03:01:35+00:00","updated_at":"2026-10-25T03:01:35+00:00","category":"package","confidence":0.8,"triage":{"at":"2026-10-25T03:01:35Z","model":"claude-haiku-5-5","output":{"fix":"- Upgrade Arcane to `2.5.0` or later.\n- Rotate the stored container registry tokens and passwords after upgrading if the registry permissions were held by untrusted users.","reach":"network","title":"Arcane: registry URL change leaks stored container registry token","impact":"high","summary":"Arcane, a Docker management interface, lets a user with registry update and test permissions repoint a stored registry URL while keeping the saved token. The test then sends that decrypted token to the attacker-chosen host, exposing the registry password or PAT and enabling image access or tampering.","category":"package","nicknames":[],"who_cares":["arcane","docker","self-hosted","container-registry"],"confidence":0.8,"needs_auth":"yes","worst_case":"Attacker obtains stored registry token and can pull or tamper images","analyst_note":"","how_to_check":"- Check the installed Arcane version; releases before `2.5.0` are affected.\n- Review which users hold `registries:update` and `registries:test` permissions in Arcane.","needs_analyst":false,"not_affected_if":["arcane-2.5.0-or-later","no-generic-registries","trusted-registry-admins"],"who_is_affected":"Teams self-hosting Arcane below version 2.5.0 that have generic container registries configured with saved tokens, and users with registry update and test permissions can trigger the leak. Teams not running Arcane, or running 2.5.0 or later, can skip it.","user_interaction":"no","needs_special_setup":"yes","severity_if_unknown":"high"},"cost_usd":0.000612,"input_tokens":3435,"output_tokens":536,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-2026':11A,14A '-96626':12A,15A '2.5.0':88C,170C 'access':71B,161C 'allow':94C 'arcan':1A,16B,25B,74C 'attack':59B,137C 'attacker-chosen':58B 'attacker-control':136C 'backend/api/services/container_registry_service.go':93C 'chang':4A,99C 'chosen':60B 'contain':7A,18B,81C,152C 'container-registri':17B,151C 'control':138C 'cve':10A,13A 'decrypt':54B,126C 'destin':146C 'docker':20B,27B,80C 'enabl':69B,159C 'encrypt':104C 'expos':62B,148C 'fix':167C 'generic':117C 'holder':108C 'host':24B,61B,139C 'imag':70B,82C,160C 'interfac':29B,77C 'issu':165C 'keep':45B 'leak':5A 'let':30B 'manag':28B,79C 'network':83C 'normalizeregistryserveraddressintern':141C 'packag':21B 'password':65B,156C 'pat':67B,154C 'permiss':38B 'preserv':101C,128C 'prior':86C 'registri':2A,8A,19B,34B,42B,64B,96C,110C,113C,118C,153C 'registrylogin':131C 'replac':123C 'repoint':39B,115C 'restrict':144C 'save':47B 'self':23B 'self-host':22B 'send':52B,132C 'store':6A,41B,103C,150C 'suppli':121C 'tamper':73B,163C 'test':37B,50B,114C 'testregistri':91C,125C 'token':9A,48B,55B,105C,124C,129C 'updat':35B,111C 'updateregistri':89C 'url':3A,43B,97C,119C 'user':32B 'version':169C 'volum':85C 'without':120C","nicknames":[],"mitigations":[],"who_affected":"Teams self-hosting Arcane below version 2.5.0 that have generic container registries configured with saved tokens, and users with registry update and test permissions can trigger the leak. Teams not running Arcane, or running 2.5.0 or later, can skip it.","tier":"B","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-16T22:18:58+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N","cvss_by":"security-advisories@github.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-96626","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-96626","severity":null,"published_at":"2026-10-16T22:18:58+00:00","modified_at":"2026-10-16T22:18:58+00:00","first_seen_at":"2026-10-23T21:57:14+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"}