Dalfox w trybie serwera REST API (dalfox server) domyślnie nasłuchuje na 0.0.0.0:6664 bez wymaganego uwierzytelnienia, co pozwala dowolnemu atakującemu osiągalnemu sieciowo na wykonanie dowolnych poleceń powłoki na hoście. Podatność jest krytyczna, ponieważ nie wymaga żadnych uprawnień ani interakcji użytkownika.
▸ Pokaż oryginał (EN)
Dalfox is a powerful open-source XSS scanner and utility focused on automation. Prior to 2.13.0, when dalfox is started in REST API server mode (dalfox server), the server binds to 0.0.0.0:6664 by default and requires no API key unless the operator explicitly passes --api-key. Because model.Options — including FoundAction and FoundActionShell — is deserialized directly from attacker-supplied JSON in POST /scan, and because dalfox.Initialize explicitly propagates those two fields into the final scan options without stripping them, any unauthenticated caller who can reach the server port can supply an arbitrary shell command that the dalfox process will execute on the host whenever a scan finding is triggered. This vulnerability is fixed in 2.13.0.
Podczas obsługi żądania POST /scan serwer deserializuje dostarczony przez atakującego obiekt JSON bezpośrednio do struktury model.Options, która zawiera pola FoundAction oraz FoundActionShell. Funkcja dalfox.Initialize propaguje te pola do finalnych opcji skanowania bez ich sanityzacji ani usunięcia. W efekcie, gdy skanowanie wykryje jakikolwiek wynik (finding), dalfox wykonuje na hoście polecenie powłoki wskazane przez atakującego. Brak domyślnego mechanizmu uwierzytelniania (--api-key jest opcjonalne) sprawia, że każdy klient sieciowy może wywołać ten mechanizm.
Nieuwierzytelniony atakujący może wykonać dowolne polecenia systemowe na serwerze hostującym dalfox, co prowadzi do pełnego przejęcia kontroli nad hostem, wycieku danych oraz możliwości dalszego lateral movement w sieci.
Należy zaktualizować dalfox do wersji 2.13.0 lub nowszej. Do czasu aktualizacji zaleca się ograniczenie dostępu sieciowego do portu 6664 za pomocą firewall oraz wymuszenie użycia parametru --api-key przy uruchamianiu serwera.
Dalfox w wersji wcześniejszej niż 2.13.0, uruchomiony w trybie serwera REST API (polecenie dalfox server)
Podatność dotyczy wyłącznie instancji dalfox uruchomionych w trybie serwera REST API; standardowe użycie narzędzia z linii poleceń nie jest podatne. Poprawka dostępna w wersji 2.13.0 zgodnie z oficjalnym security advisory GHSA-v25v-m36w-jp4h.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H