Atak Directory/Path Traversal

Dla bezpieczeństwa serwisów WWW zasadnicze znaczenie ma prawidłowa kontrola dostępu do treści oraz walidacja wprowadzanych danych.

Podobnie jak ma to miejsce przy atakach SQL Injection  oraz Cross-Site Scripting, tak i w przypadku ataku Directory/Path Traversal, brak lub niepoprawna implementacja powyższych zasad może prowadzić do nieodwracalnych skutków.

Podatność Directory/Path Traversal umożliwia osobie atakującej na dostęp do plików, katalogów jak i poleceń, które znajdują się poza głównym katalogiem dokumentów serwera WWW. Dzięki odpowiedniej manipulacji adresem URL możliwe jest spowodowanie, że strona lub serwer wykonają lub ujawnią zawartość plików znajdujących się w dowolnym miejscu na serwerze WWW. Nawet jeśli serwer właściwie ogranicza możliwość przeprowadzenia ataku, tak sama aplikacja internetowa może być nadal zagrożona z powodu niewłaściwego obchodzenia się z danymi wprowadzanymi przez użytkownika.

Technika ta często występuje w aplikacjach korzystających z funkcjonalności szablonów lub wczytywania informacji z lokalnych plików statycznych. Dodatkowo podczas ataku wykorzystywane są takie znaki specjalne, jak “.” (kropka) lub znaki białe w postaci zakodowanej, np. (null byte). Poniżej został przedstawiony atak skierowany na serwer WWW:

http://przykladowastronatestowa.pl/../../../etc/passwd

W przypadku niepoprawnej obsłudze ścieżek, serwer może niepoprawnie zinterpretować powyższe wywołanie. Dwie kropki “..” w wielu systemach wskazują na przejście o katalog wyżej w ich strukturze. W wyniku tej operacji serwer może przejść do katalogu głównego (root), a następnie ze znajdującego się tam katalogu /etc/ wczytać plik passwd który zawiera listę użytkowników.

Strony WWW, gdzie są wczytywane lokalne pliki również są potencjalnie zagrożone.
Na poniższym przykładzie możemy zobaczyć prawidłowe wywołanie takiej strony, a następnie  próbę przeprowadzenia ataku Directory/Path Traversal”:

http://przykladowastronatestowa.pl/strona.php?inc=kontakt.html
http://przykladowastronatestowa.pl/strona.php?inc=../../../etc/passwd

W wielu przypadkach twórcy stron stosowali również "zabezpieczenie" polegające na doklejaniu np. rozszerzenia pliku do przekazywanego w adresie parametru. Takie jedna działanie z powodzeniem może również obejść stosująćc na końcu wprowadzonego parametru znak specjalny null bytew postaci zakodowanej:

http://przykladowastronatestowa.pl/strona.php?inc=../../../etc/passwd

Wstępną weryfikacją swojej strony pod kątem podatności na ataki Directory/Path Traversal można zupełnie za darmo wykonać za pomocą naszej strony pod adresem https://greywizard.com/zbadaj-bezpieczenstwo

W przypadku wątpliwości możliwe jest również skorzystanie z oferowanych przez Grey Wizard testów penetracyjnych

Brak komentarzy :

Prześlij komentarz