Jump to content

Лог4дж

(Перенаправлено с Apache Log4net )

Апач Log4j
Разработчик(и) Фонд программного обеспечения Apache
Первоначальный выпуск 8 января 2001 г .; 23 года назад ( 08.01.2001 ) [ 1 ]
Стабильная версия
2.23.1 [ 2 ]  Отредактируйте это в Викиданных / 10 марта 2024 г .; 5 месяцев назад ( 10 марта 2024 г. ) [ 3 ]
Репозиторий github /апач /logging-log4j2
Написано в Ява
Операционная система Кросс-платформенный
Тип Ведение журнала
Лицензия Лицензия Апач 2.0
Веб-сайт регистрация .apache .org /log4j /2 .x /

Apache Log4j — это Java на основе утилита ведения журнала , первоначально написанная Чеки Гюлькю. Это часть Apache Logging Services , проекта Apache Software Foundation . Log4j — одна из нескольких платформ ведения журналов Java .

С тех пор Гюльджю создал SLF4J , Reload4j, [ 4 ] и журнал [ 5 ] [ нужен лучший источник ] которые являются альтернативой Log4j. [ 6 ]

Команда Apache Log4j разработала Log4j 2. [ 7 ] в ответ на проблемы Log4j 1.2, 1.3, java.util.logging и Logback, решая проблемы, возникшие в этих рамках. [ 8 ] Кроме того, Log4j 2 предлагает архитектуру плагинов, которая делает его более расширяемым, чем его предшественник. Log4j 2 не имеет обратной совместимости с версиями 1.x. [ 9 ] хотя "переходник" имеется. 5 августа 2015 года комитет по управлению проектом Apache Logging Services объявил, что срок службы Log4j 1 подошел к концу и что пользователям Log4j 1 рекомендуется перейти на Apache Log4j 2. [ 10 ] 12 января 2022 года Чеки Гюльчу выпустил раздвоенную и переименованную версию log4j 1.2 как Reload4j версии 1.2.18.0 с целью исправить наиболее насущные проблемы в log4j 1.2.17, накопившиеся с момента его выпуска в 2013 году. [ 11 ]

9 декабря 2021 года уязвимость нулевого дня , связанную с выполнением произвольного кода Security опубликовала команда Alibaba Cloud в Log4j 2 , и получила дескриптор « Log4Shell ». [ 12 ] охарактеризовал ее Тенабл как «самую большую и самую серьезную уязвимость за последнее десятилетие». [ 13 ]

Апач Log4j 2

[ редактировать ]

Apache Log4j 2 является преемником Log4j 1, который был выпущен как общедоступная версия в июле 2014 года. Платформа была переписана с нуля и основана на существующих решениях для ведения журналов, включая Log4j 1 и java.util.logging. Основные различия [ 14 ] [ 15 ] из Log4j 1:

  • Повышенная надежность. Сообщения не теряются при перенастройке платформы, как в Log4j 1 или Logback.
  • Расширяемость: Log4j 2 поддерживает систему плагинов, позволяющую пользователям определять и настраивать пользовательские компоненты.
  • Упрощенный синтаксис конфигурации
  • Поддержка конфигураций xml, json, yaml и свойств.
  • Улучшенные фильтры
  • Поддержка поиска свойств для значений, определенных в файле конфигурации, свойствах системы, переменных среды, карте ThreadContext и данных, присутствующих в событии.
  • Поддержка нескольких API: Log4j 2 можно использовать с приложениями, использующими API Log4j 2, Log4j 1.2, SLF4J, Commons Logging и java.util.logging (JUL).
  • Пользовательские уровни журнала
  • Поддержка лямбда-выражений в стиле Java 8 для «ленивого ведения журнала»
  • Маркеры
  • Поддержка пользовательских объектов сообщений.
  • «Без мусора или с низким содержанием мусора» в обычных конфигурациях
  • Улучшенная скорость
  • Улучшенная поддержка Linux

Одной из наиболее известных особенностей Log4j 2 является производительность «Асинхронных регистраторов». [ 16 ] Log4j 2 использует LMAX Disruptor . [ 17 ] Библиотека снижает необходимость блокировки ядра и увеличивает производительность журналирования в 12 раз. Например, в той же среде Log4j 2 может записывать более 18 000 000 сообщений в секунду, тогда как другие платформы, такие как Logback и Log4j 1, записывают только < 2 000 000 сообщений. в секунду.

