Более 40 популярных библиотек подвержены уязвимости десериализации в Java

Более 40 популярных библиотек подвержены уязвимости десериализации в Java

В середине ноября 2015 года специалисты компании FoxGlove Security выявили опасный баг в широко распространенной библиотеке, из состава Apache Commons. Теперь компания SourceClear сообщает, что данная уязвимость затрагивает не одну библиотеку, а более 40.

По данным исследования компании SourceClear, многие библиотеки, в числе которых Apache Directory API, JMS Transport и некоторые версии Webx All-in-one Bundle, подвержены аналогичной обнаруженной в ноябре проблеме.

Ранее, основываясь на исследовании, представленном сотрудниками компании Qualcomm, специалисты FoxGlove Security продемонстрировали, что хакеры с легкостью могут воспользоваться уязвимостью для атак на Java серверы приложений, а также на любые другие продукты, в которых используется коллекция Apache Commons (в том числе Oracle WebLogic, IBM WebSphere, Red Hat’s JBoss, Jenkins и OpenNMS), сообщает xakep.ru.

Проблема заключается в том, как Java исполняет user-defined код во время десериализации объектов. Опираясь на это, исследователи FoxGlove Security сумели создать пейлоуды, с помощью которых получили shell-доступ к машинам, на которых работали уязвимые продукты.

«Это очень неприятная уязвимость, потому что это не брешь в самой Java, но баг, которому подвержены широко распространенные библиотеки, — пишет Иоганесс Ульрих (Johannes Ullrich), технический директор SANS Institute Internet Storm Center. — Провести инвентаризацию этих библиотек, которые используются в различных продуктах, крайне трудно».

Специалистам SourceClear удалось выявить баг в нижеперечисленных библиотеках. Компания советует всем разработчикам внимательно проверить свой код и библиотеки на предмет проблемы с десериализацией.

 

Имя Версия
Apache Directory API All 1.0.0-M31
Apache Directory API All 1.0.0-M32
Apache Jena — Fuseki Server Standalone Jar 2.0.0
Apache Jena — Fuseki Server Standalone Jar 2.3.0
flink-core 0.9.0-hadoop1
flink-core 0.9.0
flink-shaded-include-yarn 0.9.0
flink-shaded-include-yarn 0.9.0-milestone-1
jcaptcha-all 1.0-RC6
jcaptcha-all 1.0-RC5
Mule Core 2.1.0
Mule Core 2.1.2
JMS Transport 3.0.0-M2-20091124
JMS Transport 3.3-M1
Spring XD DIRT 1.0.3.RELEASE
Spring XD DIRT 1.0.4.RELEASE
Webx All-in-one Bundle 3.2.3
Webx All-in-one Bundle 3.0.14
hadoop-mapreduce-client-core 2.6.2
hadoop-mapreduce-client-core 2.6.0
Commons BeanUtils Core 1.8.3
Commons BeanUtils Core 1.8.2
Apache Hadoop Common 2.6.2
Apache Hadoop Common 2.5.2
Commons Collections 20031027
Commons Collections 3.2.1
OpenJPA Utilities Library 2.3.0
OpenJPA Utilities Library 2.2.2
OpenJPA Kernel 2.3.0
OpenJPA Kernel 2.2.2
OpenJPA Persistence 1.2.3
JasperReports 6.2.0
JasperReports 6.0.2
Isis MetaModel 1.0.0
Isis MetaModel 1.1.0
AutoValue 1
AutoValue 1.0-rc4
Core 1.6.2
Core 1.6.1
velocity:velocity-dep 1.5-beta2
Apache Commons Collections 4
HBase — Common 0.98.9-hadoop1
HBase — Common 0.98.7-hadoop1
Apache Directory Shared LDAP 0.9.11
org.springframework:spring 2.5.6.SEC03
org.springframework:spring 2.5.6.SEC02
Apache MyFaces JSF-2.2 Core Impl 1.2.5
Apache MyFaces JSF-2.2 Core Impl 2.2.7
jung-visualization 2.0.1
jung-visualization 2
HBase — Server 0.98.10.1-hadoop2
HBase — Server 0.98.7-hadoop2
org.apache.pig pig 0.15.0
com.google.gwt gwt-dev 2.7.0
larvalabs collections 4.01
org.opensymphony.quartz quartz 1.6.1
Apache Commons BeanUtils 1.9.2
Apache Commons BeanUtils 1.9.1
Apache Crunch Core 0.13.0
JasperReports 3.5.2
JasperReports 3.5.1
ApacheDS MVCC BTree implementation 1.0.0-M7
ApacheDS All 2.0.0-M18
ApacheDS All 2.0.0-M17
ESAPI 2.1.0
ESAPI 2.0.1
OpenJPA Aggregate Jar 2.3.0
OpenJPA Aggregate Jar 2.2.2
quartz 1.6.3
quartz 1.6.0

Критическая уязвимость в плагине WPvivid Backup затронула 900 000 сайтов

Уязвимость, выявленная в популярном WordPress-плагине для создания резервных копий, позволяет без аутентификации загрузить на сайт вредоносный код PHP и запустить его на исполнение. Патч включен в состав WPvivid Backup & Migration 0.9.124.

Уязвимости подвержены все прежние версии продукта. Ввиду высокой опасности и масштабности проблемы (на счету WPvivid Backup уже свыше 900 тыс. установок) пользователям настоятельно рекомендуется произвести обновление.

Правда, в блог-записи Wordfence сказано, что CVE-2026-1357 (9,8 балла CVSS) критична лишь для тех, у кого настройки плагина предусматривают обработку сгенерированным ключом — в обеспечение загрузки резервных копий с других сайтов. По умолчанию эта возможность отключена, а срок действия ключа ограничен 24 часами.

Согласно описанию, причин появления уязвимости две: неадекватная обработки ошибок при расшифровке по RSA и отсутствие санации пути при записи загруженных файлов.

Как оказалось, когда плагин тщетно пытался расшифровать сеансовый ключ, он не завершал выполнение, а передавал ложное значение $key в phpseclib для инициализации шифрования.

Криптобиблиотека воспринимала его как строку нулевых байтов, что открыло возможность для шифрования полезной нагрузки дефолтным, легко угадываемым 0-байтовым ключом.

 

Ситуацию усугубило отсутствие проверок типа файлов и их расширений в функции send_to_site(). Это провоцировало выход за пределы защищенного каталога резервных копий — загрузку на сервер произвольного PHP-кода с записью в публично доступные места с тем, чтобы он каждый раз отрабатывал в браузере.

Апдейт, устраняющий эти недостатки, вышел 28 января. Автор опасной находки получил 2145 долларов в рамках программы Wordfence Bug Bounty.

RSS: Новости на портале Anti-Malware.ru