Exploit released for critical Fortinet RCE flaw, patch now

セキュリティ研究者は、フォーティネットの FortiNAC ネットワーク アクセス コントロール スイートの重大な脆弱性 (CVE-2022-39952) に対する概念実証エクスプロイトをリリースしました。

Fortinet は2 月 16 日にセキュリティの問題を公開し、重大度スコアを 9.8 と計算しました。ベンダーは、認証されていない攻撃者がシステムに任意のファイルを書き込み、最高の権限でリモート コードを実行するために悪用される可能性があると警告しました。

FortiNAC 9.4.0、9.2.0 ~ 9.2.5、9.1.0 ~ 9.1.7、および 8.8、8.7、8.6、8.5、および 8.3 ブランチのすべてのバージョンを使用している組織は、利用可能なセキュリティ更新プログラムを優先的に適用するよう求められました。

本日、サイバーセキュリティ企業 Horizon3 の研究者が、脆弱性とその悪用方法について詳述した技術記事を公開しました。概念実証 (PoC) エクスプロイト コードは、GitHubの同社のリポジトリからも入手できます。

FortiNAC への攻撃

リリースされた PoC には、/etc/cron.d/ への cron ジョブの書き込みが含まれています。このジョブは毎分トリガーされ、攻撃者に対してルート リバース シェルを開始し、リモート コード実行機能を提供します。

アナリストは、CVE-2022-39952 の修正により、「key」パラメーターの要求を解析し、構成ファイルに書き込み、bash スクリプト「configApplianceXml」を実行するエンドポイントである「keyUpload.jsp」が削除されたことを発見しました。

脆弱なバージョンとパッチが適用されたバージョンの比較
脆弱なバージョンとパッチが適用されたバージョンの比較(Horizon3)

bash スクリプトは、新しく書き込まれたファイルに対して「unzip」コマンドを実行しますが、その直前に、スクリプトは「cd /.」を呼び出します。

実行されたbashスクリプト
実行された bash スクリプト(Horizon3)

「解凍すると、ファイルが現在の作業ディレクトリの上を通過しない限り、任意のパスにファイルを配置できます」とHorizon3 は説明します

「作業ディレクトリは / であるため、bash スクリプト内で unzip を呼び出すと、任意のファイルを書き込むことができます」と研究者は付け加えました。

したがって、攻撃者はペイロードを含む ZIP アーカイブを作成し、抽出する必要がある場所を指定してから、key パラメータを使用して脆弱なエンドポイントに送信できます。 Horizon3 によると、リバース シェルは 1 分以内に準備できるはずです。

「key」パラメータにより、悪意のあるリクエストが「keyUpload.jsp」に到達することが保証されます。これは、フォーティネットが修正済みバージョンの FortiNAC で削除した認証されていないエンドポイントです。

Horizon の概念実証エクスプロイト
PoC エクスプロイトの実行(Horizon3)

Horizon3 のコードはこのプロセスを自動化しており、脅威アクターによって取得されて改ざんされ、武器化されたエクスプロイトになる可能性があります。また、防御側が企業ネットワークでの悪用の試みに対する適切な保護を構築するのにも役立ちます。

FortiNAC 管理者は、CVE-2022-39952 の脆弱性の影響を受けないバージョンの製品、特に FortiNAC 9.4.1 以降、9.2.6 以降、9.1.8 以降、および 7.2 に直ちにアップグレードすることを強くお勧めします。 .0 以降。