コンテンツに移動
脅威インテリジェンス

FortiManager のゼロデイ攻撃の調査(Investigating FortiManager Zero-Day Exploitation (CVE-2024-47575) | Google Cloud BlogCVE-2024-47575)

2024年12月1日
Mandiant

※この投稿は米国時間 2024 年 10 月 24 日に、Google Cloud blog に投稿されたものの抄訳です。

まとめ

2024 10 月、Mandiant Fortinet と協力して FortiManager アプライアンスの大規模な悪用を調査しました。この調査は、さまざまな業界における侵害された可能性のある 50 台以上の FortiManager デバイスを対象に行われました。脆弱性 CVE-2024-47575 / FG-IR-24-423 により、脅威アクターは、脅威アクターが管理する未承認の FortiManager デバイスを使用して、脆弱な FortiManager デバイスに対し、任意のコードまたはコマンドを実行できるようになります。

Mandiant は、新しい脅威クラスタ(現在 UNC5820 として追跡中)が 2024 6 27 日の時点ですでに FortiManager の脆弱性を悪用しているのを観測しました。UNC5820 は、悪用された FortiManager の管理下にある FortiGate デバイスの構成データをステージングし、外部に持ち出していました。このデータには、管理対象アプライアンスの詳細な構成情報と、ユーザーおよびユーザーの FortiOS256 でハッシュされたパスワードが含まれています。このデータは、UNC5820 FortiManager をさらに侵害し、その管理下にある Fortinet デバイスへのラテラル ムーブメントを行い、最終的には企業環境を標的にするのに利用される可能性があります。

現時点では、Mandiant が分析したデータソースに、脅威アクターが FortiManager の脆弱性を悪用するために使用した特定のリクエストは記録されていませんでした。また、調査の現段階では、UNC5820 が取得した構成データを活用して、ラテラル ムーブメントを行ったり環境をさらに侵害したりしたという証拠はありません。その結果、本記事の公開時点では、攻撃者の動機や所在地を評価するのに十分なデータがありません。調査を通じて追加の情報が得られ次第、Mandiant がこのブログの帰属評価を更新します。

インターネットに公開されている可能性がある FortiManager を保有している組織は、直ちにフォレンジック調査を実施する必要があります。

悪用の詳細

Mandiant が最初に観測した悪用の試みは、2024 6 27 日に発生しました。その日、複数の FortiManager デバイスに対して、デフォルト ポート TCP/541 を経由した、IP アドレス(45[.]32[.]41[.]202)からのインバウンド接続がありました。これとほぼ同時に、ファイル システムは、/tmp/.tm という名前の Gzip 圧縮アーカイブ内にあるさまざまな Fortinet 構成ファイルのステージングを記録しました。このアーカイブには、表 1 に記載されているファイルとフォルダが含まれていました。

 

ファイル名

説明

/var/dm/RCS

管理下にある FortiGate デバイスの構成ファイルを含むフォルダ

/var/dm/RCS/revinfo.db

管理下にある FortiGate デバイスの追加情報を含むデータベース

/var/fds/data/devices.txt

FortiGate のシリアル番号と、それに対応する IP アドレスのリストが含まれています

/var/pm2/global.db

IPS のオブジェクト構成、ポリシー パッケージ、ヘッダーとフッターのセンサー構成を含むグローバル データベース

/var/old_fmversion

現在の FortiManager のバージョン、ビルド、ブランチの情報が含まれています

1: /tmp/.tm の内容

2024 9 23 日、Mandiant は同様の兆候を持つ 2 回目の悪用の試みを観察しました。どちらの悪用イベントでも、アーカイブの作成直後にアウトバウンド ネットワーク トラフィックが発生しました。それぞれの宛先 IP アドレスに送信されるバイト数は、アーカイブのサイズよりもわずかに大きくなります。表 2 にこのアクティビティの詳細を示します。

 

タイムスタンプ

説明

サイズ

2024-06-27 12:44:04

/tmp/.tm(ファイル作成)

不明

2024-06-27 12:44:11

195[.]85[.]114[.]78:443 へのアウトバウンド トラフィック

1,819,425 バイト

2024-09-23 11:31:12

/tmp/.tm(ファイル変更)

1,772,650 バイト

2024-09-23 11:31:19

104[.]238[.]141[.]143:443 へのアウトバウンド トラフィック

1,822,968 バイト

2: 2 回の悪用の試みにおける段階的な構成データとアウトバウンド トラフィックの相関関係

2 回目の悪用が試みられている間に、脅威アクターのデバイスが標的の FortiManager に登録されました。図 1 に、Global Oblects データベース内の未承認の FortiManager と、それが追加されたときのタイムスタンプを示します。

