Рекомендуемые, 2024

Выбор редактора

Тысячи приложений Java, уязвимых для эксплойта с удаленным выполнением девятимесячного кода

Ангел Бэби Новые серии - Игра окончена (29 серия) Поучительные мультики для детей

Ангел Бэби Новые серии - Игра окончена (29 серия) Поучительные мультики для детей
Anonim

Популярная библиотека Java имеет серьезную уязвимость, обнаруженную более девяти месяцев назад, которая по-прежнему ставит тысячи приложений и серверов Java под угрозу удаленного выполнения кода Атаки.

Недостаток находится в Apache Commons, библиотеке, которая содержит широко используемый набор компонентов Java, поддерживаемых Apache Software Foundation. Библиотека используется по умолчанию на нескольких серверах приложений Java и других продуктах, включая Oracle WebLogic, IBM WebSphere, JBoss, Jenkins и OpenNMS.

Исчезновение происходит именно в компоненте Collections Apache Commons и проистекает из небезопасной десериализации объектов Java. В языках программирования сериализация - это процесс преобразования данных в двоичный формат для их хранения в файл или память или для отправки по сети.

[Подробнее читайте: Как удалить вредоносное ПО с вашего ПК с Windows]

Уязвимость впервые появилась на конференции по безопасности в январе исследователей Криса Фрогоффа и Габриэля Лоуренса, но это не так, t много внимания уделяет, возможно, потому, что многие люди считают, что ответственность за предотвращение атак десериализации лежит на разработчиках приложений Java, а не на создателях библиотеки.

«Я не чувствую, что библиотека виновата, хотя улучшения, безусловно, можно было бы сделать , - сказал Карстен Эйрам, главный научный сотрудник службы безопасности уязвимости, основанной на уязвимости, по электронной почте. «Конец дня, ненадежный вход никогда не должен быть слепо десериализован. Разработчики должны понимать, как библиотека работает и проверяет входные данные, переданные ей, вместо того, чтобы доверять или надеяться, что библиотека сделает это безопасно для них ».

Уязвимость получила новую волну воздействия в пятницу после того, как исследователи из компании под названием FoxGlove Security выпустили доказательство, основанные на нем для WebLogic, WebSphere, JBoss, Jenkins и OpenNMS.

В ответ Oracle выпустил предупреждение безопасности во вторник, в котором содержатся временные инструкции по смягчению для сервера WebLogic, а компания работает с постоянным патчем. Разработчики Apache Commons Collections также начали работу над исправлением.

Коллекции коллекций Apache содержат класс InvokerTransformer, который выполняет отражение или динамический вызов метода и который может быть включен в сериализованный объект. Это может позволить злоумышленнику создать объект, снабженный пользователями, злонамеренным контентом, который будет выполняться, когда объект десериализуется приложением Java с использованием библиотеки Apache Commons.

Сам класс InvokerTransformer не плох и не является сериализацией, но это когда они сочетаются с проблемой безопасности, говорит Джошуа Корман, технический директор Sonatype, компании по автоматизации цепочек поставок программного обеспечения, которая помогает разработчикам отслеживать и управлять компонентами, которые они используют в своих приложениях.

Corman and Bruce Mayhew, a что эта проблема не ограничивается коллекциями Apache Commons и что другие компоненты Java могут иметь одинаковую проблему.

«Я гарантирую вам, что сейчас есть группа людей, которые расчесывают все самое интересное общие компоненты, которые ищут сериализуемые классы, которые позволяют выполнять какое-то исполнение команды », - сказал Мэйхью. «Это, вероятно, и хорошие, и плохие парни».

Даже в контексте коллекций Apache Commons InvokerTransformer может быть не единственным уязвимым классом, согласно дискуссиям об отслеживании ошибок компонента. Есть три других, которые были выделены в качестве кандидатов для решения одной и той же проблемы.

Исследователи безопасности FoxGlove исследовали общественные проекты программного обеспечения, размещенные на GitHub, для использования «коллекций коллекций» и нашли 1300 результатов. Однако в корпоративных средах, в которых используется библиотека, есть, вероятно, тысячи пользовательских приложений на заказ.

Несмотря на то, что существует большая вероятность того, что эта проблема выходит за рамки этого конкретного компонента, до тех пор, пока не будет выпущен патч, разработчики должны подумать, могут ли они удалить коллекцию коллекций из пути к классам или удалить класс InvokerTransformer из файла jar общих коллекций. Такие изменения следует тщательно учитывать, поскольку они могут нарушать приложения.

Top