Уровни журнала Log4j

[ редактировать ]

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

Уровень Описание
ВЫКЛЮЧЕННЫЙ Максимально возможный ранг и предназначен для отключения ведения журнала.
ФАТАЛЬНЫЙ Серьезные ошибки, приводящие к преждевременному прекращению действия. Ожидайте, что они сразу же появятся на консоли состояния.
ОШИБКА Другие ошибки выполнения или непредвиденные условия. Ожидайте, что они сразу же появятся на консоли состояния.
ПРЕДУПРЕЖДАТЬ Использование устаревших API, неправильное использование API, «почти» ошибки, другие ситуации во время выполнения, которые являются нежелательными или неожиданными, но не обязательно «неправильными». Ожидайте, что они сразу же появятся на консоли состояния.
ИНФОРМАЦИЯ Интересные события во время выполнения (запуск/выключение). Ожидайте, что они сразу же будут видны на консоли, поэтому будьте консервативны и сведите их к минимуму.
ОТЛАЖИВАТЬ Подробная информация о прохождении через систему. Ожидайте, что они будут записаны только в журналы. Вообще говоря, большинство строк, регистрируемых вашим приложением, должны быть записаны как DEBUG.
СЛЕД Самая подробная информация. Ожидайте, что они будут записаны только в журналы. Начиная с версии 1.2.12. [ 18 ]

Пользовательские уровни журнала

[ редактировать ]

Log4j 2 позволяет пользователям определять свои собственные уровни журналирования. [ 19 ] Предоставляется инструмент генератора исходного кода для создания регистраторов, которые поддерживают настраиваемые уровни журнала, идентично встроенным уровням журнала. Пользовательские уровни журнала могут дополнять или заменять встроенные уровни журнала.

Конфигурация Log4j

[ редактировать ]

Log4j можно настроить [ 20 ] через файл конфигурации или через код Java. Файлы конфигурации могут быть записаны в формате XML , JSON , YAML или файла свойств . В конфигурации вы можете определить три основных компонента: регистраторы, приложения и макеты. Преимущество настройки ведения журнала через файл заключается в том, что ведение журнала можно включить или отключить без изменения приложения, использующего Log4j. Например, приложению можно разрешить запуск без выхода из системы до тех пор, пока не возникнет проблема, а затем журнал можно снова включить, просто изменив файл конфигурации.

Регистраторы [ 21 ] являются именованными пунктами назначения сообщений журнала. Это имена, известные приложению Java. Каждый регистратор независимо настраивается в зависимости от того, какой уровень журналирования (FATAL, ERROR и т. д.) он регистрирует в данный момент. В ранних версиях Log4j они назывались категорией и приоритетом, но теперь они называются регистратором и уровнем соответственно. Регистратор может отправлять сообщения журнала нескольким приложениям.

Фактические выходные данные выполняются Appenders . [ 22 ] Доступно множество приложений с описательными именами, например FileAppender, RollingFileAppender, ConsoleAppender, SocketAppender, SyslogAppender и SMTPAppender. В Log4j 2 добавлены Appenders, которые записывают в Apache Flume , Java Persistence API , Apache Kafka , базы данных NoSQL , файлы с отображением в памяти , файлы произвольного доступа. [ 23 ] и конечные точки ZeroMQ . К любому регистратору можно подключить несколько приложений, поэтому можно регистрировать одну и ту же информацию на нескольких выходах; например, в файл локально и в прослушиватель сокетов на другом компьютере.

Appenders используют макеты [ 24 ] форматировать записи журнала. Популярным способом форматирования построчных файлов журналов является PatternLayout, который использует строку шаблона, очень похожую на C / C++ функцию printf . Существуют также средства форматирования HTMLLayout и XMLLayout, которые можно использовать, когда форматы HTML или XML более удобны соответственно. В Log4j 2 добавлены макеты для CSV , расширенного формата журнала Graylog (GELF), [ 25 ] JSON , YAML и RFC-5424. [ 26 ]

