{"id":"CVE-2026-57196","kind":"vulnerability","aliases":["CVE-2026-57196"],"related":[],"title":"Asterisk: phone provisioning error pages allow reflected XSS stealing AMI cookies","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 unauthenticated attacker may use reflected cross-site scripting in `phone provisioning HTTP error pages` to retrieve an authorized user's `AMI session cookie` and impersonate that user when `res_phoneprov` is enabled. The Asterisk HTTP web server, Asterisk Manager Interface (AMI), and AMI access via HTTP must all be enabled; each is disabled by default. The attacker must be able to connect to the HTTP server, which binds only to `127.0.0.1` by default even when enabled, and must convince the authorized user to click a malicious link. 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":"A reflected cross-site scripting flaw in Asterisk's phone provisioning HTTP error pages lets an unauthenticated attacker make an authorized user's AMI session cookie reachable. With that cookie the attacker can impersonate the user in the Asterisk Manager Interface, but only after the user clicks a malicious link.","severity":"low","cvss":2.3,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["asterisk","package","pbx","self-hosted","telephony"],"not_affected_if":["default-config","http-disabled","no-res-phoneprov"],"how_to_check":"- Check the Asterisk version with `asterisk -V` and compare against the fixed releases.\n- Check whether `res_phoneprov` is loaded with `asterisk -rx \"module show like phoneprov\"`.\n- Check whether the HTTP server, AMI and AMI over HTTP are enabled in `http.conf` and `manager.conf`; all three are disabled by default.","fix":"- Upgrade Asterisk to `20.20.1`, `21.12.3`, `22.10.1` or `23.4.1`, or Certified Asterisk to `20.7-cert11` or `22.8-cert3`.\n- If an upgrade is not possible, disable `res_phoneprov` or the Asterisk HTTP server.","status":"open","published_at":"2026-10-26T20:17:57+00:00","first_seen_at":"2026-10-26T20:50:17+00:00","triaged_at":"2026-10-26T20:51:58+00:00","updated_at":"2026-10-26T20:51:58+00:00","category":"package","confidence":0.8,"triage":{"at":"2026-10-26T20:51:58Z","model":"claude-haiku-5-5","output":{"fix":"- Upgrade Asterisk to `20.20.1`, `21.12.3`, `22.10.1` or `23.4.1`, or Certified Asterisk to `20.7-cert11` or `22.8-cert3`.\n- If an upgrade is not possible, disable `res_phoneprov` or the Asterisk HTTP server.","reach":"network","title":"Asterisk: phone provisioning error pages allow reflected XSS stealing AMI cookies","impact":"medium","summary":"A reflected cross-site scripting flaw in Asterisk's phone provisioning HTTP error pages lets an unauthenticated attacker make an authorized user's AMI session cookie reachable. With that cookie the attacker can impersonate the user in the Asterisk Manager Interface, but only after the user clicks a malicious link.","category":"package","nicknames":[],"who_cares":["asterisk","telephony","pbx","self-hosted"],"confidence":0.8,"needs_auth":"no","worst_case":"attacker impersonates an AMI user after stealing their session cookie","analyst_note":"","how_to_check":"- Check the Asterisk version with `asterisk -V` and compare against the fixed releases.\n- Check whether `res_phoneprov` is loaded with `asterisk -rx \"module show like phoneprov\"`.\n- Check whether the HTTP server, AMI and AMI over HTTP are enabled in `http.conf` and `manager.conf`; all three are disabled by default.","needs_analyst":false,"not_affected_if":["default-config","no-res-phoneprov","http-disabled"],"who_is_affected":"Only systems that run Asterisk with res_phoneprov loaded, the HTTP server, AMI and AMI over HTTP all enabled are exposed. The HTTP server binds to 127.0.0.1 by default, so an attacker must be able to reach it, and a logged-in AMI user must be tricked into clicking a link. Teams running default configurations or without phone provisioning can skip it.","user_interaction":"yes","needs_special_setup":"yes","severity_if_unknown":"low"},"cost_usd":0.000717,"input_tokens":3549,"output_tokens":724,"severity_before":"low"},"analyst_status":null,"analyst_note":null,"search":"'-2026':13A,16A '-57196':14A,17A '127.0.0.1':173C '20.20.1':90C,196C '20.7':97C,203C '21.12.3':91C,197C '22.10.1':92C,198C '22.8':99C,205C '23.4.1':93C,199C 'abl':162C 'access':146C 'allow':6A 'ami':10A,49B,123C,143C,145C 'asterisk':1A,18B,33B,64B,76C,89C,96C,136C,140C,195C,202C 'attack':43B,57B,103C,159C 'author':46B,120C,183C 'bind':170C 'branch':82C 'cert11':98C,204C 'cert3':100C,206C 'certifi':95C,201C 'click':72B,186C 'connect':164C 'convinc':181C 'cooki':11A,51B,55B,125C 'cross':28B,108C 'cross-sit':27B,107C 'cve':12A,15A 'default':157C,175C 'disabl':155C 'enabl':134C,152C,178C 'error':4A,38B,115C 'even':176C 'exchang':83C 'fix':193C 'flaw':31B 'host':23B 'http':37B,114C,137C,148C,167C 'imperson':59B,127C 'interfac':66B,142C 'issu':191C 'let':40B 'link':75B,189C 'make':44B 'malici':74B,188C 'manag':65B,141C 'may':104C 'must':149C,160C,180C 'open':79C 'packag':19B 'page':5A,39B,116C 'pbx':20B 'phone':2A,35B,112C 'phoneprov':132C 'prior':87C 'privat':81C 'provis':3A,36B,113C 'reachabl':52B 'reflect':7A,26B,106C 'res':131C 'retriev':118C 'script':30B,110C 'self':22B 'self-host':21B 'server':139C,168C 'session':50B,124C 'site':29B,109C 'sourc':80C 'steal':9A 'telephoni':24B,85C 'toolkit':86C 'unauthent':42B,102C 'use':105C 'user':47B,61B,71B,121C,129C,184C 'via':147C 'web':138C 'xss':8A","nicknames":[],"mitigations":[],"who_affected":"Only systems that run Asterisk with res_phoneprov loaded, the HTTP server, AMI and AMI over HTTP all enabled are exposed. The HTTP server binds to 127.0.0.1 by default, so an attacker must be able to reach it, and a logged-in AMI user must be tricked into clicking a link. Teams running default configurations or without phone provisioning can skip it.","tier":"C","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-26T20:17:57+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:L/VA:L/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":"security-advisories@github.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-57196","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-57196","severity":null,"published_at":"2026-10-26T20:17:57+00:00","modified_at":"2026-10-26T20:17:57+00:00","first_seen_at":"2026-10-26T20:50:17+00:00","fetched_at":"2026-10-26T20:50:17+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"}