{"id":"CVE-2026-57202","kind":"vulnerability","aliases":["CVE-2026-57202"],"related":[],"title":"Asterisk: read-only ARI user can write files through setChannelVar","description":"Asterisk is an open source private branch exchange and telephony toolkit. Prior to Asterisk 20.20.1, 21.12.3, 22.10.1, 23.4.1 and Certified Asterisk 20.7-cert11, 22.8-cert3, an authenticated Asterisk REST Interface (ARI) attacker with read-only privileges may use `setChannelVar` to execute write dialplan functions, including `FILE()` writes, even when `live_dangerously` in `asterisk.conf` is set to no. The Asterisk HTTP web server must be enabled and reachable, and the attacker must already have valid `read-only ARI credentials`. HTTP is disabled by default and binds only to 127.0.0.1 by default even when enabled. This issue is fixed in Asterisk 20.20.1, 21.12.3, 22.10.1, 23.4.1 and Certified Asterisk 20.7-cert11, 22.8-cert3.","summary":"Asterisk's REST Interface lets a user with read-only ARI credentials call setChannelVar to run write dialplan functions, including FILE() writes, even when live_dangerously is set to no. An attacker who holds those credentials can write files on the Asterisk host, which can lead to code execution.","severity":"high","cvss":8.1,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["asterisk","package","pbx","self-hosted","telephony"],"not_affected_if":["ari-disabled","default-config","http-disabled"],"how_to_check":"- Run `asterisk -V` to read the installed version.\n- Check `asterisk.conf` for `live_dangerously`, and check whether the HTTP server is enabled in `http.conf` and bound to a reachable address.\n- Check `ari.conf` for read-only ARI users.","fix":"- Upgrade Asterisk to `20.20.1`, `21.12.3`, `22.10.1` or `23.4.1`.\n- Upgrade Certified Asterisk to `20.7-cert11` or `22.8-cert3`.","status":"open","published_at":"2026-10-27T18:17:37+00:00","first_seen_at":"2026-10-27T18:33:00+00:00","triaged_at":"2026-10-27T18:34:28+00:00","updated_at":"2026-10-27T18:34:28+00:00","category":"package","confidence":0.7,"triage":{"at":"2026-10-27T18:34:28Z","model":"claude-haiku-5-5","output":{"fix":"- Upgrade Asterisk to `20.20.1`, `21.12.3`, `22.10.1` or `23.4.1`.\n- Upgrade Certified Asterisk to `20.7-cert11` or `22.8-cert3`.","reach":"network","title":"Asterisk: read-only ARI user can write files through setChannelVar","impact":"high","summary":"Asterisk's REST Interface lets a user with read-only ARI credentials call setChannelVar to run write dialplan functions, including FILE() writes, even when live_dangerously is set to no. An attacker who holds those credentials can write files on the Asterisk host, which can lead to code execution.","category":"package","nicknames":[],"who_cares":["asterisk","self-hosted","telephony","pbx"],"confidence":0.7,"needs_auth":"yes","worst_case":"Attacker writes files on the server, possibly reaching code execution.","analyst_note":"Check the Asterisk security advisory for the exact file paths writable via FILE() and whether code execution is confirmed.","how_to_check":"- Run `asterisk -V` to read the installed version.\n- Check `asterisk.conf` for `live_dangerously`, and check whether the HTTP server is enabled in `http.conf` and bound to a reachable address.\n- Check `ari.conf` for read-only ARI users.","needs_analyst":true,"not_affected_if":["default-config","http-disabled","ari-disabled"],"who_is_affected":"Only deployments with the Asterisk HTTP server and ARI enabled and reachable, where an attacker already holds valid read-only ARI credentials. HTTP is disabled by default and binds to 127.0.0.1 by default, so default installs are not reachable from the network. Teams that run Asterisk with ARI off or bound to localhost can skip it.","user_interaction":"no","needs_special_setup":"yes","severity_if_unknown":"unknown"},"cost_usd":0.000682,"input_tokens":3520,"output_tokens":660,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-2026':13A,16A '-57202':14A,17A '127.0.0.1':164C '20.20.1':89C,176C '20.7':96C,183C '21.12.3':90C,177C '22.10.1':91C,178C '22.8':98C,185C '23.4.1':92C,179C 'alreadi':147C 'ari':5A,36B,105C,153C 'asterisk':1A,18B,25B,67B,75C,88C,95C,102C,134C,175C,182C 'asterisk.conf':128C 'attack':57B,106C,145C 'authent':101C 'bind':161C 'branch':81C 'call':38B 'cert11':97C,184C 'cert3':99C,186C 'certifi':94C,181C 'code':73B 'credenti':37B,61B,154C 'cve':12A,15A 'danger':51B,126C 'default':159C,166C 'dialplan':43B,118C 'disabl':157C 'enabl':140C,169C 'even':48B,123C,167C 'exchang':82C 'execut':74B,116C 'file':9A,46B,64B,121C 'fix':173C 'function':44B,119C 'hold':59B 'host':23B,68B 'http':135C,155C 'includ':45B,120C 'interfac':28B,104C 'issu':171C 'lead':71B 'let':29B 'live':50B,125C 'may':112C 'must':138C,146C 'open':78C 'packag':19B 'pbx':20B 'prior':86C 'privat':80C 'privileg':111C 'reachabl':142C 'read':3A,34B,109C,151C 'read-on':2A,33B,108C,150C 'rest':27B,103C 'run':41B 'self':22B 'self-host':21B 'server':137C 'set':53B,130C 'setchannelvar':11A,39B,114C 'sourc':79C 'telephoni':24B,84C 'toolkit':85C 'use':113C 'user':6A,31B 'valid':149C 'web':136C 'write':8A,42B,47B,63B,117C,122C","nicknames":[],"mitigations":[],"who_affected":"Only deployments with the Asterisk HTTP server and ARI enabled and reachable, where an attacker already holds valid read-only ARI credentials. HTTP is disabled by default and binds to 127.0.0.1 by default, so default installs are not reachable from the network. Teams that run Asterisk with ARI off or bound to localhost can skip it.","tier":"B","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-27T18:17:37+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N","cvss_by":"security-advisories@github.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-57202","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-57202","severity":null,"published_at":"2026-10-27T18:17:37+00:00","modified_at":"2026-10-27T18:17:37+00:00","first_seen_at":"2026-10-27T18:33:00+00:00","fetched_at":"2026-10-27T18:33:00+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"}