Podatność typu XSS w pakiecie gofiber/template umożliwia wykonanie złośliwych skryptów w przeglądarce użytkownika, gdy aplikacja renderuje dane dostarczone przez użytkownika bez odpowiedniego escapowania. Problem dotyczy aplikacji webowych korzystających z silnika szablonów Django w ramach frameworka Fiber.
▸ Pokaż oryginał (EN)
This package provides universal methods to use multiple template engines with the Fiber web framework using the Views interface. This vulnerability specifically impacts web applications that render user-supplied data through this template engine, potentially leading to the execution of malicious scripts in users' browsers when visiting affected web pages. The vulnerability has been addressed, the template engine now defaults to having autoescape set to `true`, effectively mitigating the risk of XSS attacks.
Podatność wynika z braku domyślnego włączenia mechanizmu autoescape w silniku szablonów Django integrowanym z frameworkiem Fiber (pakiet gofiber/template). Gdy aplikacja przekazuje do szablonu dane wejściowe pochodzące od użytkownika, są one renderowane bez sanityzacji, co pozwala na osadzenie i wykonanie arbitralnego kodu JavaScript w kontekście przeglądarki ofiary. Poprawka polega na ustawieniu opcji autoescape na wartość true jako domyślnej konfiguracji silnika szablonów.
Atakujący może wykonać złośliwy kod JavaScript w przeglądarce innego użytkownika odwiedzającego podatną stronę, co może prowadzić do kradzieży sesji, danych uwierzytelniających lub przeprowadzenia dalszych ataków na użytkowników aplikacji.
Należy zaktualizować pakiet gofiber/template do wersji zawierającej commit 28cff3ac4d4c117ab25b5396954676d624b6cb46, w którym domyślnie włączono autoescape. Dodatkowo zaleca się audyt kodu aplikacji pod kątem renderowania niezaufanych danych wejściowych w szablonach.
Aplikacje webowe korzystające z pakietu gofiber/template (silnik szablonów Django dla frameworka Fiber), które renderują dane dostarczone przez użytkownika — wersje wskazane w referencjach producenta
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:NGofiber Django
APPGofiber< 3.1.9
Powiązane podatności
Przewidywalne UUID w Fiber v2 — podatność na generowanie słabych identyfikatorów
Gofiber Utils: przewidywalne UUID przy awarii generatora losowości
Session Fixation w middleware sesji GoFiber Fiber (wersje < 2.52.5)
Gofiber Fiber: Niebezpieczna konfiguracja CORS middleware (wildcard + credentials)
Fiber is an express inspired web framework written in Go. A Cross-Site Request Forgery (CSRF) vulnerability ha...