{"id":"CVE-2026-106136","kind":"vulnerability","aliases":["CVE-2026-106136"],"related":[],"title":"KendoReact Chat: unsafe URL in quick action runs JavaScript in app","description":"Cross-Site Scripting (XSS) in the Chat component (@progress/kendo-react-conversational-ui) in Progress Software KendoReact versions 0.6.0 through 16.1.0 allows a low-privileged attacker who can supply Chat messages to execute arbitrary JavaScript in the origin of the application via an unsafe URL in an openUrl quick action, which runs when a user clicks the action.","summary":"The Chat component of the KendoReact UI library (versions 0.6.0 through 16.1.0) does not sanitize a URL passed to an openUrl quick action. An attacker who can post Chat messages can make a user's click run arbitrary JavaScript in the application's origin.","severity":"medium","cvss":5.4,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["javascript","kendoreact","package","react","web-frontend"],"not_affected_if":["no-chat-component","trusted-content-only"],"how_to_check":"- Check whether `@progress/kendo-react-conversational-ui` is in `package.json` or the lockfile, and read its version.\n- Look for uses of the Chat component that render quick actions with `openUrl` from user-supplied message content.","fix":null,"status":"open","published_at":"2026-11-06T17:17:12+00:00","first_seen_at":"2026-11-06T17:43:12+00:00","triaged_at":"2026-11-06T17:45:28+00:00","updated_at":"2026-11-06T17:45:28+00:00","category":"package","confidence":0.6,"triage":{"at":"2026-11-06T17:45:28Z","model":"claude-haiku-5-5","output":{"fix":"unknown","reach":"internet","title":"KendoReact Chat: unsafe URL in quick action runs JavaScript in app","impact":"medium","summary":"The Chat component of the KendoReact UI library (versions 0.6.0 through 16.1.0) does not sanitize a URL passed to an openUrl quick action. An attacker who can post Chat messages can make a user's click run arbitrary JavaScript in the application's origin.","audience":"developers","category":"package","nicknames":[],"who_cares":["kendoreact","react","javascript","web-frontend"],"confidence":0.6,"fix_status":"unknown","needs_auth":"yes","worst_case":"Attacker runs JavaScript in the application's origin after a user click","analyst_note":"Find the vendor's fixed version for KendoReact Chat and confirm which release closes the openUrl quick action issue at https://nvd.nist.gov/vuln/detail/CVE-2026-106136.","how_to_check":"- Check whether `@progress/kendo-react-conversational-ui` is in `package.json` or the lockfile, and read its version.\n- Look for uses of the Chat component that render quick actions with `openUrl` from user-supplied message content.","plain_action":"","needs_analyst":true,"not_affected_if":["no-chat-component","trusted-content-only"],"who_is_affected":"Applications that use the KendoReact Chat component and show messages from users or other untrusted sources that can include quick actions with openUrl. Apps that do not use the Chat component, or that only show trusted content in it, are less exposed. The sources do not state a fixed version.","user_interaction":"yes","needs_special_setup":"unknown","severity_if_unknown":"medium"},"cost_usd":0.000722,"input_tokens":4271,"output_tokens":589,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-106136':14A,17A '-2026':13A,16A '0.6.0':34B,84C '16.1.0':36B,86C 'action':7A,47B,116C,124C 'allow':87C 'app':11A 'applic':66B,107C 'arbitrari':62B,100C 'attack':49B,92C 'chat':2A,26B,53B,76C,96C 'click':60B,122C 'compon':27B,77C 'cross':70C 'cross-sit':69C 'cve':12A,15A 'execut':99C 'frontend':24B 'javascript':9A,18B,63B,101C 'kendoreact':1A,19B,30B,82C 'librari':32B 'low':90C 'low-privileg':89C 'make':56B 'messag':54B,97C 'openurl':45B,114C 'origin':68B,104C 'packag':20B 'pass':42B 'post':52B 'privileg':91C 'progress':80C 'progress/kendo-react-conversational-ui':78C 'quick':6A,46B,115C 'react':21B 'run':8A,61B,118C 'sanit':39B 'script':72C 'site':71C 'softwar':81C 'suppli':95C 'ui':31B 'unsaf':3A,110C 'url':4A,41B,111C 'user':58B,121C 'version':33B,83C 'via':108C 'web':23B 'web-frontend':22B 'xss':73C","nicknames":[],"mitigations":[],"who_affected":"Applications that use the KendoReact Chat component and show messages from users or other untrusted sources that can include quick actions with openUrl. Apps that do not use the Chat component, or that only show trusted content in it, are less exposed. The sources do not state a fixed version.","tier":"C","verified":{},"analyst_revisit_at":null,"fix_status":"none","audience":"developers","plain_action":null,"pkeys":[],"ptokens":[],"labels":["javascript","kendoreact","medium","package","react","webfrontend"],"campaign_type":null,"search_a":"'-106136':14A,17A '-2026':13A,16A 'action':7A 'app':11A 'chat':2A 'cve':12A,15A 'javascript':9A 'kendoreact':1A 'quick':6A 'run':8A 'unsaf':3A 'url':4A","search_b":"'0.6.0':34B '16.1.0':36B 'action':47B 'applic':66B 'arbitrari':62B 'attack':49B 'chat':26B,53B 'click':60B 'compon':27B 'frontend':24B 'javascript':18B,63B 'kendoreact':19B,30B 'librari':32B 'make':56B 'messag':54B 'openurl':45B 'origin':68B 'packag':20B 'pass':42B 'post':52B 'quick':46B 'react':21B 'run':61B 'sanit':39B 'ui':31B 'url':41B 'user':58B 'version':33B 'web':23B 'web-frontend':22B","search_c":"'0.6.0':84C '16.1.0':86C 'action':116C,124C 'allow':87C 'applic':107C 'arbitrari':100C 'attack':92C 'chat':76C,96C 'click':122C 'compon':77C 'cross':70C 'cross-sit':69C 'execut':99C 'javascript':101C 'kendoreact':82C 'low':90C 'low-privileg':89C 'messag':97C 'openurl':114C 'origin':104C 'privileg':91C 'progress':80C 'progress/kendo-react-conversational-ui':78C 'quick':115C 'run':118C 'script':72C 'site':71C 'softwar':81C 'suppli':95C 'unsaf':110C 'url':111C 'user':121C 'version':83C 'via':108C 'xss':73C","first_public_at":"2026-11-06T17:17:12+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N","cvss_by":"security@progress.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-106136","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-106136","severity":null,"published_at":"2026-11-06T17:17:12+00:00","modified_at":"2026-11-06T17:17:12+00:00","first_seen_at":"2026-11-06T17:43:12+00:00","fetched_at":"2026-11-06T17:43:12+00:00","note":null}],"documents":[],"exploit_sources":[],"notice":"Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai"}