Контакты
Подписка
МЕНЮ
Контакты
Подписка

Исследователи обнаружили проблему десериализации, угрожающую экосистеме .NET

Исследователи обнаружили проблему десериализации, угрожающую экосистеме .NET

Исследователи обнаружили проблему десериализации, угрожающую экосистеме .NET


08.08.2017



Специалисты HPE Security выступили с докладом на конференциях Black Hat и DEF CON, предупредив, что экосистеме .NET угрожает проблема, похожая на уязвимость, с которой в 2015-2016 годах столкнулись разработчики приложений Java.

Напомню, что изначально уязвимость была замечена в 2015 году исследователями FoxGlove Security. Тогда специалисты нашли баг в широко распространенной библиотеке из состава Apache Commons. Уже в 2016 году, стараниями аналитиков SourceClear, удалось понять, что проблема гораздо обширнее, чем предположили изначально. Как оказалось, уязвимость, связанная с тем, как Java исполняет user-defined код во время десериализации объектов, распространялась не на одну, но на многие десятки библиотек, в числе которых были Apache Directory API, JMS Transport и некоторые версии Webx All-in-one Bundle. В итоге уязвимы оказались многие популярные Java приложения, такие как WebLogic, WebSphere, JBoss, Jenkins, OpenNMS.

Проблема десериализации в Java вынудила разработчиков Apache, Oracle, Cisco, Red Hat, Jenkins, VMWare, IBM, Intel, Adobe, HP и SolarWinds выпустить патчи, а инженеры компании Google объединили усилия и в свободное время занялись "починкой" проблемных библиотек, в итоге исправив более 2600 проектов.

Теперь исследователи HPE Security предупреждают, что нашли похожую уязвимость в экосистеме .NET. Равно как и в случае с Java, проблема связана с тем, как .NET библиотеки работают с сериализацией данных. В данном случае атакующий точно так же может добиться выполнения вредоносного кода на целевой машине.

Исследователи пишут, что проблеме подвержены не все .NET библиотеки, и даже некоторые приложения, использующие уязвимые библиотеки, проблема тоже обходит стороной, так как является комплексом, состоящим из багов в библиотеках и плохого кода самих разработчиков. В своем докладе специалисты рассказали(PDF), что в основном концентрировали усилия вокруг изучения .NET и Java библиотек, работающих с JSON, и приводят список изученных.

Для доказательства того, что проблема не является исключительно теоретической, специалисты также приводят CVE-индентификаторы багов в конкретных продуктах. CVE-2017-9424 — JSON десериализация в бэкэнд-фреймворке Breeze, CVE-2017-9785 — JSON десериализация в веб-фреймворке NancyFX. Также уязвимость XML десериализации CVE-2017-9822 была обнаружена в популярной .NET CMS DotNetNuke.

Хакер