Argo CD の脆弱性 CVE-2024-28175 (CVSS 9.0) が FIX:悪意のスクリプトが注入される?

Argo CD Users Beware: CVE-2024-28175 (CVSS 9.0) – Critical XSS Vulnerability Exposed

2024/03/13 SecurityOnline — Kubernetes の Continuous Delivery ツールとして広く利用されている Argo CD に、深刻なクロス・サイト・スクリプティング (XSS) の脆弱性 CVE-2024-28175 (CVSS:9.0) が発見された。パッチを適用せずに放置すると、この脆弱性の悪用に成功した攻撃者が、Argo CD のインターフェースに悪意のスクリプトを注入し、Kubernetes のデプロイメントを制御することで、壊滅的な結果がもたらされるという可能性が生じる。

リスク

この XSS 脆弱性 CVE-2024-28175 の悪用に成功した攻撃者は、以下のことを可能にする:

  • ユーザー・セッションの乗っ取り:侵害したユーザーの権限でコードを実行 (潜在的には完全な管理者権限まで) 。
  • デプロイの変更: Kubernetes リソースの作成/変更/削除。
  • 機密データの窃取: デプロイメント内の機密情報への不正アクセス。
  • さらなる攻撃の開始: 侵害したシステムを次の攻撃の足場として悪用。
エクスプロイト

この脆弱性は、link.argocd.argoproj.io アノテーションを使用して定義されたリンクを、Argo CD が処理する方法に起因する。不適切なフィルタリングにより、攻撃者が悪意の javascript リンクをアプリケーションの要約に注入するドアが開かれる。そのようなリンクをクリックした無防備なユーザーは、知らず知らずのうちに、攻撃者のスクリプトを起動することになる。

この脆弱性を発見し報告してくれた、RyotaK (@Ry0taK)に感謝する。

影響を受けるユーザ

以下のように、従来からのバージョンを実行している全ての Argo CD ユーザーは、脆弱性 CVE-2024-28175 の影響を受ける:

  • v2.10.3
  • v2.9.8
  • v2.8.12
早急な対策が必要

Argo CD の開発者は、すでにパッチをリリースしている。Argo CD に依存している組織は、以下を優先する必要がある:

直ちに更新する: 可能な限り早急に適切なパッチを適用する。

権限を見直す: 早急なアップデートが不可能な場合には、Kubernetes リソース・マニフェストの編集権限を持つ人を制限し、攻撃対象領域を最小化する。

重要な注意:確実な回避策は存在しない。したがって、アップグレードが不可能な場合の最も安全な代替案は、”link.argocd.argoproj.io” で始まるアノテーションを持つリソースを拒否することになる。また、値が不適切な URL プロトコルを使用している場合には、対象リソースを拒否する Kubernetes Admission Controller を作成するという対策も有効である。この検証は、ArgoCD により管理される、全てのクラスタに適用する必要がある。