CVE-2017-9248

Progress ASP.NET AJAX and Sitefinity

ВЫСОКАЯ ВЕРОЯТНОСТЬ

Дата обнаружения

2021-11-03

Официальное описание

Progress Telerik UI for ASP.NET AJAX and Sitefinity have a cryptographic weakness in Telerik.Web.UI.dll that can be exploited to disclose encryption keys (Telerik.Web.UI.DialogParametersEncryptionKey and/or the MachineKey), perform cross-site-scripting (XSS) attacks, compromise the ASP.NET ViewState, and/or upload and download files.

🛡️
Технический анализ и план устранения

Суть уязвимости

Уязвимость в библиотеке Telerik.Web.UI.dll позволяет злоумышленнику: * Получить ключи шифрования (DialogParametersEncryptionKey и MachineKey). * Провести атаку Cross-Site Scripting (XSS). * Скомпрометировать состояние просмотра ASP.NET (ViewState). * Загружать и скачивать произвольные файлы на сервере.

Эксплуатация возможна через прямой HTTP-запрос к уязвимому обработчику Telerik.

Как исправить

Установите официальный патч от Progress Software, обновив уязвимые компоненты до исправленных версий.

Для Telerik UI for ASP.NET AJAX: * Установите версию 2017.2.621 или новее. * Скачайте исправленную сборку с официального сайта Telerik и замените файл Telerik.Web.UI.dll в вашем проекте.

Для Sitefinity: * Обновите Sitefinity до одной из следующих версий: * Sitefinity 10.1 (сборка 6101 или новее) * Sitefinity 10.0 (сборка 6011 или новее) * Sitefinity 9.2 (сборка 5921 или новее) * Sitefinity 9.1 (сборка 5911 или новее) * Sitefinity 9.0 (сборка 5901 или новее) * Обновление выполняется через Панель управления Sitefinity > Администрирование > Обновления.

После обновления перекомпилируйте и переразверните приложение.

Временное решение

Если немедленное обновление невозможно, примените следующие меры:

  1. Настройте правила WAF (Web Application Firewall):

    • Заблокируйте запросы к уязвимым обработчикам Telerik. Пример правила для ModSecurity: bash SecRule REQUEST_URI "@contains /Telerik.Web.UI.DialogHandler.aspx" "id:10001,phase:1,deny,status:403,msg:'Block Telerik CVE-2017-9248'" SecRule REQUEST_URI "@contains /Telerik.Web.UI.SpellCheckHandler.axd" "id:10002,phase:1,deny,status:403,msg:'Block Telerik CVE-2017-9248'"
  2. Используйте встроенный модуль Request Filtering в IIS:

    • Добавьте в web.config приложения или в настройки IIS правило для блокировки доступа к обработчику: xml <system.webServer> <security> <requestFiltering> <denyUrlSequences> <add sequence="Telerik.Web.UI.DialogHandler.aspx" /> <add sequence="Telerik.Web.UI.SpellCheckHandler.axd" /> </denyUrlSequences> </requestFiltering> </security> </system.webServer>
  3. Удалите ненужные обработчики Telerik:

    • Если функционал диалоговых окон или проверки орфографии не используется, физически удалите или переименуйте файлы Telerik.Web.UI.DialogHandler.aspx и Telerik.Web.UI.SpellCheckHandler.axd из корня веб-приложения.

Важно: Временные решения лишь снижают риск атаки. Полное устранение уязвимости возможно только путем установки официального патча.