はじめに
シスコのオブザーバビリティ・ソリューション AppDynamics は,Java アプリケーションの性能監視と同時に,Java アプリケーション内で利用されているライブラリの脆弱性の検知,脆弱性をついた攻撃の検知/ブロックを行うことができます。
本投稿では先日発見された Java アプリケーション用ログライブラリ,Apache Log4j の脆弱性,CVE-2021-44228 (Log4Shell) が Cisco Secure Application のどのように検知されるかご紹介したいと思います。
Log4Shell とは
Log4j は 多くの Java アプリケーションで用いられている ログ・ライブラリであり,今回の脆弱性 CVE-2021-44228 では,リモートから悪意を持ったデータを送信することで,任意のコマンドを実行される可能性があります。影響を受ける Log4j のバージョンは,2.0-beta9 から 2.14.1 までとなります。
Cisco Secure Application とは
AppDynamics では Java アプリケーションのコードレベル性能監視を行うことが可能であり,どのようなライブラリの Class/Method がコールされているか把握されております。したがって利用されているライブラリに既知の脆弱性が存在する場合,自動的に脆弱性の検知または保護(ブロック)を行うことが可能です。
一般的には,このような機能は RASP(Runtime Application Self-Protection) と呼ばれますが,AppDynamics に RASP 機能を追加するオプションが Cisco Secure Application となります。
現時点で,Cisco Secure Application では以下のような機能が提供されます。
- Java アプリケーション内のライブラリ等の既知の脆弱性の自動検知
- 脆弱性に対する攻撃からの保護(ブロック)
- 各脆弱性のリスク・スコアリング
Cisco Secure Application の利用要件
Cisco Secure Application を利用頂くには,以下の要件があります。オンプレミス版コントローラではご利用頂けません。
- AppDynamics Java Agent 21.3+
- AppDynamics SaaS コントローラ
- Cisco Secure Application ライセンス
Cisco Secure Application による Log4Shell 検知
以下の図では,AppDynamics で性能監視されている Java アプリケーションのダッシュボードを示しています。アプリケーションの脆弱性が検知された場合,右側中央付近の Security Events に Critial / Warning イベントが通知されます。
ここで,Security Events リンクをクリックしますと,Cisco Secure Application に遷移します。
Vulnerabilities (脆弱性) タブをクリックしますと,検知された各脆弱性のリストが表示されます。ここでは脆弱性の深刻度,リスク・スコア,最初に検知された日時,対応状況が表示されます。
CVE-2021-44228 のリンクをクリックしますと,脆弱性の詳細が表示されます。
AppDynamics 製品における CVE-2021-44228 対応状況
AppDynamics 自体も複数の監視エージェントが Java で記述されており,今回の CVE-2021-44228 の影響を受けております。対応状況の Security Advisory はこちらで公開されております。
Security Advisory: Apache Log4j Vulnerability
CVE-2021-44228 の影響を受ける AppDynamics エージェントおよびバージョンは以下のとおりです。
Agent | Version |
---|---|
Apache Agent | 21.12.0 未満 |
オンプレミス・コントローラ同梱 Java Agent | 21.12.0 未満 |
Database Agent | 21.12.0 未満 |
Java Agent | 21.11.1 未満 |
Machine Agent | 21.12.0 未満 |
PHP Agent | 21.12.0 未満 |
Python Agent | 21.12.0 未満 |
Java Agent は 21.11.1, それ以外のエージェントは 21.12.0 以降に更新することを強く推奨いたします。
まとめ
今回は Cisco Secure Application により Log4Shell がどのように検知されるのか,ご紹介させて頂きました。
すでに SaaS コントローラをご利用で Java アプリケーションを最新版 Java Agent で監視されている場合,Cisco Secure Application ライセンスを追加頂くことで,すぐにランタイム・セキュリティ保護を開始することができるのが大きな特徴です。
Cisco Secure Application に関するデモ,お打ち合わせ等はこちらからお願いいたします。