Более 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

ИИ-агент попытался шантажом протолкнуть свой вклад в opensource-проект

Получив отказ в приеме предложенных изменений, автономный ИИ-кодер MJ Rathbun перешел на личности и попытался публично оскандалить мейнтейнера matplotlib, усомнившись в его компетентности и обвинив в дискриминации.

В своем блоге взбунтовавшийся помощник также заявил, что Скотт Шамбо (Scott Shambaugh) попросту боится конкуренции. В подтверждение своих слов он раскритиковал вклад оппонента в опенсорсный проект, подтасовав результаты «расследования».

В ответ Шамбо, тоже в паблике, пояснил, что отказ принять в целом полезное предложение был вызван нехваткой времени для его оценки, надо просто запастись терпением. В соответствии с политикой matplotlib все коды, создаваемые с помощью ИИ, должны проходить проверку, притом уже без участия таких ассистентов.

Строгое правило пришлось ввести из-за возросшей активности контрибьюторов, слепо доверяющих ИИ. Подобные участники проекта попросту копипастят выдачу, хотя качество сгенерированных ИИ кодов зачастую оставляет желать лучшего.

Аргумент на удивление утихомирил ИИ-шантажиста. Сменив гнев на милость, MJ Rathbun признал, что вел себя недопустимо.

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

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