{"id":"CVE-2026-118132","kind":"vulnerability","aliases":["CVE-2026-118132"],"related":[],"title":"NextChat: remote plugin schema runs attacker JavaScript in the Plugin Editor","description":"NextChat version 2.16.1 contains a client‑side cross‑site scripting (XSS) vulnerability in the Plugin Editor due to unsafe rendering of externally supplied OpenAPI plugin schema content. When a plugin schema is loaded from a remote URL, the returned content is stored in plugin.content and later rendered using React’s dangerouslySetInnerHTML without proper sanitization. An attacker can host a malicious OpenAPI schema containing HTML or JavaScript markup and trick a user into loading it through the Plugin Editor, resulting in arbitrary JavaScript execution in the NextChat origin. Successful exploitation allows access to JavaScript‑readable cookies and other client‑side data associated with the NextChat application.","summary":"NextChat 2.16.1 renders OpenAPI plugin schemas fetched from a remote URL with dangerouslySetInnerHTML and no sanitization. A user who loads a malicious schema through the Plugin Editor lets an attacker run JavaScript in the NextChat origin, reading JavaScript-readable cookies and client-side data.","severity":"medium","cvss":null,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["ai-chat-ui","ai-tooling","nextchat","self-hosted"],"not_affected_if":["plugin-editor-unused","trusted-schemas-only"],"how_to_check":"- Check the installed NextChat version; the sources say 2.16.1 is affected, and `unknown` for other versions.\n- Check whether the Plugin Editor is enabled and whether users load plugin schemas from remote URLs.","fix":"- unknown; the sources do not name a fixed version or patch.\n- Until a fix ships, avoid loading plugin schemas from untrusted remote URLs.","status":"open","published_at":"2026-10-27T18:17:36+00:00","first_seen_at":"2026-10-27T18:32:59+00:00","triaged_at":"2026-10-27T18:35:08+00:00","updated_at":"2026-10-27T18:35:08+00:00","category":"ai-tooling","confidence":0.6,"triage":{"at":"2026-10-27T18:35:08Z","model":"claude-haiku-5-5","output":{"fix":"- unknown; the sources do not name a fixed version or patch.\n- Until a fix ships, avoid loading plugin schemas from untrusted remote URLs.","reach":"internet","title":"NextChat: remote plugin schema runs attacker JavaScript in the Plugin Editor","impact":"medium","summary":"NextChat 2.16.1 renders OpenAPI plugin schemas fetched from a remote URL with dangerouslySetInnerHTML and no sanitization. A user who loads a malicious schema through the Plugin Editor lets an attacker run JavaScript in the NextChat origin, reading JavaScript-readable cookies and client-side data.","category":"ai-tooling","nicknames":[],"who_cares":["nextchat","self-hosted","ai-chat-ui"],"confidence":0.6,"needs_auth":"unknown","worst_case":"Attacker JavaScript runs in NextChat origin; readable cookies exposed","analyst_note":"Find the fixed version and advisory from the NVD entry (https://nvd.nist.gov/vuln/detail/CVE-2026-118132) and the NextChat repository; confirm whether the Plugin Editor is on by default.","how_to_check":"- Check the installed NextChat version; the sources say 2.16.1 is affected, and `unknown` for other versions.\n- Check whether the Plugin Editor is enabled and whether users load plugin schemas from remote URLs.","needs_analyst":true,"not_affected_if":["plugin-editor-unused","trusted-schemas-only"],"who_is_affected":"Teams that run NextChat 2.16.1 and let users load OpenAPI plugin schemas from remote URLs through the Plugin Editor are exposed. Deployments that do not use the Plugin Editor or only use trusted, local schemas can likely skip it, though the sources do not confirm this.","user_interaction":"yes","needs_special_setup":"yes","severity_if_unknown":"medium"},"cost_usd":0.000686,"input_tokens":3471,"output_tokens":678,"severity_before":"unknown"},"analyst_status":null,"analyst_note":null,"search":"'-118132':14A,17A '-2026':13A,16A '2.16.1':30B,77C 'access':165C 'ai':19B,23B 'ai-chat-ui':18B 'ai-tool':22B 'allow':164C 'applic':179C 'arbitrari':155C 'associ':175C 'attack':6A,58B,130C 'chat':20B 'client':72B,80C,172C 'client-sid':71B 'contain':78C,137C 'content':101C,114C 'cooki':69B,169C 'cross':82C 'cve':12A,15A 'dangerouslysetinnerhtml':41B,125C 'data':74B,174C 'due':91C 'editor':11A,55B,90C,152C 'execut':157C 'exploit':163C 'extern':96C 'fetch':35B 'host':28B,132C 'html':138C 'javascript':7A,60B,67B,140C,156C,167C 'javascript-read':66B 'later':120C 'let':56B 'load':48B,107C,147C 'malici':50B,134C 'markup':141C 'nextchat':1A,25B,29B,63B,75C,160C,178C 'openapi':32B,98C,135C 'origin':64B,161C 'plugin':3A,10A,33B,54B,89C,99C,104C,151C 'plugin.content':118C 'proper':127C 'react':123C 'read':65B 'readabl':68B,168C 'remot':2A,38B,110C 'render':31B,94C,121C 'result':153C 'return':113C 'run':5A,59B 'sanit':44B,128C 'schema':4A,34B,51B,100C,105C,136C 'script':84C 'self':27B 'self-host':26B 'side':73B,81C,173C 'site':83C 'store':116C 'success':162C 'suppli':97C 'tool':24B 'trick':143C 'ui':21B 'unsaf':93C 'url':39B,111C 'use':122C 'user':46B,145C 'version':76C 'vulner':86C 'without':126C 'xss':85C","nicknames":[],"mitigations":[],"who_affected":"Teams that run NextChat 2.16.1 and let users load OpenAPI plugin schemas from remote URLs through the Plugin Editor are exposed. Deployments that do not use the Plugin Editor or only use trusted, local schemas can likely skip it, though the sources do not confirm this.","tier":"B","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-27T18:17:36+00:00","kev":null,"cvss_vector":null,"cvss_by":null,"poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-118132","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-118132","severity":null,"published_at":"2026-10-27T18:17:36+00:00","modified_at":"2026-10-27T18:17:36+00:00","first_seen_at":"2026-10-27T18:32:59+00:00","fetched_at":"2026-10-27T18:32:59+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"}