https://storage.googleapis.com/gweb-cloudblog-publish/images/fortinet-zero-day-fig1.max-600x600.png

図 1: Global Objects データベースに追加された脅威アクターのデバイス

脅威アクターが FortiManager の悪用に成功すると、不明な Fortinet デバイスが FortiManager コンソールに表示されました。

https://storage.googleapis.com/gweb-cloudblog-publish/images/fortinet-zero-day-fig2.max-600x600.png

図 2: FortiManager コンソールに一覧表示されている未承認のデバイス

悪用が成功した場合のもう一つの兆候といえば、未承認のデバイスのシリアル番号「FMG-VMTM23017412」とそれに対応する IP アドレス(45[.]32[.]41[.]202)がファイル /fds/data/unreg_devices.txt に追記されることです。図 3 にこのファイルの内容を示します。

FMG-VMTM23017412|45.32.41.202

3: /fds/data/unreg_devices.txt の内容

ファイル /fds/data/subs.dat および /fds/data/subs.dat.tmp には、図 4 に示すように、関連付けられた使い捨てのメールアドレスや会社名など、悪用を示す追加の証拠が記載されています。

SerialNumber=FMG-VMTM23017412|AccountID=
0qsc137p@justdefinition.com|Company=Purity Supreme|UserID=1756868

4: /fds/data/subs.dat の内容

Mandiant FortiManager のメモリイメージを調査して、脅威アクターのアクティビティの追加的なアーティファクトを探し、キーワード「FMG-VMTM23017412」と「45[.]32[.]41[.]202」を含む JSON blob を検出しました。この JSON blob には、「first_tunnel_up」というキーも含まれており、その値として 1726999303 のエポックタイムが格納されていました。このタイムスタンプは 2024-09-22 10:01:43 UTC に変換されます。

https://storage.googleapis.com/gweb-cloudblog-publish/images/fortinet-zero-day-fig5a.max-1100x1100.png

図 5: トンネル確立のアーティファクト

その後の悪意のあるアクティビティの欠如

Mandiant は、/bin にマウントされるデバイスの initramfsRAM ディスク)である rootfs.gz を調査しました。脆弱性が悪用された期間中に作成または変更された悪意のあるファイルは見つかりませんでした。

Google Cloud は、同様のアクティビティが確認された環境を持つ影響を受けた顧客に通知しました。さらに、Google Threat Intelligence は、このアクティビティの検出機能を開発しながら RetroHunt を実行し、Fortinet デバイスの悪用の試みを検出するための支援として、リリース前の検出ルールのアラートを、影響を受けた SecOps 顧客に手動でエスカレーションしました。

https://storage.googleapis.com/gweb-cloudblog-publish/images/fortinet-zero-day-fig6.max-1000x1000.png

図 6: リリース前の検出ルール - Fortinet デバイスに対するゼロデイ攻撃の疑い

Fortinet Mandiant と協力するだけでなく、先を見越して顧客に対して事前に通知を送付することで、公開アドバイザリの発表前に顧客がセキュリティ ポスチャーを強化できるよう早期警告を行いました。

脅威アクターのアクティビティのタイムライン

 

 

タイムスタンプ

イベント

2024-06-27 12:44:04

45[.]32[.]41[.]202 からのインバウンド ネットワーク接続。 ファイル作成: /tmp/.tm

2024-06-27 12:44:07

ポート 443 を経由した 45[.]32[.]41[.]202 へのアウトバウンド ネットワーク接続

2024-06-27 12:44:11

ポート 443 を経由した 195[.]85[.]114[.]78 へのアウトバウンド ネットワーク接続。送信したバイト数は、/tmp/.tm のサイズとほぼ等しい。

2024-09-22 10:01:47

45[.]32[.]41[.]202 からのインバウンド ネットワーク接続

2024-09-22 10:01:50

158[.]247[.]199[.]37:443 および 45[.]32[.]41[.]202:443 へのアウトバウンド ネットワーク接続。158[.]247[.]199[.]37 への接続は拒否されました

2024-09-22 10:02:21

/log/locallog/elog における悪用を示す文字列: msg="Unregistered device localhost add succeeded"(未登録デバイス localhost の追加に成功しました)

2024-09-22 10:02:55

変更されたファイル: /fds/data/unreg_devices.txt内容: “FMG-VMTM23017412|45.32.41.202”

2024-09-22 10:07:36

/log/locallog/elog における悪用を示す文字列: changes="Edited device settings (SN FMG-VMTM23017412)"(デバイス設定を編集しました(シリアル番号: FMG-VMTM23017412))

