Регистрация  |  Вход

Про Log4j

как я понимаю, популярная для JAVA проектов либа для логирования имеет серьезную проблему, и теперь нужно перекомпилировать все существующие JAVA программы (включая всякие интегрейшн сервисы), которые это использовали, чтоб избавится от проблемы?

я не знаю как все это получится сделать со всем множеством существующих легаси JAVA проектов, это морока даже для компаний с деньгами, и для компаний по-проще вообще беда.

что думаете?
как я понимаю, популярная для JAVA проектов либа для логирования имеет серьезную проблему, и теперь нужно перекомпилировать все существующие JAVA программы (включая всякие интегрейшн сервисы), которые это использовали, чтоб избавится от проблемы?

я не знаю как все это получится сделать со всем множеством существующих легаси JAVA проектов, это морока даже для компаний с деньгами, и для компаний по-проще вообще беда.

что думаете?
Den Brown
как я понимаю, популярная для JAVA проектов либа для логирования имеет серьезную проблему, и теперь нужно перекомпилировать все существующие JAVA программы (включая всякие интегрейшн сервисы), которые это использовали, чтоб избавится от проблемы?

я не знаю как все это получится сделать со всем множеством существующих легаси JAVA проектов, это морока даже для компаний с деньгами, и для компаний по-проще вообще беда.

что думаете?

https://help.salesforce.com/s/articleVie ... 6&type=1


Никогда не работали ни с Java ни с Log4j в частности, да и про проблему ничего толком не знаю, так как не мне ее решать, но мне даже стало интересно, что сложного в может быть в либе для логировнаия О_о
[quote="Den Brown"]как я понимаю, популярная для JAVA проектов либа для логирования имеет серьезную проблему, и теперь нужно перекомпилировать все существующие JAVA программы (включая всякие интегрейшн сервисы), которые это использовали, чтоб избавится от проблемы?

я не знаю как все это получится сделать со всем множеством существующих легаси JAVA проектов, это морока даже для компаний с деньгами, и для компаний по-проще вообще беда.

что думаете?[/quote]

https://help.salesforce.com/s/articleView?id=000363736&type=1


Никогда не работали ни с Java ни с Log4j в частности, да и про проблему ничего толком не знаю, так как не мне ее решать, но мне даже стало интересно, что сложного в может быть в либе для логировнаия О_о
Maxim Elets
Никогда не работали ни с Java ни с Log4j в частности, да и про проблему ничего толком не знаю, так как не мне ее решать, но мне даже стало интересно, что сложного в может быть в либе для логировнаия О_о
Очень все просто с этой проблемой и она крайне серьезная.
Log4j ловит в логах сообщение определенного формата - типа ссылка на внешний ресурс, скачивает удаленный код и запускает его локально. То есть если я к примеру вместо своего username зарегаю специальную строку, то пиздец.

Вот простой пример



Кстати крайне странно что такую явную дыру обнаружили только сейчас. Это ж просто находка для хацкеров. А возможно это глобальный заговор!
[quote="Maxim Elets"]Никогда не работали ни с Java ни с Log4j в частности, да и про проблему ничего толком не знаю, так как не мне ее решать, но мне даже стало интересно, что сложного в может быть в либе для логировнаия О_о[/quote]
Очень все просто с этой проблемой и она крайне серьезная.
Log4j ловит в логах сообщение определенного формата - типа ссылка на внешний ресурс, скачивает удаленный код и запускает его локально. То есть если я к примеру вместо своего username зарегаю специальную строку, то пиздец.

Вот простой пример

[youtube]https://www.youtube.com/watch?v=0-abhd-CLwQ[/youtube]

Кстати крайне странно что такую явную дыру обнаружили только сейчас. Это ж просто находка для хацкеров. А возможно это глобальный заговор! :smiley:
Наши кстати сильно забомбили по этому поводу, но мы java не используем, кроме одного маленького места, но оно не светит наружу да и логи не особо ведет (по крайней мере про те что мы знаем). Но задача обновить уже стоит.
А так конечно, если бы мы пилили все на java, то задачка по обновлению была бы посерьезнее. Вообще очень полезно обновлять зависимости в проектах, но довольно часто из этого случается боль. Поэтому я уже давно пришел к выводу (и даже есть целое движение по этому поводу) поменьше пихать сторонних либ в проекты и даже делать минимальную зависимость от самого фреймворка. Пример на пальцах - можно запилить API самому используя простые эндпоинты, а можно использовать специализированные фреймворки, которые нагенерят за вас кучу всего, и даже больше. В первом случае кода больше, но гемору меньше, так как весь код на ладони, во втором случае кодить меньше, но каждый шаг вправо-влево это боль - все скрыто внутри специализированного фреймворка. И как понимаете первый подход - чистый проект, второй куча зависимостей.
Наши кстати сильно забомбили по этому поводу, но мы java не используем, кроме одного маленького места, но оно не светит наружу да и логи не особо ведет (по крайней мере про те что мы знаем). Но задача обновить уже стоит. 
А так конечно, если бы мы пилили все на java, то задачка по обновлению была бы посерьезнее. Вообще очень полезно обновлять зависимости в проектах, но довольно часто из этого случается боль. Поэтому я уже давно пришел к выводу (и даже есть целое движение по этому поводу) поменьше пихать сторонних либ в проекты и даже делать минимальную зависимость от самого фреймворка. Пример на пальцах - можно запилить API самому используя простые эндпоинты, а можно использовать специализированные фреймворки, которые нагенерят за вас кучу всего, и даже больше. В первом случае кода больше, но гемору меньше, так как весь код на ладони, во втором случае кодить меньше, но каждый шаг вправо-влево это боль - все скрыто внутри специализированного фреймворка. И как понимаете первый подход - чистый проект, второй куча зависимостей.
И что самое страшное каждая сторонняя либа тянет другие сторонние либы, и что там внутри никто не знает. Все на это просто положили. А ведь это давно известная проблема - особенно в мире фронтенда с его NPM. Там можно в свой ангуляр/реакт проект легко подцепить какой сниффер для инпутов, который будет логины/пароли/куки ваших пользователей сливать на сторону.
И что самое страшное каждая сторонняя либа тянет другие сторонние либы, и что там внутри никто не знает. Все на это просто положили. А ведь это давно известная проблема - особенно в мире фронтенда с его NPM. Там можно в свой ангуляр/реакт проект легко подцепить какой сниффер для инпутов, который будет логины/пароли/куки ваших пользователей сливать на сторону. 
С Log4j случай кажется уникальным только из-за ее распространенности. А таких проблем вокруг море.
С Log4j случай кажется уникальным только из-за ее распространенности. А таких проблем вокруг море.