Podatność path traversal w aplikacji Goshs (SimpleHTTPServer napisany w Go) umożliwia atakującemu zapis pliku poza zamierzonym katalogiem poprzez manipulację ścieżką przy multipart upload. Ze względu na brak wymagania uwierzytelnienia i sieciowy wektor ataku, zagrożenie jest ocenione jako krytyczne (CVSS 9.8).
▸ Pokaż oryginał (EN)
goshs is a SimpleHTTPServer written in Go. Prior to 2.0.0-beta.3, the POST multipart upload directory not sanitized. This vulnerability is fixed in 2.0.0-beta.3.
Podczas obsługi żądania POST z danymi multipart (upload pliku) aplikacja nie sanityzuje ścieżki docelowego katalogu. Atakujący może przesłać specjalnie spreparowane żądanie zawierające sekwencje path traversal (np. '../'), co pozwala zapisać plik w dowolnym miejscu w systemie plików dostępnym dla procesu serwera. Atak nie wymaga uwierzytelnienia ani interakcji użytkownika.
Atakujący może zapisać dowolny plik w nieautoryzowanej lokalizacji systemu plików, co potencjalnie prowadzi do naruszenia poufności i integralności danych, a w skrajnych przypadkach — do wykonania kodu lub przejęcia kontroli nad systemem (np. poprzez nadpisanie plików konfiguracyjnych lub skryptów startowych).
Należy zaktualizować Goshs do wersji 2.0.0-beta.3 lub nowszej, w której podatność została naprawiona. Do czasu aktualizacji zaleca się ograniczenie dostępu sieciowego do instancji Goshs wyłącznie do zaufanych hostów.
Goshs w wersjach wcześniejszych niż 2.0.0-beta.3
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HGoshs
APPGoshs2.0.0< 2.0.0
Powiązane podatności
Pominięcie uwierzytelnienia SFTP w serwerze goshs (auth bypass)
Goshs: wyciek tokenu GITHUB_TOKEN przez artefakty workflow (ArtiPACKED)
Authorization bypass w goshs — ominięcie ACL bez uwierzytelnienia
Path traversal w Goshs — brak return po walidacji ścieżki w deleteFile()
Path traversal w goshs — brak sanityzacji ścieżki przy PUT upload