概要
Djangoプロジェクトは2026年8月4日、Django 6.0.8および5.2.17をセキュリティリリースとして公開した。今回のリリースでは、リモートコード実行(RCE)につながり得る高深刻度の脆弱性を含む合計4件のCVEが修正されている。影響を受けるのはDjango 6.0系、5.2系、および開発版であり、管理者にはできるだけ速やかなアップグレードが推奨されている。
技術的な詳細
最も深刻度の高い脆弱性はCVE-2026-15307で、空間ルックアップ機能がstr型やdict型の値をGDALRasterにそのまま渡してしまう問題だった。使用するラスタドライバーによっては、ディスクへのファイル書き込みやリモートコード実行、任意のネットワークリクエストの発行につながる可能性があった。この問題は、管理画面で空間フィールドを含むモデルにアクセスできるスタッフユーザーが悪用しうるものであり、修正版ではdict型の値やGEOSGeometry型でない文字列値が拒否されるようになった。
中程度の深刻度としては、深くネストされたGEOMETRYCOLLECTIONオブジェクトがGEOSのセグメンテーション障害を引き起こしうるDoS脆弱性(CVE-2026-15830)と、管理画面がURLFieldの値を検証せずクリック可能なリンクとしてレンダリングしていたクロスサイトスクリプティング脆弱性(CVE-2026-15920)が修正された。前者はWKT形式のジオメトリに最大198レベルの深さ制限を設け、新たにmax_geom_collections引数でカスタマイズできるようにした。後者はURLValidatorによる検証を経てからリンク表示を行い、検証に失敗した場合は平文で表示する仕様に変更された。
このほか、低深刻度の脆弱性としてCVE-2026-15337が修正されている。これは極めて長い言語コードを複数指定することでメモリ消費を引き起こすDoS攻撃の可能性があるというもので、500文字を超える言語コードを拒否することで対処された。
今後の対応
Djangoプロジェクトはすべてのユーザーに対し、可能な限り速やかに6.0.8または5.2.17へアップグレードするよう呼びかけている。特にCVE-2026-15307は高深刻度でRCEにつながる可能性があるため、管理画面で空間フィールドを扱っているサイトは優先的な対応が求められる。