CVE-2019-18935
Progress Telerik UI for ASP.NET AJAX
Дата обнаружения
2021-11-03
Официальное описание
Progress Telerik UI for ASP.NET AJAX contains a deserialization of untrusted data vulnerability through RadAsyncUpload which leads to code execution on the server in the context of the w3wp.exe process.
🛡️
Технический анализ и план устранения
Суть уязвимости
Уязвимость в компоненте RadAsyncUpload позволяет злоумышленнику отправить на сервер специально сформированный HTTP-запрос, содержащий сериализованные вредоносные данные. При обработке этого запроса происходит десериализация без должной проверки, что приводит к выполнению произвольного кода на сервере в контексте рабочего процесса приложения (w3wp.exe).
Как исправить
Необходимо обновить библиотеку Progress Telerik UI for ASP.NET AJAX до версии, в которой уязвимость устранена.
- Определите текущую версию Telerik UI, проверив свойства сборок (например,
Telerik.Web.UI.dll) в папке приложения или через интерфейс администратора. - Установите патч:
- Для версий 2019.3.1023 и старше — обновитесь до 2019.3.1023 или новее.
- Для версий 2019.2.619 и старше — обновитесь до 2019.2.619 или новее.
- Для версий 2019.1.220 и старше — обновитесь до 2019.1.220 или новее.
- Для более старых версий (2019.1.117 и ранее) необходимо обновиться до одной из указанных выше исправленных версий.
- Процесс обновления:
- Скачайте последнюю версию с официального сайта Progress Telerik.
- Замените старые сборки (например,
Telerik.Web.UI.dll) в вашем веб-приложении на новые. - Перезапустите пул приложений (Application Pool) и веб-сайт в IIS.
Временное решение
Если немедленное обновление невозможно, примените следующие меры:
- Настройте правила WAF (Web Application Firewall) для блокировки запросов, эксплуатирующих уязвимость. Пример правила (ModSecurity/OWASP CRS):
apache SecRule REQUEST_URI "@contains /Telerik.Web.UI.WebResource.axd" \ "id:100019,phase:2,deny,status:403,msg:'Block Telerik CVE-2019-18935 exploitation attempt'" - Ограничьте доступ к обработчику
Telerik.Web.UI.WebResource.axdна уровне IIS или сетевого экрана, разрешив его только для доверенных IP-адресов. - Отключите компонент RadAsyncUpload, если он не используется, удалив или закомментировав соответствующие элементы управления в коде приложения.