30秒で判断
対応すべき人:
- NuclioをKubernetesクラスター上で運用しているチーム
- Nuclioの
cronトリガーを使用している関数がある環境
対応不要な人:
- Nuclioを使用していない
- Cronトリガーを一切使用していない
- 社内ネットワーク限定でNuclioのAPIが外部に公開されていない(かつ信頼できるユーザのみアクセス)
確認コマンド:
# インストール済みNuclioのバージョン確認
kubectl get pods -n nuclio -o jsonpath='{range .items[*]}{.spec.containers[*].image}{"\n"}{end}'
# Cronトリガーが設定された関数の確認
nuctl get function --output json | jq '.[].spec.triggers | to_entries[] | select(.value.kind == "cron")'
概要
Nuclio は Kubernetes ネイティブなオープンソースサーバレスプラットフォームです。関数を定期実行する cron トリガー機能において、トリガーのイベントヘッダーおよびボディが適切にサニタイズされずに Kubernetes CronJob のシェルコマンド文字列に埋め込まれることが判明しました。
攻撃者がNuclioのAPI、UI、または設定ファイルへのアクセス権を持つ場合、細工したトリガーパラメータを通じてCronJobの実行環境上で任意のシェルコマンドを実行できます。CronJobとして定期実行されるため、侵害は**持続的(Persistent)**であり、一度悪用されると定期的に悪意あるコードが実行され続けます。
CVSSベクトル(推定)
| 項目 | 値 |
|---|---|
| Attack Vector | Network |
| Attack Complexity | Low |
| Privileges Required | Low |
| User Interaction | None |
| Scope | Changed |
| Confidentiality | High |
| Integrity | High |
| Availability | High |
| 深刻度 | CRITICAL |
CVSS数値スコアはNVDによる正式評価待ち(GHSAではCRITICALと分類)
影響を受けるソフトウェア
| 製品 | 影響バージョン | 備考 |
|---|---|---|
| github.com/nuclio/nuclio | コミット 3356b86a8bfa より前 | Go モジュール |
修正バージョンと回避策
修正版:
コミット 3356b86a8bfa 以降のバージョンに更新してください。公式リリースタグが付いていない場合はコミットハッシュを指定してインストールします。
go get github.com/nuclio/nuclio@3356b86a8bfa
回避策(アップデートが困難な場合):
- Nuclioの管理UI/APIへのアクセスを信頼できるユーザのみに制限する
- Cronトリガーのイベントヘッダー/ボディに外部からコントロール可能な値を含めない
- Kubernetes RBAC でNuclioリソースへの書き込み権限を最小化する
関連リンク
データソース: GitHub Advisory Database (GHSA)
AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
