Java用のログ出力ライブラリ「Log4j」にリモートコード実行の脆弱性

Log4jにリモートコード実行の脆弱性

2021年12月10日(金)、Java用のログ出力ライブラリ「Apache Log4j」(以降はLog4j)でリモートコード実行(CVE-2021-44228)の脆弱性が公表されました。

この脆弱性の危険度は「緊急」レベルであり攻撃が成立した場合、遠隔の第三者が任意のコードを実行する可能性を含んだ脆弱性となります。

したがって、攻撃者によりWebサーバー上の情報を改ざん・窃取される恐れがあり、早急な対応が必要です。

この脆弱性の修正バージョンとしてApache Log4j 2.15.0がリリースされていますが、特定の構成ではこの修正が不十分であることが判明し、12月14日(火)に最新バージョンとしてApache Log4j 2.16.0がリリースされています。また、Java 7実行環境バージョンの最新版である2.12.2がリリースされています。

この脆弱性の影響を受けるLog4jを使用している方は、公開されている情報を確認し、対策を実施することを推奨します。

Apache Log4j Security Vulnerabilities
Fixed in Log4j 2.16.0
https://logging.apache.org/log4j/2.x/security.html

 

Log4jの脆弱性について

Log4jとは、Java用のログ出力ライブラリのことですが、このLog4jには出力されたログの中に特定の文字列が含まれた場合、自動で変数に置換する機能があります(この機能はLookupと呼称されています)。

今回、問題となっているのはJNDI(Java Naming and Directory Interface)のLookup機能にあります。

このJNDI Lookup機能は、ネットワーク上から値を取得し置換することが可能です。その中に、LDAPやRMIなどの通信手段があり、これを悪用することで攻撃者が用意した外部のサーバーと通信し、悪意のあるJava classファイルを読み込ませることで任意のコードを実行させることができます。

 

影響を受けるバージョン

下記のLog4jバージョンが影響を受けます。

  • Apache Log4j 2.15.0-rc1、およびそれ以前の2系のバージョン

 

基本的な攻撃の流れ

  • 攻撃者は、攻撃者が用意したLDAPサーバーのURLを含む文字列をHTTPヘッダーに埋め込んだHTTPリクエストを送信します
  • 脆弱性のあるJavaアプリケーションはその通信をログに出力します
  • JNDI Lookupはそのログ内の文字列を変数に置換するため、攻撃者が用意したLDAPサーバーへLDAP queryを送信します
  • 攻撃者が用意したLDAPサーバーは、悪意あるJava classファイルのURLを応答し、ダウンロードさせメモリ内に読み込み実行させます
  • 本格的に攻撃開始

 

対策・対応について

最新版へのアップデートを推奨します。最新版は、Log4jダウンロードページで配布されています。

また、攻撃の影響を受けている可能性がある場合、不審なプロセスの起動や第三者によるファイルの作成が行われていないか確認してください。

 

アップデートがすぐに行えない場合について

回避策が公開されています。詳細につきましては、公開されている情報をご確認ください。

 

Log4j 2.10以上のバージョン

  • Log4jを実行するJava仮想マシンを起動する際に log4j2.formatMsgNoLookups を true に設定しLookup機能を無効化する
  • 環境変数 LOG4J_FORMAT_MSG_NO_LOOKUPS を true に設定しLookup機能を無効化する

Log4j 2.10 より前のバージョン

  • JndiLookupクラスをクラスパスから除外する

 

また、セキュリティ製品やサービスでも対応状況が公開されています。

 

参考情報

Apache Log4j Security Vulnerabilities
Fixed in Log4j 2.12.2 and Log4j 2.16.0
https://logging.apache.org/log4j/2.x/security.html

 

JPCERT/CC
Apache Log4jの任意のコード実行の脆弱性(CVE-2021-44228)に関する注意喚起
https://www.jpcert.or.jp/at/2021/at210050.html

 

【セキュリティ ニュース】人気ライブラリ「Apache Log4j」に深刻な脆弱性、悪用も – 影響の確認や対策の実施を(1ページ目 / 全1ページ):Security NEXT
https://www.security-next.com/132376

 

IPA 独立行政法人 情報処理推進機構
更新:Apache Log4j の脆弱性対策について(CVE-2021-44228)
https://www.ipa.go.jp/security/ciadr/vul/alert20211213.html

レオンテクノロジーは現在、一緒に働く仲間を募集しております!
興味がある方はこちらから!

セキュリティに関するご相談はこちらから!

こんな記事も読まれています