ProjectSend w wersji r582 zawiera podatność typu path traversal, która umożliwia nieuwierzytelnionemu atakującemu pobieranie dowolnych plików z serwera. Podatność ma ocenę CVSS 9.8, co klasyfikuje ją jako krytyczną.
▸ Pokaż oryginał (EN)
ProjectSend (formerly cFTP) r582 allows directory traversal via file=../ in the process-zip-download.php query string.
Podatność występuje w skrypcie process-zip-download.php, który przyjmuje parametr 'file' w ciągu zapytania (query string). Niewystarczająca walidacja tego parametru pozwala na użycie sekwencji '../' w jego wartości, co umożliwia wyjście poza dozwolony katalog i wskazanie dowolnego pliku w systemie plików serwera. Atakujący może w ten sposób odczytać pliki systemowe lub aplikacyjne, do których normalnie nie powinien mieć dostępu.
Atakujący bez żadnego uwierzytelnienia może odczytywać, pobierać i ujawniać dowolne pliki dostępne dla procesu serwera WWW, w tym pliki konfiguracyjne zawierające dane uwierzytelniające do bazy danych lub innych usług, co może prowadzić do dalszego kompromitowania systemu.
Należy zaktualizować ProjectSend do wersji wydanej po r582, w której wyeliminowano podatność. Należy zastosować patche dostępne u producenta zgodnie z referencjami. Dodatkowo zaleca się ograniczenie dostępu do skryptu process-zip-download.php na poziomie serwera WWW dla nieuwierzytelnionych użytkowników.
ProjectSend (dawniej cFTP) w wersji r582
Podatność została ujawniona przez badaczy projektu 'sandboxescape' w repozytorium GitHub poświęconym wielu podatnościom w ProjectSend.
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HProjectsend
APPProjectsend582
Powiązane podatności
ProjectSend – pominięcie uwierzytelnienia umożliwiające RCE (r<1720)
Path traversal w ProjectSend r1295 — nieautoryzowany dostęp do plików
ProjectSend r582 — Insecure Direct Object Reference w eksporcie logów
ProjectSend r582 — Authentication Bypass poprzez bezpośrednie żądania HTTP
SQL injection w wielu plikach ProjectSend r582