Apache Log4jの深刻な脆弱性

Apache Log4jに、CVSSスコアが10点中10点という深刻な脆弱性が見つかりました。対処方法は。

Apache Log4jに見つかった深刻な脆弱性「CVE-2021-44228」(CVSSスコアは10点中10点)について、各所で報じられています(リンク先は英語)。このライブラリは、エラーメッセージを記録する用途で、非常に多くのJavaアプリケーションにて使用されています。この脆弱性は、すでに活発に悪用されています。Apache Software Foundationは、このライブラリをバージョン2.15.0にアップデートすること、アップデートができない場合には「Apache Log4j Security Vulnerabilities」(英語)に説明されているいずれかの方法で対応することを、全開発者に向けて推奨しています。

CVE-2021-44228がそれほど危険である理由

CVE-2021-44228(別名:Log4Shell、LogJam)は、リモートコード実行(RCE)の脆弱性です。サーバーのどれか一つでこの脆弱性を悪用することができた場合、攻撃者は任意のコードを実行可能となり、システムを完全に制御可能となる可能性があります。

CVE-2021-44228が特に危険なのは、悪用が容易である点です。経験の少ないハッカーであっても、この脆弱性を使用して攻撃を成功させることが可能です。リサーチャーらによると、Log4jがログに文字列を一つ書き込むように仕向けるだけで、特定文字列を置き換えるLookup機能によって独自のコードをアプリケーションへアップロード可能となります。

CVE-2021-44228を通じた攻撃の概念実証(PoC)コードは、すでにインターネット上で入手可能な状態になっています。サイバーセキュリティ企業では、脆弱なアプリケーションを探すネットワークスキャンの動きを多数捕捉し、ハニーポットに対する攻撃も観測しています。

この脆弱性は、Alibaba Cloud Security TeamのChen Zhaojun氏によって発見されました。

Apache Log4J とは何か、このライブラリがこれほど普及しているのはなぜか

Apache Log4jは、Apache Logging Projectの一環です。このライブラリは、エラーのログを簡単に記録できる方法の一つであることから、ほとんどのJava開発者に使用されています。

Amazon、Apple iCloud、Cisco、Cloudflare、ElasticSearch、 Red Hat、Steam、Tesla、 Twitterなど、大手ソフトウェア企業および大手オンラインサービスの多くでLog4jライブラリが使用されています。このように広範囲で使用されていることから、一部の情報セキュリティリサーチャーは、脆弱性を抱えるサーバーに対する攻撃が今後数日の間に大幅に増加すると予測しています。

どのバージョンのLog4j が脆弱か、サーバーを攻撃から守るにはどうすべきか

Log4jのバージョン2.0-beta9〜2.14.1と、ほぼすべてのバージョンに脆弱性があります。最もシンプルで効果の高い対処法は、最新バージョンであるバージョン2.15.0をインストールすることです。最新バージョンは、こちらのページからダウンロード可能です(英語)。

何らかの事情でLog4jをアップデートできない場合のために、Apache Software Foundationはいずれかの方法で緩和を図ることを推奨しています。

  • バージョン2.10〜2.14.1の場合:システムプロパティ「log4j2.formatMsgNoLookups」を設定するか、または環境変数「LOG4J_FORMAT_MSG_NO_LOOKUPS」をtrueに設定する。
  • バージョン2.0-beta9〜2.10.0の場合:クラス「JndiLookup」をクラスパス「zip -q -d log4j-core – *. Jar org / apache / logging / log4j / core / lookup / JndiLookup .class」から削除する。

これに加え、悪意あるコードの起動を検知して攻撃の発展を阻止するため、サーバー上にセキュリティソリューションをインストールすることをお勧めします。

ヒント

ホームセキュリティのセキュリティ

最近では様々な企業が、主にカメラなどのスマートなテクノロジーを活用したホームセキュリティサービスを提供しています。しかし、セキュリティシステムは侵入者からの攻撃に対してどの程度セキュアなのでしょうか?