В Log4j 2 фильтры [ 27 ] могут быть определены в элементах конфигурации, чтобы обеспечить более детальный контроль над тем, какие записи журнала должны обрабатываться какими регистраторами и приложениями. Помимо фильтрации по уровню журнала и сопоставлению регулярных выражений в строке сообщения, в Log4j 2 добавлены пакетные фильтры, временные фильтры, фильтрация по другим атрибутам событий журнала, таким как маркеры или карта контекста потока, а также JSR 223 фильтры сценариев .

Чтобы отладить неправильно работающую конфигурацию:

  • В конфигурациях Log4j 2 установите status атрибут TRACE для отправки вывода внутренней регистрации состояния на стандартный выход . Чтобы включить ведение журнала состояния до того, как будет найдена конфигурация, используйте свойство Java VM. -Dorg.apache.logging.log4j.simplelog.StatusLogger.level=trace.
  • В Log4j 1 используйте свойство Java VM. -Dlog4j.debug.

Чтобы узнать, где файл конфигурации log4j2.xml был загружен из проверки, getClass().getResource("/log4j2.xml").

Существует также неявная «ненастроенная» или «по умолчанию» конфигурация Log4j, то есть Java-приложения с поддержкой Log4j, в котором отсутствует какая-либо конфигурация Log4j. На стандартный вывод выводится предупреждение о том, что программа не настроена, а также URL-адрес веб-сайта Log4j, где можно найти подробную информацию о предупреждении и конфигурации. Помимо печати этого предупреждения, ненастроенное приложение Log4j будет печатать только записи журнала ERROR или FATAL на стандартный вывод.

Пример для Log4j 2

[ редактировать ]
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="trace" monitorInterval="60">
  <Properties>
    <Property name="filename">target/test.log</Property>
  </Properties>
 
  <Appenders>
    <Console name="STDOUT">
      <PatternLayout pattern="%d %p %c{1.} [%t] %m%n"/>
    </Console>

    <File name="file" fileName="${filename}">
      <PatternLayout>
        <pattern>%d %p %c{1.} [%t] %m%n</pattern>
      </PatternLayout>
    </File>
  </Appenders>
 
  <Loggers> 
    <!-- 
         loggers whose name starts with 'org.springframework' will only log messages of level "info" or higher;
         if you retrieve Loggers by using the class name (e.g. Logger.getLogger(AClass.class))
         and if AClass is part of the org.springframework package, it will belong to this category
    -->
    <Logger name="org.springframework" level="info" additivity="false" />

    <!--
        Filter example: for loggers whose name starts with 'com.mycompany.myproduct',
        log entries of level "debug" or higher whose ThreadContextMap data contains
        the key-value pair "test=123", also send these log entries to the "STDOUT" appender.
    -->
    <Logger name="com.mycompany.myproduct" level="debug" additivity="true">
      <ThreadContextMapFilter>
        <KeyValuePair key="test" value="123"/>
      </ThreadContextMapFilter>
      <AppenderRef ref="STDOUT"/>
    </Logger>
 
    <!--
        By default, all log messages of level "trace" or higher will be logged.
        Log messages are sent to the "file" appender and 
        log messages of level "error" and higher will be sent to the "STDOUT" appender.
    -->
    <Root level="trace">
      <AppenderRef ref="file"/>
      <AppenderRef ref="STDOUT" level="error"/>
    </Root>
  </Loggers>
 
</Configuration>

Пример для Log4j 1.2

[ редактировать ]
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration PUBLIC "-//LOGGER" "http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd">
<log4j:configuration>
    <!-- 
         an appender is an output destination, such as the console or a file;
         names of appenders are arbitrarily chosen.
    -->
    <appender name="stdout" class="org.apache.log4j.ConsoleAppender">
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern"
                value="%d{ABSOLUTE} %5p %c{1}:%L - %m%n" />
        </layout>
    </appender>
 
    <!-- 
         loggers of category 'org.springframework' will only log messages of level "info" or higher;
         if you retrieve Loggers by using the class name (e.g. Logger.getLogger(AClass.class))
         and if AClass is part of the org.springframework package, it will belong to this category
    -->
    <logger name="org.springframework">
        <level value="info"/>
    </logger>

    <!-- 
         everything of spring was set to "info" but for class 
         PropertyEditorRegistrySupport we want "debug" logging 
    -->
    <logger name="org.springframework.beans.PropertyEditorRegistrySupport">
        <level value="debug"/>
    </logger>
 
    <logger name="org.acegisecurity">
        <level value="info"/>
    </logger>
    
    
    <root>
        <!-- 
            all log messages of level "debug" or higher will be logged, unless defined otherwise 
            all log messages will be logged to the appender "stdout", unless defined otherwise 
        -->
        <level value="debug" />
        <appender-ref ref="stdout" />
    </root>
