Ataki polegające na przechodzeniu przez katalogi, znane również jako ataki przez przechodzenie ścieżki, stanowią poważne ryzyko w dziedzinie bezpieczeństwa sieci. Wykorzystują przede wszystkim lukę w zabezpieczeniach funkcji aplikacji internetowej polegającej na uzyskiwaniu dostępu do plików znajdujących się na serwerze. Ataki te umożliwiają nikczemnemu użytkownikowi dostęp do plików i katalogów przechowywanych poza folderem webroot poprzez manipulowanie zmiennymi odwołującymi się do plików za pomocą sekwencji „kropka-kropka-ukośnik (../)”.
Ewolucja ataków polegających na przechodzeniu katalogów
Początków ataków polegających na przechodzeniu katalogów można doszukiwać się w początkach Internetu, kiedy aplikacje internetowe po raz pierwszy zaczęły wykorzystywać skrypty w celu uzyskania dostępu do plików po stronie serwera. W miarę postępu technologicznego i zwiększania się złożoności aplikacji internetowych wzrastało również ryzyko wystąpienia tego typu luk.
Pierwsza publiczna wzmianka o atakach polegających na przechodzeniu przez katalog jest dość trudna do zidentyfikowania ze względu na fundamentalny charakter tej luki. Jednakże obawy dotyczące bezpieczeństwa stały się bardziej widoczne pod koniec lat 90. i na początku XXI wieku, gdy aplikacje internetowe stały się powszechne i wzrosły możliwości wykorzystania niezabezpieczonych odniesień do plików.
Rozszerzenie ataków z przechodzeniem katalogów
Atak polegający na przechodzeniu katalogu to forma exploita HTTP, podczas którego haker uzyskuje dostęp do katalogu na serwerze, który zazwyczaj nie jest publicznie dostępny. Osoba atakująca wykorzystuje niewystarczającą weryfikację zabezpieczeń lub oczyszczanie nazw plików wejściowych dostarczonych przez użytkownika, umożliwiając w ten sposób wydostanie się z ograniczonego środowiska.
Najbardziej powszechnym zastosowaniem sekwencji przeglądania katalogów są ataki oparte na adresach URL, ale mogą one również pojawiać się podczas wstrzykiwania nagłówka, manipulacji plikami cookie, a nawet w parametrach POST. Dzięki temu atakujący mogą przeglądać zastrzeżone katalogi i wykonywać polecenia poza katalogiem głównym serwera WWW, uzyskując w ten sposób nieautoryzowany dostęp do poufnych informacji.
Jak działają ataki polegające na przechodzeniu katalogów
Atak z przekroczeniem katalogu polega na wykorzystaniu niewystarczającej weryfikacji bezpieczeństwa/oczyszczenia nazw plików wejściowych dostarczonych przez użytkownika, więc osoba atakująca może je zmanipulować, aby wyskoczyć poza zastrzeżoną lokalizację.
W zbyt uproszczonej formie rozważmy scenariusz, w którym aplikacja próbuje uzyskać dostęp do pliku obrazu z serwera:
Arduinohttp://example.com/app?file=logo.jpg
W tym przypadku aplikacja otworzy plik logo.jpg
z katalogu obrazów. Osoba atakująca może jednak użyć sekwencji „kropka-kropka-ukośnik (../)”, aby przejść do katalogu nadrzędnego, a następnie uzyskać dostęp do nieautoryzowanych plików. Na przykład:
grzmotnąćhttp://example.com/app?file=../../etc/passwd
Może to spowodować wyświetlenie przez aplikację wrażliwych plików systemowych.
Kluczowe cechy ataków polegających na przechodzeniu katalogów
-
Manipulowanie zmiennymi: Podstawową cechą ataku polegającego na przechodzeniu katalogów jest manipulowanie zmiennymi, które odwołują się do plików za pomocą sekwencji „kropka-kropka-ukośnik (../)”.
-
Przełamanie ograniczeń: Umożliwia atakującemu wydostanie się z katalogu głównego aplikacji i uzyskanie dostępu do innych części systemu plików.
-
Wykorzystanie słabej walidacji: Ataki polegające na przechodzeniu katalogów wykorzystują słabą weryfikację lub oczyszczanie danych wejściowych użytkownika.
Rodzaje ataków polegających na przechodzeniu katalogów
Chociaż podstawowa zasada ataków polegających na przechodzeniu katalogów pozostaje taka sama, mogą one objawiać się na różne sposoby w zależności od kontekstu i aplikacji:
-
Ataki oparte na adresach URL: Obejmują one wstrzykiwanie złośliwych danych wejściowych do adresu URL w celu przeglądania katalogów.
-
Ataki oparte na formie: Złośliwe dane wejściowe są wstawiane do pól formularzy w celu wykorzystania podatnych na ataki skryptów po stronie serwera.
-
Ataki oparte na plikach cookie: Osoby atakujące manipulują plikami cookie w celu przeglądania katalogów i uzyskiwania dostępu do nieautoryzowanych danych.
Typ | Opis |
---|---|
Ataki oparte na adresach URL | Wstrzyknij złośliwe dane wejściowe do adresu URL, aby przeglądać katalogi. |
Ataki oparte na formularzach | Wstaw złośliwe dane do pól formularzy, aby wykorzystać skrypty po stronie serwera. |
Ataki oparte na plikach cookie | Manipuluj plikami cookie w celu przeglądania katalogów i uzyskiwania dostępu do nieautoryzowanych danych. |
Problemy i rozwiązania związane z atakami polegającymi na przechodzeniu katalogów
Podstawowym problemem związanym z atakami polegającymi na przechodzeniu katalogów jest nieautoryzowany dostęp do wrażliwych plików i danych. Może to prowadzić do wycieku danych, utraty poufności i potencjalnego udostępnienia atakującemu dalszych wektorów ataku (takich jak uzyskanie poświadczeń bazy danych z plików konfiguracyjnych).
Oto kilka rozwiązań:
-
Walidacja danych wejściowych: Zapewnij solidną weryfikację danych wejściowych dostarczonych przez użytkownika. Nie zezwalaj na „..” ani „/” jako część wejść.
-
Kontrola dostępu: Wdrożyć odpowiednią kontrolę dostępu. Nie polegaj wyłącznie na podanej ścieżce pliku, aby autoryzować użytkownika.
-
Zasada najmniejszych uprawnień: Uruchom aplikację z najmniejszymi niezbędnymi uprawnieniami, zmniejszając potencjalne szkody spowodowane atakiem polegającym na przechodzeniu przez katalog.
Ataki polegające na przechodzeniu katalogów i podobne terminy
Termin | Opis |
---|---|
Atak polegający na przechodzeniu katalogu | Wykorzystuje lukę w procedurach wprowadzania danych przez użytkownika w celu uzyskania dostępu do nieautoryzowanych plików i katalogów. |
Zdalne dołączanie plików (RFI) | Osoba atakująca wykorzystuje ścieżki wprowadzania danych przez użytkownika, aby przesłać złośliwy skrypt na serwer witryny internetowej. |
Dołączanie plików lokalnych (LFI) | Osoba atakująca manipuluje witryną internetową w celu wykonania lub ujawnienia zawartości plików na serwerze internetowym. |
Przyszłe perspektywy i technologie związane z atakami polegającymi na przechodzeniu katalogów
W miarę ewolucji środowiska tworzenia stron internetowych metody i narzędzia przeprowadzania ataków polegających na przechodzeniu katalogów mogą stać się bardziej wyrafinowane. Niemniej jednak podstawą zapobiegania prawdopodobnie nadal będzie solidna walidacja danych wejściowych i rozsądna konfiguracja systemu.
Zapory ogniowe aplikacji internetowych, systemy wykrywania anomalii i algorytmy uczenia maszynowego dla systemów wykrywania włamań mogą odegrać znaczącą rolę w przyszłych strategiach łagodzenia takich ataków.
Połączenie między serwerami proxy a ataki polegające na przechodzeniu katalogów
Serwery proxy mogą służyć jako dodatkowa warstwa bezpieczeństwa przed atakami polegającymi na przechodzeniu przez katalogi. Filtrując żądania i odpowiedzi między klientem a serwerem, mogą pomóc wykryć nietypowe wzorce lub oznaki ataków polegających na przechodzeniu przez katalog, uniemożliwiając im w ten sposób dotarcie do serwera.
Na przykład OneProxy zapewnia solidne rozwiązanie serwera proxy, które może odegrać kluczową rolę w Twojej strategii obrony przed tego typu atakami.
powiązane linki
- Atak polegający na przekroczeniu ścieżki OWASP
- Ataki polegające na przechodzeniu katalogów i techniki łagodzenia skutków
- Zapobieganie atakom polegającym na przechodzeniu katalogów
- Przewodnik OWASP dotyczący tworzenia bezpiecznych aplikacji internetowych i usług internetowych
- Serwery proxy i bezpieczeństwo