Açık yönlendirme (ARCH7122)
Anahtar php.security.open-redirect · Önem warning · Kategori security · CWE CWE-601
Yönlendirme hedefini kullanıcı girdisinden doğrulamadan almak, saldırganların güvenilir alan adı üzerinden kullanıcıları kötü amaçlı sitelere yönlendirmesine olanak tanır. Hedef bir izin listesine veya yalnızca site içi yollara kısıtlanmalıdır.
Hatalı
Bölüm başlığı “Hatalı”<?php$next = $_GET['next'];header('Location: ' . $next);exit;<?php$next = $_GET['next'] ?? '/';// Yalnızca site içi göreli yollara izin verif (!preg_match('#^/[a-zA-Z0-9/_-]*$#', $next)) { $next = '/';}header('Location: ' . $next);exit;Düzeltme
Bölüm başlığı “Düzeltme”Yönlendirme hedefini bir izin listesine göre doğrulayın veya yalnızca site içi göreli yollara kısıtlayın.