7月7日に公開されたDjango 6.0.7と5.2.16は、3件のCVEに対応したセキュリティリリースだ。6月3日の6.0.6/5.2.15が5件の問題に対応していたのに比べると件数は少なく、いずれもDjango独自の基準で「低」深刻度に分類されている。

3件の中身

キャッシュ関連ミドルウェアが、Cookieヘッダで応答を分岐しつつSet-Cookieを返すレスポンスを、無関係な既存Cookie付きリクエストに対して誤ってキャッシュしてしまう可能性がある問題(CVE-2026-48588)。GIS機能のGDALRasterにバイト列を渡した際、バッファを約32バイト過剰に読み取ってしまう可能性がある問題(CVE-2026-53877)。そしてDomainNameValidatorが改行を含む値を許容してしまい、Djangoフォーム経由以外の用途でヘッダインジェクションにつながりうる問題(CVE-2026-53878)だ。

「低」深刻度の読み方

深刻度が低いというのは「影響がゼロ」という意味ではなく、「悪用の条件が限定的」あるいは「影響範囲が狭い」ことを示すに過ぎない。特にキャッシュ関連の不具合は、条件が揃えば個人情報の混入につながりかねない性質のもので、django.middleware.cacheを使っている、GIS機能を使っている、独自バリデーションでDomainNameValidatorを使っているといった条件に当てはまるプロジェクトは、深刻度表示だけで油断せず自分の構成への該当有無を確認しておきたい。

対応の勧め

件数の少なさに気を緩めず、対象コンポーネントを使っているかどうかをまず棚卸しすることが先決だ。各CVEの技術的な条件や対象バージョンは、Djangoの公式リリース記事(https://www.djangoproject.com/weblog/2026/jul/07/security-releases/)に詳しい。