</log4j:configuration>

TTCC — это формат сообщений, используемый log4j. [ 28 ] TTCC — это аббревиатура от Time Thread Category Component . Он использует следующий шаблон:

 %r [%t] %-5p %c %x - %m%n

Где

Мнемоника Описание
%r Используется для вывода количества миллисекунд, прошедших от построения макета до создания события журналирования.
Используется для вывода имени потока, сгенерировавшего событие регистрации.
%p Используется для вывода приоритета события регистрации.
Используется для вывода категории события регистрации.
Используется для вывода NDC (вложенного диагностического контекста), связанного с потоком, создавшим событие регистрации. [ 29 ]
%X{ключ} Используется для вывода MDC (сопоставленного диагностического контекста), связанного с потоком, который сгенерировал событие регистрации для указанного ключа. [ 30 ]
Используется для вывода сообщения, предоставленного приложением, связанного с событием регистрации.
%n , специфичных для платформы новой строки Используется для вывода символа или символов .

Пример вывода
467 [main] INFO org.apache.log4j.examples.Sort — выход из основного метода.

  • log4c — порт для C. Log4C на основе C — это библиотека ведения журналов , выпущенная на SourceForge под лицензией LGPL . Для различных Unix операционных систем autoconf и automake предоставляются файлы . В Windows использования MSVC предоставляется Makefile для с . Разработчики также могут использовать собственную систему make для компиляции исходного кода, в зависимости от требований к сборке. Экземпляр библиотеки log4c можно настроить тремя способами: с использованием переменных среды , программно или через XML файл конфигурации . log4c имеет приложения для файлов, потоков и файлов, отображаемых в памяти. (Нет адаптера сокета.) Последняя версия — 1.2.4, выпущенная в 2013 году, и проект больше не разрабатывается активно. [ 31 ]
  • log4js — порт для JavaScript . Log4js доступен по лицензии Apache Software Foundation . Одной из особенностей Log4js является возможность удаленной регистрации событий браузера на сервере. Используя Ajax, можно отправлять события журналирования в нескольких форматах ( XML , JSON , обычный ASCII и т. д.) на сервер для их оценки там. реализованы следующие приложения Для log4js : AjaxAppender, ConsoleAppender, FileAppender, JConsoleAppender, MetatagAppender и WindowsEventsAppender. Предоставляются следующие классы макета: BasicLayout, HtmlLayout, JSONLayout и XMLLayout. Последняя версия на 2021 год. было 2.0 от 18 октября 2018 г. [ 32 ]
  • log4javascript — еще один порт для JavaScript. log4javascript — это платформа ведения журналов JavaScript, основанная на log4j . Последняя версия на 2021 год. была версия 1.4.13, выпущенная 23 мая 2015 года. [ 33 ]
  • JSNLog — порт для JavaScript . Автоматически помещает сообщения от средств ведения журнала JavaScript в журналы на стороне сервера с помощью серверного компонента .NET, который взаимодействует с Log4Net, NLog, Elmah или Common.Logging. Это обеспечивает интегрированный журнал событий на стороне клиента и сервера. Идентификаторы запросов соотносят события, связанные с конкретным пользователем. Конфигурация осуществляется через файл web.config на стороне сервера. Поддерживает регистрацию исключений, включая трассировку стека. По состоянию на 2021 год последняя версия была 3.0.0, обновления выпускались регулярно. [ 34 ]
  • Apache Log4net — порт Microsoft .NET Framework . Первоначальная работа была выполнена Neoworks и передана в дар Apache Software Foundation в феврале 2004 года. Платформа аналогична исходному log4j, но использует преимущества новых функций среды выполнения .NET. Предоставляет вложенный диагностический контекст (NDC) и сопоставленный диагностический контекст (MDC). Последняя версия по состоянию на 2022 год. было 2.0.15. [ 35 ]
  • log4perl порт log4j на Perl . Версия 1.57 от октября 2022 г. актуальна по состоянию на 2024 г. . [ 36 ]
  • Apache log4php — «Универсальная платформа ведения журналов для PHP . Первоначально это был порт Apache log4j на PHP, но теперь он включает в себя различные специфические функции PHP». [ 37 ]
  • PL-SQL-Logging-Utility — это адаптация log4j в PL/SQL. [ 38 ]
  • Log4db2 — это утилита ведения журналов для DB2 for LUW, которая использует инструкции SQL с кодом SQL PL. [ 39 ]
  • Apache Log4cxx — платформа ведения журналов для C++, созданная по образцу Apache log4j, которая использует переносимую среду выполнения Apache для большинства кода, специфичного для платформы, и должна быть пригодна для использования на любой платформе, поддерживаемой APR. Последняя версия — 0.13.0, выпущенная в 2022 году. [ 40 ]
  • Log4r — комплексная и гибкая библиотека журналирования, написанная на Ruby для использования в программах Ruby. Он был вдохновлен проектом Apache Log4j и предоставляет многие его функции. [ 41 ]

