LightFTP w wersjach do 2.4 włącznie zawiera podatności typu data race w pliku ftpserv.c, które pozwalają anonimowym atakującym wywołać niezdefiniowane zachowanie serwera bez uwierzytelnienia. Luka może skutkować odmową usługi (DoS) poprzez manipulację deskryptorami plików współdzielonymi między wątkami.
▸ Pokaż oryginał (EN)
LightFTP through 2.4 contains multiple data race vulnerabilities in ftpserv.c that allow anonymous attackers to cause undefined behavior by issuing LIST followed by ABOR commands without authentication. The control thread closes data_socket and file_fd descriptors while worker threads concurrently operate on the same fields in worker_thread_cleanup, allowing stale file descriptors to be reassigned by the OS and subsequently used by worker threads on unrelated resources, resulting in potential denial of service.
Atakujący bez uwierzytelnienia wysyła sekwencję poleceń LIST, a następnie ABOR. Wątek kontrolny zamyka deskryptory data_socket oraz file_fd, podczas gdy wątki robocze równocześnie operują na tych samych polach w funkcji worker_thread_cleanup. Zwolnione deskryptory mogą zostać ponownie przydzielone przez system operacyjny do niezwiązanych zasobów, a wątki robocze mogą następnie wykonywać operacje na błędnych obiektach. Skutkuje to wyścigiem danych (data race) prowadzącym do niezdefiniowanego zachowania serwera.
Anonimowy atakujący może doprowadzić do odmowy usługi (DoS), destabilizując działanie serwera FTP poprzez wymuszenie operacji na nieaktualnych lub błędnie przydzielonych deskryptorach plików. Podatność nie prowadzi bezpośrednio do naruszenia poufności ani integralności danych.
Należy zastosować patche dostępne u producenta zgodnie z referencjami. W oczekiwaniu na poprawkę zaleca się ograniczenie dostępu anonimowego do serwera FTP lub zastosowanie kontroli dostępu na poziomie sieci (np. firewall) ograniczającej dostęp do usługi FTP wyłącznie do zaufanych hostów.
LightFTP w wersjach do 2.4 włącznie
Podatność ma przypisane CWE-820 (Missing Lock Check), co potwierdza brak odpowiedniej synchronizacji dostępu do współdzielonych zasobów między wątkami. Problem zgłoszony w repozytorium GitHub projektu LightFTP (issue #75).
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X