2024-09-23 11:31:12

45[.]32[.]41[.]202 から宛先ポート 541 へのインバウンド ネットワーク接続 変更されたファイル: /tmp/.tm

2024-09-23 11:31:16

104[.]238[.]141[.]143 へのアウトバウンド ネットワーク接続。送信したバイト数は、/tmp/.tm のサイズとほぼ等しい。

3: アクティビティのタイムライン

緩和戦略 / 回避策

  1. FortiManager 管理者ポータルへのアクセスを、承認済みの内部 IP アドレスのみに制限します。

  2. 許可された FortiGate アドレスのみが FortiManager と通信できるようにします。

  3. 不明な FortiGate デバイスが FortiManager に関連付けられることを拒否します。

7.2.57.0.127.4.3 以降で実行可能(7.6.0 では実用的な回避策ではありません)。

config system global
    set fgfm-deny-unknown enable
end

7: 不明なデバイスを拒否する構成

検出

YARA-L

Google SecOps Enterprise+ をご利用の場合、「Mandiant Intel Emerging Threats」ルールパック(Windows Threats グループ内)にルールがリリースされています。

https://storage.googleapis.com/gweb-cloudblog-publish/images/fortinet-zero-day-fig8.max-700x700.png

関連ルール

  • 疑わしい FortiManager のインバウンド接続およびアウトバウンド接続

  • UNC5820 Fortinet の悪用とファイルのダウンロード

  • UNC5820 Fortinet の悪用と HTTPS 以外のコマンド&コントロール

  • UNC5820 Fortinet の悪用と HTTPS のコマンド&コントロール

その他の SIEM

以下の関連する IOC に対して Fortiguard ログを対象とした検索を作成してください。特に、悪意のある Fortinet デバイス ID がトリガーされた場合には、忠実度の高いアラートを提供する必要があります。

FortiManager ログにおける固有の操作について、ベースラインを確立し、しきい値を設定してください。特に、「デバイスの追加」や「デバイスの変更」の操作は、組織にとってまれである可能性があるため、この脆弱性が修正されるまでの間、実用的なアラートを発信する必要があります。

同様に、FortiManager ログの changes フィールドについても、ベースラインを確立し、しきい値を設定してください。特に、changes フィールドに「Unregistered(未登録)」という単語が含まれる場合、より高い感度のアラートを検討してください。

FortiGate デバイスを毎日列挙し、ログ内で以前に見られなかったデバイス名が確認された場合にはアラートを発してください。

セキュリティ侵害インジケーター(IOC

登録済みユーザーの方は、IOC Google Threat Intelligence コレクションを利用できます。

ネットワーク ベースの IOC

IOC

説明

45.32.41.202

UNC5820

104.238.141.143

UNC5820

158.247.199.37

UNC5820

195.85.114.78

UNC5820

ホストベースの IOC

IOC

説明

.tm

構成ファイルのアーカイブ

9DCFAB171580B52DEAE8703157012674

unreg_devices.txt MD5 ハッシュ

追加のキーワード

キーワード

説明

FMG-VMTM23017412

悪意のある Fortinet デバイス ID

msg="Unregistered device localhost add succeeded"(未登録デバイス localhost の追加に成功しました)

/log/locallog/elog における悪用を示す文字列

changes="Edited device settings (SN FMG-VMTM23017412)"(デバイス設定を編集しました(シリアル番号: FMG-VMTM23017412))

/log/locallog/elog における悪用を示す文字列

changes="Added unregistered device to unregistered table."(未登録デバイスを未登録テーブルに追加しました。)

/log/locallog/elog における悪用を示す文字列

0qsc137p@justdefinition.com

subs.dat および subs.dat.tmp で観察されます。これは脅威アクターによって作成された使い捨てのメールアドレスです。

Purity Supreme

subs.dat および subs.dat.tmp で観察されます

 

 

謝辞

本調査にご協力いただいた Nick Simonian 氏と Ronnie Salomonsen 氏に感謝の意を表します。

ウェブセミナー

このブログ投稿の 2 人の執筆者、Foti Castelan 氏と Max Thauer 氏が、11 6 日のウェブセミナーで追加の詳細情報や緩和戦略を発表する予定です。今すぐ登録して、この脅威の詳細とそれに対する防御方法をご確認ください。

-Mandiant、執筆者: Foti Castelan 氏、Max Thauer 氏、JP Glab 氏、Gabby Roncone 氏、Tufail Ahmed 氏、Jared Wilson 氏

投稿先