Fortinet FortiClient の SQLi 脆弱性 CVE-2026-21643 が FIX:機密データベースへの不正アクセス

Critical FortiClient SQL Injection Vulnerability Enables Arbitrary Database Access

2026/03/18 CyberSecurityNews — Fortinet の FortiClient Endpoint Management Server (EMS) において、深刻な SQL インジェクションの脆弱性 CVE-2026-21643 (CVSS:9.1) が発見された。この脆弱性を悪用する未認証の攻撃者は、任意の SQL コマンドを実行し、機密データベース情報へアクセスできる。なお、この脆弱性が影響を及ぼす範囲は、マルチテナント・モードが有効化された FortiClient EMS バージョン 7.4.4 である。

この脆弱性の原因は、バージョン 7.4.4 におけるミドルウェアの大規模リファクタリングにある。その際に、データベース接続およびテナント・ルーティングの処理方法に変更が加えられた。この更新により、データベース接続処理において、HTTP の Site ヘッダが PostgreSQL の search_path クエリへ直接受け渡されるという欠陥が紛れ込んだ。

このアプリケーションのミドルウェアは、ヘッダに対する検証/サニタイズを行わないため、攻撃者はフォーマット文字列を回避し、任意の SQL クエリを実行できる。さらに、この脆弱なミドルウェアが認証処理前に実行されるため、攻撃において認証情報は不要となる。つまり、攻撃者は、HTTPS 経由で細工されたリクエストを送信するだけでよい。

FortiClient SQL インジェクション脆弱性の詳細

Bishop Fox の研究者が特定したのは、公開されている “/api/v1/init_consts” エンドポイントが最も実用的な攻撃経路になることだ。攻撃者は、このエンドポイントを突くことで、マルチテナント・フラグの有効状態を確認できる。そして、有効化されている場合には、Site ヘッダを介して SQL ペイロードの注入が可能になる。

このエンドポイントには、レート制限やブルートフォース防止機構が存在しない。さらに、PostgreSQL のエラーメッセージを HTTP レスポンスとして、そのまま返す設計となっている。この設計を悪用する攻撃者は、エラーベースの手法で単一リクエストから高速にデータ抽出を実行できる。つまり、時間を要するインジェクションを用いる必要はない。

攻撃に成功した攻撃者により、管理データベースは完全に侵害される。Fortinet 仮想マシン上のデータベース・ユーザーは、PostgreSQL のスーパー・ユーザー権限を用いるため、基盤 OS 上でのリモートコード実行が可能になる。それに加えて、攻撃者が可能にする悪意のアクションには、管理者パスワードの窃取/デジタル証明書の抽出/管理対象デバイスの完全なインベントリ閲覧などがある。

この権限を悪用する攻撃者は、セキュリティ・ポリシーを改変し、組織全体のエンドポイントへ悪意あるコンフィグを配布できる。このような手法は、ネットワーク・エッジおよび管理のアプライアンスを標的とする、近年の攻撃トレンドと一致する。

侵害指標 (IOC)

以下は侵害の兆候である。

  • “/api/v1/auth/signin” または “/api/v1/init_consts” における、異常に長いレスポンス・タイム (5〜20秒以上) (Apache アクセスログ)。
  • “/api/v1/init_consts” に対する、単一 IP からの HTTP 500 レスポンスの繰り返し。
  • PostgreSQL ログの search_path クエリ内における、シングルクォート/セミコロン/SELECT などの SQL キーワード。
対策

すでに Fortinet は、バージョン 7.4.5 をリリースし、この問題に対処している。この修正では、フォーマット文字列処理を廃止し、パラメータ化された識別子処理と安全な入力エスケープが導入されている。

FortiClient EMS 7.4.4 を使用している組織にとって必要なことは、バージョン 7.4.5 へと速やかにアップグレードすることだ。

迅速なパッチ適用が困難なユーザーに対して Bishop Fox が推奨するのは、マルチテナントの Sites 機能を無効化することだ。これにより脆弱性のあるコードパス実行を防止できる。さらに、EMS 管理インターフェイスへの Web アクセスを、信頼された内部ネットワークのみに制限する必要がある。