CVE-2026-59730
NiskieCVSS 2.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 29 - wyżej niż 29% wszystkich znanych CVE
Streszczenie
W Astro w wersjach od 8.1.0 do 11.0.1, gdy opcja trailingSlash: 'always' jest skonfigurowana, serwer standalone @astrojs/node dodaje końcowy ukośnik do ścieżek żądań i wysyła przekierowanie 301. Ścieżki zaczynające się od /\ (ukośnik-odwrotny ukośnik) nie są rozpoznawane jako wewnętrzne, więc serwer odsyła surową ścieżkę w nagłówku Location. Ponieważ przeglądarki traktują \ jako / zgodnie ze specyfikacją WHATWG URL, wynikowe przekierowanie może prowadzić do zewnętrznego hosta.
Ocena ryzyka
Atakujący może wykorzystać tę lukę do przekierowania użytkowników na złośliwe strony, co może prowadzić do kradzieży danych lub infekcji złośliwym oprogramowaniem.
Rekomendacja
Należy zaktualizować Astro do wersji 11.0.2 lub nowszej, która zawiera poprawkę usuwającą tę lukę.
Oryginalny opis (angielski, źródło NVD)
Astro is a web framework for content-driven websites. In versions 8.1.0 through 11.0.1, when trailingSlash: 'always' is configured, the @astrojs/node standalone server's static file handler appends a trailing slash to request paths and issues a 301 redirect. Paths beginning with /\ (slash-backslash) were not recognized as internal paths, so the handler would echo the raw path back in the Location header. Because browsers treat \ as / per the WHATWG URL specification, the resulting redirect could resolve to an external host. Preconditions for exploitation: trailingSlash: 'always' must be set (non-default; the default is 'ignore'), the request path must not have a file extension in its final segment, and an attacker must deliver the crafted link to a user. This issue has been fixed in version 11.0.2.