Уязвимость Log4Shell

[ редактировать ]

Уязвимость нулевого дня, связанная с удаленным выполнением кода в Log4j 2, имеющая дескриптор «Log4Shell» ( CVE -2021-44228), была обнаружена и сообщена Apache компанией Alibaba 24 ноября 2021 года и опубликована в твите 9 декабря. 2021. [ 12 ] Затронутые сервисы включают Cloudflare , iCloud , Minecraft: Java Edition , [ 42 ] Steam , Tencent QQ и Twitter . [ 43 ] [ 44 ] [ 45 ] максимальный уровень серьезности CVSS 10, поскольку миллионы серверов могут быть потенциально уязвимы для этого эксплойта. Apache Software Foundation присвоил Log4Shell [ 45 ] Уязвимость была охарактеризована фирмой по кибербезопасности Tenable как «самая большая и самая критическая уязвимость за последнее десятилетие». [ 13 ] а Фри Уортли из Lunasec охарактеризовал это как «конструктивный провал катастрофических масштабов». [ 46 ]

В США директор Агентства по кибербезопасности и безопасности инфраструктуры (CISA) Джен Истерли назвала эксплойт «критическим» и посоветовала производителям расставить приоритеты в обновлениях программного обеспечения. [ 47 ] а немецкое агентство Федеральное управление информационной безопасности (BSI) определило эксплойт как имеющий самый высокий уровень угрозы, назвав его «чрезвычайно критической угрозой» (переведено). [ 48 ] [ 49 ] Канадский центр кибербезопасности (CCCS) призвал организации принять немедленные меры. [ 50 ]

Функцию, вызывающую уязвимость, можно было отключить с помощью параметра конфигурации, который был удален. [ 51 ] в Log4j версии 2.15.0-rc1 (официально выпущенной 6 декабря 2021 г., за три дня до публикации уязвимости) и заменен различными настройками, ограничивающими удаленный поиск, тем самым уменьшая уязвимость. [ 52 ] [ 53 ] В целях дополнительной безопасности все функции, использующие JNDI , на которых основана эта уязвимость, будут отключены по умолчанию, а поддержка поиска сообщений удалена, начиная с версии 2.16.0. [ 54 ] [ 55 ]

См. также

