Açık Yönlendirme (ARCH5122)
Anahtar go.security.open-redirect · Önem warning · Kategori security · CWE CWE-601
Hedefi kullanıcı kontrolünde olan bir yönlendirme, saldırganın kullanıcıları güvenilir alan adı üzerinden kötü amaçlı bir siteye yönlendirmesine ve kimlik avı yapmasına olanak tanır.
Hatalı
Bölüm başlığı “Hatalı”func redirect(w http.ResponseWriter, r *http.Request) { target := r.URL.Query().Get("next") http.Redirect(w, r, target, http.StatusFound)}func redirect(w http.ResponseWriter, r *http.Request) { target := r.URL.Query().Get("next") if !strings.HasPrefix(target, "/") || strings.HasPrefix(target, "//") { target = "/" } http.Redirect(w, r, target, http.StatusFound)}Düzeltme
Bölüm başlığı “Düzeltme”Yönlendirme hedeflerini bir izin listesiyle doğrulayın veya yalnızca site içi göreli yollara izin verin.