CVE-2026-72761
ŚrednieCVSS 6.9Streszczenie
Walidator adresów URL webhooków w `website/notifications/webhooks.py` używa `ip.is_global` do odrzucania adresów niepublicznych po rozwiązywaniu DNS. Adresy przejściowe IPv6 (NAT64 `64:ff9b::/96`, 6to4 `2002::/16`, Teredo `2001:0000::/32`) są klasyfikowane przez IANA jako globalnie rutowalne, więc `is_global` zwraca `True`, nawet gdy osadzony cel IPv4 jest prywatny, pętla zwrotna lub metadane chmury. Atakujący może zarejestrować webhook wskazujący na nazwę hosta, która rozwiązuje się na adres przejściowy, aby ominąć zabezpieczenie SSRF i eksfiltrować dane o podatnościach do wewnętrznego punktu końcowego. Podatność została wprowadzona w wersji niebędącej wydaniem. Poprawka została już naniesiona na HEAD. Dotyczy tylko organizacji uruchamiających HEAD.
Ocena ryzyka
Ryzyko obejścia zabezpieczeń SSRF i eksfiltracji danych do wewnętrznych zasobów, co może prowadzić do ujawnienia wrażliwych informacji o podatnościach.
Rekomendacja
Zaleca się aktualizację do najnowszej wersji HEAD, która zawiera poprawkę, oraz unikanie uruchamiania wersji niebędących wydaniem w środowisku produkcyjnym.
Oryginalny opis (angielski, źródło NVD)
The webhook URL validator in `website/notifications/webhooks.py` uses `ip.is_global` to reject non-public addresses after DNS resolution. IPv6 transition addresses (NAT64 `64:ff9b::/96`, 6to4 `2002::/16`, Teredo `2001:0000::/32`) are classified as globally routable by IANA, so `is_global` returns `True` even when the embedded IPv4 targets a private, loopback, or cloud metadata destination. An attacker can register a webhook pointing at a hostname that resolves to a transition address to bypass the SSRF guard and exfiltrate vulnerability data to an internal endpoint. The vulnerability was introduced on a non-release version. The fix was already done on HEAD. It only affects organisation running the HEAD.

