Sunucu taraflı istek sahteciliği (ARCH2104)
Anahtar python.security.ssrf · Önem warning · Kategori security · CWE CWE-918
Kullanıcı denetimli bir URL’ye doğrulamadan giden istek yapmak, saldırganın sunucuyu dahili servislere veya bulut metadata uç noktalarına istek atmaya zorlamasına olanak tanır.
Hatalı
Bölüm başlığı “Hatalı”import requestsfrom flask import request
def fetch(): url = request.args["url"] return requests.get(url).textimport requestsfrom urllib.parse import urlparsefrom flask import request
ALLOWED = {"api.example.com"}
def fetch(): url = request.args["url"] if urlparse(url).hostname not in ALLOWED: raise ValueError("host not allowed") return requests.get(url).textDüzeltme
Bölüm başlığı “Düzeltme”Giden istek URL’lerini bir izin listesine göre doğrulayın; özel IP aralıklarını ve metadata uç noktalarını engelleyin.