Log4jの脆弱性とは
ここ数週間、IT業界の多くの方々にとって厳しい状況が続いています。12月9日、Javaアプリケーションで使用されるApache Software Foundationの広く普及したロギングライブラリ「Log4j」に、重大なゼロデイ脆弱性が発見され、公表されました。数十万ものWebサイトやアプリケーションがこのソフトウェアを使用してログを記録し、開発者によるWebサイトのデバッグや、アプリケーションおよびWebページに関するその他の傾向の追跡に役立てています。推定によると、Log4jフレームワークは数十万件のオープンソースソフトウェアプロジェクトで使用されています。開発者は、既存の脆弱性が潜んでいる可能性のある基盤コードを確認せずに、こうしたオープンソースツールを利用してソフトウェアを構築することが少なくありません。
Log4jの脆弱性と、それによって攻撃者が実行可能になるエクスプロイトの種類について、簡単に振り返ります。
F5 Labsは次のように述べています。「Log4jには、これまで発見されていなかったセキュリティ脆弱性があります。そのWebサイトを通じて送信されたデータに特定の文字列が含まれていると、Log4jが外部のWebサイトから追加のソフトウェアを自動的に取得し、実行します。攻撃者がこの脆弱性を悪用すると、Log4jを実行しているサーバー上で、サーバーを完全に乗っ取ることが可能なソフトウェアを含め、任意のソフトウェアを実行させることができます。これはリモートコード実行(RCE)攻撃と呼ばれます。」
Log4jは事業に深刻な混乱をもたらす可能性があります
Log4jが広く普及していることから、当初のCVE-2021-44228(通称Log4Shell)は、重大な脆弱性と判断されました。この脆弱性の深刻度に加え、パッチ自体にも脆弱性があり、さらにパッチを適用する必要があるため、IT担当者はしばらくの間、この脆弱性の影響への対応を迫られる可能性があります。さらに、Log4jへの入れ子状の参照、つまりソフトウェアで使用しているライブラリがLog4jライブラリを参照していないかを確認する必要があるため、Log4Shellの影響が連鎖的に広がる可能性があります。Log4jの脆弱性とLog4Shellが組織に及ぼし得る影響の全容を把握するのは容易ではありません。組織がリスクにさらされている可能性がある場合は、無料の脅威評価を受けることをご検討ください。
まだ対応していない場合、Log4jのリスクを軽減するために、どの組織もまずパッチを適用する必要があります。Log4jを実行しているサーバーにパッチを適用してください。Log4jを実行するライブラリを使用しているソフトウェアにもパッチを適用してください。とにかくパッチを適用し、その後も継続的に適用してください。
組織にとって不可欠な、これらの脆弱性を網羅的に検出してパッチを適用するプロセスを進める一方で、Log4Shellのエクスプロイトを利用した攻撃から環境を保護し、攻撃者がすでに環境へ侵入している場合には被害のさらなる拡大を防ぐことが極めて重要です。また、1月4日、米国連邦取引委員会は、Apache Log4Jの脆弱性を修正しない組織は法的措置を受ける可能性があるとの通知を発表し、Log4jへの対応の重要性を強調しました。
パッチを完全に適用していても、Log4jはこの種の脆弱性として最初のものではなく、最後でもないことを認識しておくことが重要です。そのため、現在および将来の脆弱性に対して事前に対策するとともに、攻撃者にシステムの脆弱性を悪用された場合にネットワークを保護するための計画を策定しておく必要があります。幸い、緩和策は比較的容易に導入できます。
Log4jのような脆弱性を緩和するには、以下を必ず実施してください。
- WAFを導入し、Log4Shellや同種の脆弱性を悪用した攻撃から組織をプロアクティブに保護する
- 組織が攻撃を受けた場合でも、ネットワーク内に深刻な被害が及ぶ前にエクスプロイトを阻止できるよう、保護対策を講じます
- 監査を実施し、脆弱性による影響の全範囲を特定する
- 監査結果を基に、脆弱性を使用または参照しているすべてのコードにパッチを適用し、脆弱性の影響を受ける箇所が未修正のまま残らないようにします
既知の攻撃ベクトルをブロックするシグネチャによるLog4j脆弱性の緩和
対策を講じないまま放置すると、サイバー攻撃者が数千ものWebサイトやオンラインアプリを短時間で乗っ取り、機密データを窃取するおそれがあります。最も効果的な解決策は、Log4jを最新バージョンに更新するようアプリのコードにパッチを適用し、Webアプリケーションファイアウォール(WAF)で悪意のあるリクエストをブロックすることです。
脆弱性のあるサーバーやソフトウェアスタックにLog4jの脆弱性に対する必要なパッチを適用する間も、組織をLog4Shell攻撃から保護する必要がある場合があります。こうした場合にも、WAFが役立ちます。
F5 WAFソリューションは、いずれもF5の一貫性のある堅牢なWAFエンジンを基盤とし、セキュリティニーズに最適に対応できる導入モデルと利用モデルで提供されます。これにより、インフラストラクチャにおけるApache Log4jのリモートコード実行(RCE)の脆弱性による影響の軽減を支援します。F5は、堅牢なWAFエンジンでアプリケーションを保護するための4つの選択肢を提供しています。
- F5 Advanced WAF
- NGINX App Protect WAF
- Silverline WAF
- Volterra WAF
F5は、Log4jの脆弱性に対する既知の攻撃ベクトルをブロックするシグネチャセットをリリースしました。F5 Advanced WAFとNGINX App Protect WAFはどちらも、Java Naming and Directory Interface(JNDI)インジェクションに固有のシグネチャと汎用的なJNDIインジェクションシグネチャを使用して、悪用の試みをブロックできます。これらのシグネチャはServer-Side Code Injectionシグネチャセットの一部です。このシグネチャセットは、脅威と既知のWAF回避手法に関する継続的な調査に基づき、Log4Shell攻撃を効果的に検出するための新しいルールによって更新されています。これにより、F5 WAFは「仮想パッチ」を実現します。こちらをご覧ください。BIG-IPおよびNGINX Application Security製品での緩和策に関するサポート情報を確認できます。
F5 Advanced WAFは、OWASP Top 10への防御にとどまらない高度な保護機能を提供し、従来型アプリ向けのきめ細かな制御を自社で管理、調整したい、セキュリティ重視の組織に最適です。すでにF5 BIG-IPをご利用の場合、業界で最も強力なWAFであるF5 WAFエンジンがネットワーク上に導入されています。BIG-IPでAdvanced WAFのライセンスを取得すると、特にF5 BESTライセンスをご利用の場合、新たな脅威や継続中の脅威に対する緩和策を自動化し、セキュリティの有効性を高めて保護を強化できるほか、機械学習と行動分析を活用した、操作不要のアプリ保護が可能になります。
アジャイルDevOpsチーム向けに構築され、最新のインフラストラクチャやKubernetes環境を保護する自己管理型WAFソリューションをお探しなら、NGINX App Protect WAFがニーズに最適です。詳しくは、ブログ「NGINXによるlog4j脆弱性の緩和」をご覧ください。
Advanced WAFやNGINX App Protect WAFと同等の保護を求めながら、エクスプロイトを直ちに緩和するために運用の手間がかからないアプローチが必要、または望ましい場合は、F5のクラウドベースのマネージドサービスであるSilverline WAFが最適かもしれません。Silverline WAFは、F5のSOCに所属するセキュリティエキスパートの支援のもと、ハイブリッドクラウドまたはマルチクラウド環境のアプリケーションを保護する包括的なソリューションを提供する、F5の最上位のフルマネージドWAFサービスです。F5 Silverline SOCチームは必要な緩和策を実装済みで、脅威を継続的に監視し、Log4jなどの脆弱性に対して必要な緩和策と保護対策を適用しています。
F5のVolterra WAFプラットフォームにも、Log4jの脆弱性に関連するリスクをさらに軽減するため、更新されたシグネチャが適用されました。これらのシグネチャは現在、デフォルトのWAFポリシーに含まれているため、Volterra WAFをご利用のお客さまがLog4Shell攻撃を軽減するために追加の対応を行う必要はありません。SaaSベースで導入できるクラウドネイティブWAFをお探しのユーザーには、Volterra WAFが最適です。
F5のWAF製品およびサービスであるF5 Advanced WAF、NGINX App Protect WAF、F5 Silverline WAF、Volterra WAFは、アプリケーションを適切に保護し、アプリケーション層の脅威から防御するため、必要な場所で組み合わせて利用、導入できます。
さらに、高度な攻撃キャンペーンは、個々の攻撃だけでは検知が困難です。F5 Threat Campaignsは、F5 Advanced WAFやNGINX App Protect WAFで利用でき、進行中の攻撃キャンペーンを正確に検知してプロアクティブにブロックすることで、高度な攻撃からアプリケーションとITインフラストラクチャを保護します。F5 WAFは単独でも不可欠なセキュリティ制御ポイントとして機能しますが、脅威インテリジェンスを活用すれば、個々の攻撃インシデントを、より大規模で高度なキャンペーンに関連付けることができます。これにより、基本的なWAFセキュリティポリシーを回避する可能性のある標的型攻撃への防御が可能になります。Threat Campaignsは、Advanced WAFおよびNGINX App Protect WAFのデプロイメントに簡単に追加でき、脅威の検知とブロックを自動化できます。
侵害に備えてLog4Shell攻撃への防御を確立
Log4jを使用しているライブラリの多さを考えると、この脆弱性が組織に及ぼす影響の全容を直ちに把握するのは難しい場合があります。残念ながら、その間にこの脆弱性を悪用される可能性があります。
たとえば、攻撃者は不正なエンドポイントにリクエストを送信し、マルウェアを取得して展開するよう細工する可能性があります。また、サーバーにリクエストを送信し、侵害されたサーバーに通常の動作に反する攻撃者のコマンドを実行させることで、組織を侵害する可能性もあります。
攻撃者がすでに脆弱性を悪用していたとしても、まだ対処する手段はあります。幸い、攻撃者がLog4Shellを悪用してリモートコードを実行した後でも、サーバーからの送信トラフィックを検査することで、エクスプロイトがネットワーク内に拡散するのを阻止できます。
ネットワークのエッジに、暗号化されたトラフィックパケットを復号して検査できるソリューションがあるとします。この場合、Log4jの脆弱性によって拡散するマルウェアや悪意のあるトラフィックを検出し、さらなる被害が生じる前にブロックできます。たとえば、追加の攻撃を仕掛けたり、データを外部に持ち出したりするために、コマンド&コントロールサーバーへ接続しようとする通信が該当します。通常、サーバーはインターネットに接続されているため、サーバートラフィックはTLSを介して環境内を通過します。したがって、すでに侵害され、脆弱な状態にある環境で被害を封じ込め、拡大を阻止するには、暗号化されたサーバートラフィックの検査が不可欠です。
Using a product like F5 SSL Orchestratorのような製品を使用すると、暗号化トラフィックを可視化し、復号したアウトバウンドトラフィックの分析を支援することで、暗号化された脅威を阻止できます。SSL Orchestratorは、サーバートラフィックを含め、ネットワークを通過するトラフィックを復号し、サードパーティの検査サービス(NGFW、WAF、SWG、IPS、DLPなど)に送信します。これらのサービスはトラフィックを許可、ブロック、またはバイパスできるため、侵入時に暗号化されたマルウェアがネットワーク全体に拡散することを防ぎ、C2(コマンド&コントロール)サーバー宛ての悪意のあるトラフィックや窃取されたデータが環境外へ流出することを防止できます。SSL Orchestratorは、SSL/TLSインフラストラクチャを強化し、セキュリティソリューションにSSL/TLS暗号化トラフィックの可視性を提供するとともに、既存のセキュリティ投資を最適化して最大限に活用し、連鎖的な攻撃からネットワークを保護できるように設計された専用製品です。
まとめ
Log4jは、深刻かつ広範囲に影響を及ぼす脆弱性として最初のものではなく、最後でもありません。公開時点でも続いているLog4jの悪用から今すぐ自らを守ることは重要ですが、今後必ず発生する次の重大な脆弱性から資産を保護するために、アプリケーションとネットワークのセキュリティを強化することも同様に不可欠です。
次の重大な脆弱性に備えるには、以下の4つの手順に従います。脆弱性が公表される前にWAFを導入し、Log4Shellなどの既知の攻撃ベクトルからアプリを保護しておくことが理想的です。また、同じく脆弱性が公表される前に、ネットワークを保護するソリューションを導入しておくことも理想的です。これにより、パッチ適用中に攻撃を受け、攻撃者にネットワークへの侵入を許した場合でも、エクスプロイトを利用したサーバーの制御やデータの持ち出しを防止できます。脆弱性が公表された後は、次に影響範囲を特定します。(F5の無料の脅威評価が役立ちます。)その後は、パッチを徹底的に適用してください。この4つの対策を講じておけば、次の脆弱性が発生した際にも対応できるようになります。
F5は、攻撃者による脆弱性の悪用を防ぎ、悪用された場合でも環境をさらなる損害や侵害から保護する包括的な緩和計画の策定を支援します。
Log4jの脆弱性やその他の類似する脆弱性の緩和についてご不明な点がございましたら、F5の営業担当チームまたはsales@f5.comまでお問い合わせください。Log4jに対するF5の対応に関する最新情報は、F5のブログをご覧ください。新しい情報が入り次第、随時更新しています。
現在攻撃を受けており、緊急の支援が必要な場合は、F5のSecurity Operations Center(SOC)まで、(866) 329-4253または+1 (206) 272-7969にお電話ください。各国の電話番号については、https://www.f5.com/attackをご覧ください。既存のBIG-IPのお客さまは、Security Incident Response Teamにお問い合わせいただけます。
著者について
関連するブログ記事

