NFsec Logo

To nie są pliki i katalogi, których szukasz

22/09/2016 w Ataki Internetowe, Bezpieczeństwo, Pen Test Brak komentarzy.  (artykuł nr 549, ilość słów: 409)

W

iele serwerów WWW posiada katalogi, których zawartość jest ukierunkowana na konkretne pliki. Oznacza to, że dany /katalog/ nie posiada standardowych plików typu index serwujących treść (lub posiada je puste) oraz nie pozwala na wyświetlenie zawartości całego katalogu często zwracając komunikat o kodzie 403. Mimo to pozwala na dostęp do bezpośrednich zasobów np. /katalog/install.exe. Analogicznie odnieść możemy się do katalogów, w których wdrażane są aplikacje. Są one (powinny być) ograniczane dostępem do konkretnych zasobów. Niestety bardzo często razem z kodem różnych aplikacji lub błędnym działaniem ludzkim przedostają się różnego rodzaju meta informacje, odsłaniające słabe strony tych rozwiązań.

Do wyłapania tego typu obiektów, które mogą być szczeblami do przeprowadzenie ataków o znacznie większym impakcie – podczas testów penetracyjnych lub zamierzonych ataków zostaną odpalone tzw. (url|dir|file) fuzzery, których zadaniem jest zgadnięcie / brute forcing “ukrytych” plików i katalogów. Co powinno zostać wykluczone i przefiltrowane?

1) Na początek wszystkie katalogi i pliki odnoszące się do repozytorium, w którym dany kod był wersjonowany.
2) Idąc śladem kodu – na blokadzie powinny paść pliki związane z IDE lub systemem budowania, w jakim kod był tworzony oraz pliki edytorów, gdyby ktoś chciał poprawiać coś na szybko.
3) Jeśli przeglądaliśmy kod w systemie to w jego katalogach mogą pojawić się pliki typu .DS_Store i thumbs.db lub inne budujące bazę aktualnej zawartości katalogu.
4) Przenosząc kod na serwer musimy zadbać, aby żaden katalog nie pozwalał na listing zawartych w nim plików.
5) W pliku robots.txt powinny znaleźć się tylko informacje, które wpływają na SEO strony, a nie pozorują ochronę przed Google Dorks

Problem może wydawać się trywialny, ale zajmuje trzecie miejsce w top 20 powszechnych luk w zabezpieczeniach aplikacji internetowych. Przed publikacją kodu na środowisku produkcyjnym powinniśmy wykonać wstępny audyt tymi samymi narzędziami, które mogą zostać wykorzystane przez osoby trzecie w złej wierze, ale przede wszystkim osobiście przejrzeć rzeczy, które będą dostępne publiczne. Automaty są pisane pod uniwersalne lub konkretne rozwiązania, ale nie dorównują kreatywnością pentesterom i napastnikom.

Więcej informacji: Files Your Webserver Shouldn’t Deliver, Penetration Testing – Directory Bruteforcing, Preventing Web-based Directory Enumeration Attacks

Kategorie K a t e g o r i e : Ataki Internetowe, Bezpieczeństwo, Pen Test

Tagi T a g i : , , , , , , , ,

Komentowanie tego wpisu jest zablokowane.