About Blog:CVE-2024-4040: CrushFTPの未認証ゼロデイによりサーバーが侵害される可能性

CVE-2024-4040:CrushFTPの未認証ゼロデイによりサーバーが侵害される可能性

最終更新日時:Tue, 23 Apr 2024 21:28:36 GMT

2024年4月19日(金)、マネージドファイル転送ベンダーの CrushFTP が、全プラットフォームの 10.7.1 および 11.1.0 以前のバージョン(および従来の 9.x バージョン)に影響を及ぼす、新たなゼロデイ脆弱性に関する情報を自社の非公開メーリングリストに公開しました。ベンダーからはCVEが割り当てられていませんが、サードパーティのCVE番号付与機関(CNA)が4月22日(月)の時点でCVE-2024-4040を割り当てています。

公開されているベンダーアドバイザリによると、この脆弱性は、表向きはCrushFTP管理ファイル転送ソフトウェアのVFSサンドボックスの回避であり、「低権限を持つリモートの攻撃者がVFSサンドボックス外のファイルシステムからファイルを読み取ることを可能にする」ものとしています。

Rapid7の脆弱性調査チームがCVE-2024-4040を分析した結果、未認証で細かな悪用が可能な脆弱性であると判断しました。悪用に成功すると、rootとして任意のファイルを読み取られるだけでなく、管理者アカウントへのアクセスや完全なリモートコード実行のための認証バイパスも可能になります。また、リモートの未認証攻撃者は、CrushFTPインスタンスに保存されているすべてのファイルにアクセスし、潜在的にファイルを抜き取ることができます。脆弱性をトリガーするコードは公開されています。

この脆弱性は、正式には任意のファイルの読み取りと説明されていますが、Rapid7は、厳密にはサーバサイドテンプレートインジェクション(SSTI)に分類できると考えています。CVE-2024-4040は、ベンダーからユーザーに対する限定的なメール通知や、セキュリティ企業CrowdStrikeによる一般向けRedditへの投稿によりゼロデイ脆弱性の悪用が指摘されています。Webインターフェースの特定のJavaScriptファイルを検索するクエリを使用すると、インターネットに公開されているCrushFTPのインスタンスがおよそ5,200あるようです。

緩和ガイダンス

勧告によると、CrushFTPの11.1以前バージョンにはCVE-2024-4040の脆弱性が存在しています。4月23日現在、以下のバージョンのCrushFTPに脆弱性があるとされています:

  • CrushFTP 9のすべて
  • v10.7.1以前のCrushFTP 10
  • v11.1.0以前のCrushFTP 11

この脆弱性は、11.xは11.1.0 で、10.xは10.7.1 で修正されています。Rapid7の調査チームは、ベンダーが提供するパッチがCVE-2024-4040を効果的に修復することを検証しました。

ベンダーアドバイザリでは、緊急にCrushFTPの修正バージョンにアップデートすることの重要性が強調されています。Rapid7は、このガイダンスに賛同し、特にこの問題の真の影響に関する我々のチームの調査結果を考慮し、一般的なパッチサイクルが発生するのを待たずに、緊急ベースでベンダーが提供するパッチを適用するよう推奨します。

4月22日時点のベンダーガイダンスでは、「メインのCrushFTPインスタンスの前にDMZを使用している顧客は部分的に保護されている」と述べていますが、これが悪用に対する効果的な障壁となるかどうかは不明です。Rapid7は、慎重を期して、DMZに依存しないことを推奨します。

検出の課題

脆弱性分析の過程で、Rapid7はCVE-2024-4040の悪用を効果的に検知することを難しくしているいくつかの要因を観察しました。CVE-2024-4040のペイロードは様々な形で配信される可能性があります。特定の回避テクニックが利用されると、ログやリクエスト履歴からペイロードが削除され、悪意のあるリクエストと正当なトラフィックを見分けることが難しくなります。NGINXやApacheのような標準的なリバースプロキシの背後にあるCrushFTPインスタンスは、これらのテクニックに対して部分的に防御されていますが、私たちのチームは、回避的な戦術がまだ可能であることを発見しました。

CrushFTPをご利用のお客様は、可能な限り制限的な設定でLimited Serverモードを有効にすることにより、管理者レベルのリモートコード実行攻撃に対してサーバーを強化することができます。また可能な限りファイアウォールを使用し、CrushFTPサービスへのアクセスを許可するIPアドレスを積極的に制限してください。

Rapid7のお客様

InsightVMおよびNexposeのお客様は、クエリビルダ(asset.software.product CONTAINS 'CrushFTP')またはフィルタリングされたアセット検索(Software Name contains CrushFTP)を使用して、CrushFTPがインストールされている環境のアセットを見つけることができます。脆弱性チェックは現在開発中で、明日(4月24日水曜日)のコンテンツリリースで利用可能になる見込みです。

InsightIDR およびマネージドディテクション&レスポンス(MDR)をご利用のお客様は、Rapid7 の広範な検出ルールライブラリにより、既存の検出カバレッジを利用できます。Rapid7は、疑わしいプロセスを可視化し、適切な検出範囲を確保するために、該当するすべてのホストにInsight Agentをインストールすることを推奨します。以下は、InsightIDRとRapid7 MDRの両ユーザーに展開され、このゼロデイ脆弱性に関連するエクスプロイト後の動作についてアラートを発する検出の非網羅的なリストです:

  • Suspicious Web Request - Possible CrushFTP (CVE-2024-4040) Exploitation

更新情報

2024年4月23日検出に関する課題のセクションを追加。私たちのチームがベンダー提供のパッチをテストし、CVE-2024-4040を正常に修復することを確認したことを記載しました。InsightIDRおよびRapid7 MDRのお客様向けに、検出ルールの展開とアラートを追加しました。InsightVMおよびNexposeのお客様向けに、環境内のCrushFTPインストールを特定するためのクエリビルダ情報を追加しました。Airbus CERTの概念実証コードへのリンクを追加しました。

 

※本ブログは英語版ブログ "Unauthenticated CrushFTP Zero-Day Enables Complete Server Compromise" の機械翻訳版です。最新情報等につきましては、原文をご参照ください。