F5 Application Study Tool:OpenTelemetryによるF5 BIG-IP環境の監視
F5の新しいオープンソースツールは、BIG-IP環境を詳細に可視化し、データを追跡するとともに、強力でカスタマイズ可能なインサイトを得るための基盤を提供します。
F5 BIG-IPでAI防御を実現
F5 BIG-IP Advanced WAF、BIG-IP APM、BIG-IP SSL Orchestratorが、生成AIアプリ向けに包括的なセキュリティソリューションを提供する仕組みをご覧ください。
F5 Advanced WAFによるGraphQL APIの保護
ここ数年、多くの組織がデジタルトランスフォーメーションを進めており、COVID-19のパンデミックによってその動きは加速しています。
アプリケーションサービスの現状 通信業界版:リーダーとしての台頭
通信ネットワークが進化し、さまざまな業界の幅広いユースケースに対応するなか、通信業界の回答者がテクノロジーリーダーとしての存在感を高めていることがわかります。
デジタルトランスフォーメーションは、単なるペーパーレス化ではない
デジタルトランスフォーメーションは、単なるペーパーレス化ではありません。真のモダナイゼーションにアプリケーションアーキテクチャとセキュリティの再構築が必要な理由を、F5ブログでご覧ください。
やめましょう。もう本当にやめましょう。HTTPSはHTTPより高速ではありません。
もうやめましょう。HTTPSはHTTPより高速ではありません。プロトコルのパフォーマンスに関する微妙な違いと、暗号化トラフィックを適切に最適化する方法については、F5ブログをご覧ください。