1.脆弱性の説明
Log4j は、Apache によって実装されたオープン ソース ログ コンポーネントです。Logback も log4j の作成者によって設計されました。優れた機能があり、log4j を置き換えるために使用されるログ フレームワークです。slf4j のネイティブ実装です。 Log4j2は、log4j 1.xとlogbackの改良版で、いくつかの新技術(ロックフリー非同期など)を採用し、ログのスループットとパフォーマンスがlog4j 1.xの10倍となり、いくつかの課題を解決したという。デッドロックの問題やバグが解消され、構成がよりシンプルかつ柔軟になりました。このログ フレームワークは、ログ情報を記録するためにビジネス システムで広く使用されています。 Apache Log4j2 コンポーネントが再びサービス拒否の脆弱性にさらされました。脆弱性番号:CVE-2021-45105、脆弱性脅威レベル:高リスク
2.16.0 を含む Apache Log4j2 バージョンでは、自己参照検索による制御されない再帰が防止されません。ロギング設定でデフォルト以外のスキーマ レイアウトとコンテキスト ルックアップ ($${ctx:loginId} など) が使用されている場合、スレッド コンテキスト マップ (MDC) 入力データを制御する攻撃者は、再帰的ルックアップを含む悪意のある入力データを手動で作成する可能性があります。 、StackOverflowError が発生するとプロセスが終了します。これは、DOS (Denial of Service) 攻撃としても知られています。
Apache log4j2 のリモート コード実行の脆弱性 (CVE-2021-44228) が 12 月 9 日にインターネット上で広く拡散されて以来、Apache log4j2 関連コンポーネントに複数のセキュリティ脆弱性が発見され、当局は 2.15.0-rc1 および 2.15 を相次いでリリースしました。 .0-rc2、2.15.0、2.15.1-rc1、2.16.0、2.17.0 およびその他のアップグレード バージョン。
2. サプライチェーンへの影響
非権威的な統計によると、Log4j を直接的および間接的に参照するオープン ソース コンポーネントが 170,000 を超えると推定されています。現在知られている影響を受けるアプリケーションとコンポーネントには、Apache Solr、Apache Struts2、Apache Flink、Apache Druid、Apache Log4j SLF4J Binding、spring-boot-strater-log4j2、Hadoop Hive、ElasticSearch、Jedis、Logging、Logstash、VMware などの製品が含まれます。 。
この脆弱性の影響は世界規模であるため、Amazon、Apache、Atlassian、Cisco、Debian、Docker、Fortinet、Google、IBM、Intel、Juniper Networ、Microsoft、 Oracle、Red Hat、Ubuntu、VMware など
CVE-2021-44228 の脆弱性は悪用が容易で、デフォルト設定はリモートから悪用される可能性があり、PoC/EXP はインターネット上に公開されており、サイバー犯罪グループによって広く悪用されています。
3. 脆弱性の影響範囲
CVE-2021-4104: Apache Log4j 1.2
CVE-2021-44228: Apache Log4j 2.0-beta9 – 2.12.1、Apache Log4j 2.13.0 – 2.15.0-rc1
CVE-2021-45046: Apache Log4j 2.0-beta9 – 2.12.1、Apache Log4j 2.13.0-2.15.0
4.影響を受けるバージョン
CVE-2021-44228 Apache Log4j リモート コード実行の脆弱性:
2.0-beta9 <=Apache Log4j 2.x < 2.15.0 (バージョン 2.12.2 は影響を受けません)
CVE-2021-45046 Apache Log4j のサービス拒否とリモート コード実行の脆弱性:
2.0-beta9 <=Apache Log4j 2.x < 2.15.0 (バージョン 2.12.2 は影響を受けません)
CVE-2021-4104 ApacheLog4j 1.2 JMSAppender のリモート コード実行の脆弱性:
Apache Log4j =1.2
CVE-2021-45105 Apache Log4j2 サービス拒否の脆弱性:
2.0-beta9 <=Apache Log4j<= 2.16.0
5. 修理の提案:
1. 最新バージョンへの正式アップグレード
https://github.com/apache/logging-log4j2/tags
2. ランタイム アプリケーションの自己保護のために RASP (ランタイム アプリケーションの自己保護) を展開します。
6. 参照:
https://www.venustech.com.cn/new_type/aqtg/20211216/23340.html
https://security.snyk.io/vuln/SNYK-JAVA-ORGAPACHELOGGINGLOG4J-2321524
https://github.com/jas502n/Log4j2-CVE-2021-44228
https://thehackernews.com/2021/12/apache-issues-3rd-patch-to-fix-new-high.html
元記事はChief Security Officerによるもので、転載の際はhttps://cncso.com/jp/apache-log4j2-コンポーネントのサービス拒否-html。