[ редактировать ]
  1. ^ «История выпусков Apache Log4j 1.2» . apache.org . Фонд программного обеспечения Apache . Проверено 2 сентября 2014 г.
  2. ^ «Выпуск 2.23.1» . 10 марта 2024 г. Проверено 22 марта 2024 г.
  3. ^ «Примечания к выпуску — Log4j» . logging.apache.org . Проверено 9 октября 2023 г.
  4. ^ «Reload4j Главная» . reload4j.qos.ch . Проверено 12 января 2022 г.
  5. ^ «Войти домой» . Logback.qos.ch . Проверено 24 июля 2014 г.
  6. ^ Григг, Кади. «Плохая хорошая разработка: эксперты по кибербезопасности рассказывают о Log4J, открытом исходном коде и многом другом» . blog.sonatype.com . Проверено 16 августа 2022 г.
  7. ^ «Руководство по Log4j 2 — Apache Log4j 2» . Logging.apache.org. 12 июля 2014 года . Проверено 24 июля 2014 г.
  8. ^ Гёрс, Ральф (15 декабря 2019 г.). «Почему был создан Log4j 2?» . Ральф Гёрс .
  9. ^ «Руководство по Log4j 2 — Apache Log4j 2: Новости» . Logging.apache.org. 12 июля 2014 года . Проверено 24 июля 2014 г.
  10. ^ «Проект служб ведения журнала Apache объявляет об окончании срока службы Log4j 1; рекомендует выполнить обновление до Log4j 2» . blogs.apache.org. 5 августа 2015 года . Проверено 3 июля 2016 г.
  11. ^ «Проект Reload4j; Простая миграция с log4j 1.2.x» . qos.ch. 12 января 2022 г. . Проверено 12 января 2022 г.
  12. ^ Перейти обратно: а б «Что случилось с кошмаром безопасности Log4Shell?» . Законность . 10 декабря 2021 г.
  13. ^ Перейти обратно: а б «Недавно обнаруженная ошибка в программном обеспечении — «самая критическая уязвимость последнего десятилетия» » . Хранитель . Ассошиэйтед Пресс. 11 декабря 2021 г.
  14. ^ «Новый log4j 2.0» . Grobmeier.de. 5 декабря 2012 года . Проверено 24 июля 2014 г.
  15. ^ «Log4j – Обзор – Apache Log4j 2» . logging.apache.org. 5 июня 2016 г. Проверено 3 июля 2016 г.
  16. ^ «Асинхронные регистраторы Log4j 2 для ведения журналов с малой задержкой — Apache Log4j 2» . Logging.apache.org. 12 июля 2014 года . Проверено 24 июля 2014 г.
  17. ^ «Дисруптор от LMAX-Exchange» . Lmax-exchange.github.io . Проверено 24 июля 2014 г.
  18. ^ «Уровень (API Apache Log4j 1.2.17)» . Logging.apache.org. 9 июня 2012 года . Проверено 24 июля 2014 г.
  19. ^ «Пользовательские уровни журналов» . Logging.apache.org. 12 июля 2014 года . Проверено 16 июля 2016 г.
  20. ^ «Конфигурация» . Logging.apache.org. 5 июля 2016 г. Проверено 16 июля 2016 г.
  21. ^ «Архитектура» . Logging.apache.org. 5 июля 2016 г. Проверено 16 июля 2016 г.
  22. ^ «Аппендеры» . Logging.apache.org. 5 июля 2016 г. Проверено 16 июля 2016 г.
  23. ^ «Файл случайного доступа» . docs.oracle.com. 28 июля 2011 года . Проверено 16 июля 2016 г.
  24. ^ «Макеты» . Logging.apache.org. 5 июля 2016 г. Проверено 16 июля 2016 г.
  25. ^ «ГЕЛЬФ» . docs.graylog.org. 8 июня 2016 г. Архивировано из оригинала 9 февраля 2020 г. . Проверено 16 июля 2016 г.
  26. ^ Герхардс, Р. (1 марта 2009 г.). «RFC 5424 — Протокол системного журнала» . Tools.ietf.org. дои : 10.17487/RFC5424 . Проверено 16 июля 2016 г. {{cite journal}}: Для цитирования журнала требуется |journal= ( помощь )
  27. ^ «Фильтры» . Logging.apache.org. 5 июля 2016 г. Проверено 16 июля 2016 г.
  28. ^ «TTCCLayout (API Apache Log4j 1.2.17)» . Logging.apache.org. 9 июня 2012 года . Проверено 24 июля 2014 г.
  29. ^ «Класс НДЦ» . Архивировано из оригинала 20 августа 2007 года . Проверено 11 декабря 2021 г.
  30. ^ «MDC (Apache Log4j 1.2.17 API)» . Logging.apache.org. 9 июня 2012 года . Проверено 24 июля 2014 г.
  31. ^ «Среда ведения журнала для C | Бесплатное программное обеспечение для системного администрирования можно загрузить на сайте» . Sourceforge.net . Проверено 24 июля 2014 г.
  32. ^ «stritti/Log4js — платформа ведения журнала для JavaScript без зависимостей во время выполнения» . Гитхаб . Проверено 11 декабря 2021 г.
  33. ^ «инфраструктура ведения журналов JavaScript» . log4javascript . Проверено 11 декабря 2021 г.
  34. ^ «Запись ошибок JavaScript в журнал сервера» . JSNLog . Проверено 11 декабря 2021 г.
  35. ^ «Апач log4net» . Logging.apache.org . Проверено 11 декабря 2021 г.
  36. ^ Шилли, Майк; Гесс, Кевин. «log4perl — log4j для Perl» . log4perl . Проверено 11 декабря 2021 г.
  37. ^ «Службы ведения журналов Apache» . Apache.org . Проверено 11 марта 2015 г.
  38. ^ «tmuth/Logger-A-PL-SQL-Logging-Utility — GitHub» . Гитхаб.com . Проверено 24 июля 2014 г.
  39. ^ «Log4db2 от angoca» . Ангока.github.io . Проверено 24 июля 2014 г.
  40. ^ «log4cxx — Журнал изменений» . logging.apache.org .
  41. ^ «Руководство по Log4r» . log4r.rubyforge.org. Архивировано из оригинала 25 декабря 2012 года . Проверено 13 апреля 2017 г.
  42. ^ «Уязвимость безопасности в Minecraft: Java Edition» . Шахтерское ремесло . 10 декабря 2021 г.
  43. ^ Гудин, Дэн (9 декабря 2021 г.). «Zeroday в вездесущем инструменте Log4j представляет серьезную угрозу для Интернета» . Арс Техника . Проверено 10 декабря 2021 г.
  44. ^ «Худший Apache Log4j RCE Zero Day появился в Интернете» . Кибер Кендра . 9 декабря 2021 . Проверено 10 декабря 2021 г.
  45. ^ Перейти обратно: а б Мотт, Натаниэль (10 декабря 2021 г.). «Бесчисленное количество серверов уязвимо для уязвимости нулевого дня Apache Log4j» . Журнал ПК . Проверено 10 декабря 2021 г.
  46. ^ Ньюман, Лили Хэй (10 декабря 2021 г.). «Интернет горит» . Проводной – через www.wired.com.
  47. ^ «Заявление директора CISA Easterly об уязвимости «Log4j»» . СНГА . Вашингтон. 11 декабря 2021 г.
  48. ^ «BSI предупреждает об уязвимостях безопасности». Тагешау (на немецком языке). 12 декабря 2021 г.
  49. ^ «Красное предупреждение : уязвимость Log4Shell вызывает чрезвычайно критическую угрозу». BSI Пресс-служба (на немецком языке). 12 декабря 2021 г.
  50. ^ «Заявление министра национальной обороны об уязвимости Apache и призыв к канадским организациям принять срочные меры» . Правительство Канады . 12 декабря 2021 года. Архивировано из оригинала 20 декабря 2021 года . Проверено 12 декабря 2021 г.
  51. ^ «LOG4J2-3198: Log4j2 больше не форматирует поиск в сообщениях по умолчанию» . Гитхаб . 5 декабря 2021 г.
  52. ^ «Ограничить доступ к LDAP через JNDI с помощью rgoers · Запрос на извлечение № 608 · apache/logging-log4j2» . Гитхаб . 30 ноября – 5 декабря 2021 г.
  53. ^ «Уязвимости безопасности Apache Log4j» . 6 декабря 2021 г.
  54. ^ «LOG4J2-3208: Отключить JNDI по умолчанию» . 11 декабря 2021 . Проверено 14 декабря 2021 г.
  55. ^ «LOG4J2-3211: Удалена поддержка поиска в сообщениях» . 13 декабря 2021 г. . Проверено 14 декабря 2021 г.

Дальнейшее чтение

[ редактировать ]
  • Гюльджю, Чеки (февраль 2010 г.), Полное руководство по Log4j (2-е изд.), QOS.ch, стр. 204, ISBN  978-2-9700369-0-6
  • Гупта, Самудра (22 июня 2005 г.), Pro Apache Log4j (2-е изд.), Apress , стр. 224, ISBN  978-1-59059-499-5
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 0526576a391525610dd824a204f4f300__1719234420
URL1:https://arc.ask3.ru/arc/aa/05/00/0526576a391525610dd824a204f4f300.html
Заголовок, (Title) документа по адресу, URL1:
Log4j - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)