米CISA(Cybersecurity and Infrastructure Security Agency )やFBI(Federal Bureau of Investigation)、NSA(National Security Agency)、その他の関連機関は12月22日、Apache Log4j 2.x(以下、Log4j 2)に発見された「Log4Shell」の通称で知られる脆弱性と、それに関連する脆弱性への対処に関する共同サイバーセキュリティアドバイザリ「AA21-356A: Mitigating Log4Shell and Other Log4j-Related Vulnerabilities」をリリースした。このアドバイザリでは、IT資産やクラウド資産を持つベンダーや組織が、Log4j 12の一連の脆弱性によるリスクを軽減するために取るべき手順がまとめられている。

  • AA21-356A: Mitigating Log4Shell and Other Log4j-Related Vulnerabilities

    AA21-356A: Mitigating Log4Shell and Other Log4j-Related Vulnerabilities

CISAでは独自にLog4Shellに対処するためのガイダンスページも公開しているが、AA21-356Aはその内容を拡張し、ベンダーや企業がとるべき対策がより具体的にまとめられたものになっているという。

AA21-356Aで示されている手順は次のとおり。

  • Log4Shellおよびその他のLog4j関連の脆弱性の影響を受ける資産を特定する
  • 修正パッチが利用可能になり次第、Log4jのアセットと影響を受ける製品を最新バージョンにアップグレードする
  • Log4Shellの悪用の可能性を検出するためのインシデント対応手順を実施する

問題となっているLog4j 2の脆弱性としては、本稿執筆時点で次の3つのCVEがある。

  • CVE-2021-442289(通称Log4Shell): バージョン2.0-beta9から2.14.1に影響を与える、JNDI Lookup機能に起因するリモートコード実行(RCE)の脆弱性
  • CVE-2021-45046: バージョン2.0-beta9から2.12.1、および2.13.0から2.15.0に影響を与える、特定のデフォルト以外の構成でRCE、サービス拒否(DoS)状態、またはその他の影響を引き起こすことができる脆弱性
  • CVE-2021-45105: バージョン2.0-beta9から2.12.2および2.13.0から2.16.0に影響を与える、特定のデフォルト以外の構成でDoS状態またはその他の影響を引き起こすことができる脆弱性

Apache Software Foundationではこれらの問題を修正するために3つのパッチ(2.15.0、2.16.0/2.12.2、2.17.0/2.12.3/2.3.1)をリリースしているが、そのうち2.15.0および2.16.0/2.12.2は修正が不十分であることが分かっており、3つの脆弱性すべてに対処するにはバージョン2.17.0(Java 8以降)/ 2.12.3(Java 7)/ 2.3.1(Java 6)にアップデートする必要がある。

CISAをはじめとする関連機関は、これらの脆弱性がすでに広く利用されていることを考慮して、すべての組織がLog4j 2を使用する資産が侵害された可能性があると想定した上で対策を講じることを推奨している。AA21-356Aには、侵害を検出し、それに対処するための具体的な手順についてもまとめられている。

Log4j 2は人気のあるライブラリであり、多くのアプリケーションやフレームワーク、ライブラリで利用されている。自分のアプリケーションが直接利用している場合だけでなく、依存するフレームワークやライブラリによって利用されている場合もLog4Shellをはじめとする脆弱性の影響を受ける可能性があるため、慎重に影響範囲を見極める必要がある。目に見える範囲の対策で安心するのではなく、ガイドラインに従って正しい手順で回避策を実施することが推奨される。