# JavaScript Code Injection through kendo.init() in Kendo UI for jQuery (CVE-2026-124686)

## Description

November 2026 - [CVE-2026-124686](https://www.cve.org/CVERecord?id=CVE-2026-124686)

### What Are the Impacts

In Progress® Kendo® UI for jQuery kendo.init() compiles data-\* attribute values with new Function when an invalid JSON object is supplied. An attacker with low privileges who can control these attribute values can inject JavaScript that executes during declarative widget initialization when a user loads or interacts with an affected page. Successful exploitation can compromise the confidentiality and integrity of data accessible in the user's browser context. The issue was reported in version 2022.3.1109; the first affected release has not been established.

## Issue

* CWE classification: CWE-95, Improper Neutralization of Directives in Dynamically Evaluated Code ('Eval Injection').
* CAPEC classification: CAPEC-242, Code Injection.

When an object-valued `data-*` option is not valid JSON, the affected `kendo.init()` path falls back to dynamic compilation using `new Function`. This treats attacker-controlled configuration as executable JavaScript rather than data. HTML attribute escaping alone does not prevent this evaluation after the browser reads the attribute value.

## Solution

We have addressed the issue and the Progress Telerik team strongly recommends performing an upgrade to the latest version listed in the table below.

| Current Version                      | Update to        |
| ------------------------------------ | ---------------- |
| `>= 2022.3.1109` && `<= 2026.3.1015` | `>= 2026.4.1111` |

Follow the [update instructions](https://www.telerik.com/kendo-jquery-ui/documentation/intro/installation/npm) for precise instructions. All customers who have a license for Progress® Kendo® UI for jQuery can access their downloads here [Product Downloads | Your Account](https://www.telerik.com/account/downloads/product-download).

## Notes

* If you have any questions or concerns related to this issue, open a new Technical Support case in [Your Account | Support Center](https://www.telerik.com/account/support-center/contact-us/). Technical Support is available to customers with an active support plan.
* We would like to thank Abhishek Nandkumar Bhaskar (Abhi-Hackz) for their responsible disclosure and cooperation.

> For more information, see the [2026 Releases - Kendo UI Backwards Compatibility](https://www.telerik.com/kendo-jquery-ui/documentation/backwards-compatibility/2026-backward-compatibility).

## External References

[CVE-2026-124686](https://www.cve.org/CVERecord?id=CVE-2026-124686) (Medium)

**CVSS:** 5.4 (Medium), CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N

In Progress® Kendo® UI for jQuery prior to v2026.4.1111, kendo.init() compiles data-\* attribute values with new Function when an invalid JSON object is supplied. An attacker with low privileges who can control these attribute values can inject JavaScript that executes during declarative widget initialization when a user loads or interacts with an affected page. Successful exploitation can compromise the confidentiality and integrity of data accessible in the user's browser context.

Finder Credit: Abhishek Nandkumar Bhaskar (Abhi-Hackz)
