概要
Craft CMSにおいて、DNSリバインディング攻撃を悪用することで、SSRF(Server-Side Request Forgery)保護をバイパスできる脆弱性(CVE-2026-27127)が報告されました。
この脆弱性は、SSRF検証時のDNS解決と実際のHTTPリクエストのタイミングのずれ(Time-of-Check-Time-of-Use: TOCTOU)を利用するものです。攻撃者は、DNSサーバーが検証時と実際のアクセス時で異なるIPアドレスを返すように操作することで、ブロックされている内部IPアドレスへのアクセスを可能にする可能性があるとされています。
これは、以前のセキュリティ修正(CVE-2025-68437)をバイパスするものであり、IPv6エンドポイントだけでなく、すべてのブロックされたIPアドレスへのアクセスを許してしまう可能性があると報告されています。
影響範囲
Craft CMSの以下のバージョンが影響を受けます。
- バージョン 4.5.0-RC1 から 4.16.18
- バージョン 5.0.0-RC1 から 5.8.22
修正済みバージョンは以下の通りです。
- バージョン 4.16.19
- バージョン 5.8.23
想定される影響
本脆弱性が悪用された場合、攻撃者はCraft CMSが稼働するサーバーから、通常はアクセスが制限されている内部ネットワーク上のリソース(クラウドメタデータサービス、内部API、データベースなど)にアクセスできる可能性があります。
これにより、機密情報の漏洩や、さらなる内部システムへの攻撃の足がかりとなるリスクが考えられます。
攻撃成立条件・悪用状況
本脆弱性の悪用には、GraphQLスキーマにおいて、特定のアセットボリュームにおけるアセットの編集権限、および特定のアセットボリュームにおけるアセットの作成権限が必要です。
これらの権限は、適切なGraphQLスキーマアクセスを持つ認証済みユーザー、または書き込み権限が誤って設定されたPublic Schemaに付与されている可能性があります。
現在のところ、本脆弱性の悪用状況に関する具体的な報告は確認されていません。
推奨対策
今すぐできる対策(最優先)
- Craft CMSのアップデート: 影響を受けるバージョンを使用している場合は、速やかに以下の修正済みバージョンへアップデートしてください。
- バージョン 4.16.19
- バージョン 5.8.23
中長期的な対策
- 権限の見直し: GraphQLスキーマの権限設定を確認し、アセットの編集・作成権限が不必要に広範囲のユーザーやPublic Schemaに付与されていないか見直してください。最小権限の原則に基づき、必要なユーザーにのみ権限を付与するようにしてください。
- ネットワーク分離の強化: サーバーが稼働する環境において、内部ネットワークへのアクセス制御を強化し、多層防御の観点からSSRF攻撃に対する耐性を高めることを検討してください。
一時的な緩和策
現時点では、本脆弱性に対する直接的な一時緩和策は報告されていません。最も効果的な対策は、速やかなアップデートです。
GraphQLの利用状況に応じて、アセット関連のGraphQLミューテーションへのアクセスを一時的に制限することも考えられますが、これはサービスの機能に影響を与える可能性があります。
確認方法
ご自身のCraft CMSのバージョンを確認し、影響を受けるバージョンに該当しないか確認してください。
Craft CMSの管理画面や、プロジェクトのcomposer.jsonファイルなどでバージョン情報を確認できる場合があります。
参考情報
詳細については、以下のリンクを参照してください。