Apache Log4j バージョン 2.17.0 が正式にリリースされ、3 番目に発見されたセキュリティ脆弱性 CVE-2021-45105 が解決されました。
Apache Log4j2 バージョン 2.0-alpha1 から 2.16.0 では、自己参照検索の制御されない再帰が防止されません。ログ設定でデフォルト以外のパターン レイアウトとコンテキスト ルックアップ ($${ctx:loginId} など) が使用されている場合、スレッド コンテキスト マップ (MDC) 入力データを制御する攻撃者は、再帰的ルックアップを含む悪意のある入力データを作成して、 StackOverflowError が発生し、プロセスが終了します。これは DoS 攻撃とも呼ばれます。 [推奨: Apache 使用法チュートリアル ]
バージョン 2.17.0 (Java 8 用) 以降、構成内の検索文字列のみが再帰的に展開されます。その他の使用法では、先頭のみが展開されます。 -レベルのルックアップは解析されますが、ネストされたルックアップは解析されません。
以前のバージョンでは、ログ構成で次のことを行うことでこの問題を軽減できました。
ログ構成内 PatternLayout 内では、${ctx:loginId} や $${ctx:loginId} などのコンテキスト ルックアップをスレッド コンテキスト マップ パターン (%X、%mdc、または %MDC) に置き換えます。
それ以外の場合は、構成内の ${ctx:loginId} や ${ctx:loginId} などのコンテキスト ルックアップへの参照を削除します。これらは、HTTP ヘッダーなど、アプリケーションの外部のソースからのものです。またはユーザー入力..
バージョン 2.17.0 の具体的な更新内容は次のとおりです:
文字列置換再帰を修正しました。 LOG4J2-3230
以上がApache Log4j 2.17.0 がリリースされました。どのような問題が解決されたかわかりますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。