Ukryte pliki i katalogi na serwerze mogą zawierać cenne informacje dla hackerów

21 grudnia, 2018

Ukryte katalogi i pliki pozostawione przypadkowo na serwerze WWW mogą być bardzo cennym źródłem poufnych informacji. Na tyle cennym, że hackerzy lub konkurencja może dotrzeć do wskazówek na temat użytej technologii, konfiguracji i konkretnej wersji danego rozwiązania / frameworka. Informacje takie są zazwyczaj przechowywane w folderach i plikach systemowych (.git, .gitignore, .svn), plikach konfiguracyjnych projektu lub strony www (.npmrc, package.json, .htaccess), oraz w niestandardowych plikach konfiguracyjnych z typowymi rozszerzeniami (config.json, config.yml, config.xml i wiele podobnych). Wszystkie te pliki mogą zawierać np. wersje kodu źródłowego.

Ogólnie rzecz biorąc, zasoby te możemy podzielić na kilka wspólnych kategorii:

Szczegółowy opis tych zasobów i jakiego rodzaju informacje mogą przechowywać, opublikował użytkownik bl4de.

Jest to interesująca lektura, ponieważ wyszczególnia narzędzia i sposoby odnajdywania ukrytych folderów i plików za pomocą np. gobuster,  DirBuster, Dirb lub wfuzz. Takie narzędzia, skanery konsolowe, mogą korzystać ze słownika (np. takiego) zawierającego setki tysięcy najpopularniejszych nazw folderów i plików, np. robots.txt lub ścieżek do plików / katalogów:

/user/password/

/user/login/

/user/register/

/resources/backup

/partners/resources/

W zależności od użytej technologii np. plik robots.txt może zawierać niedozwolone zasoby dla robotów sieciowych, ale taka informacja może hackerowi powiedzieć coś więcej — właściciel serwera ma coś do ukrycia: „Nie wchodź tutaj, tam są rzeczy, które nie powinny być widoczne”. Oczywiście w celach edukacyjnych możemy wykorzystać jeden z dostępnych słowników do zbierania informacji o stronie, którą chcemy przeskanować: https://github.com/danielmiessler/RobotsDisallowed

Zawsze warto sprawdzić, czy któryś z plików, który może ujawnić ważne informacje o stronie lub projekcie, istnieje na serwerze. Autor opracowania wyjaśnia, że ujawnione repozytorium Git lub SVN będzie po prostu katastrofą, ponieważ pozwoli na pobranie kodu źródłowego aplikacji internetowej, a także folderu konfiguracji projektu np. IntelliJ IDE. Hackerowi czasami wystarczy tylko to, aby zdobyć potrzebne informacje do szukania podatności i przejęcia kontroli nad stroną bądź aplikacją.

Czy ten artykuł był pomocny?

Oceniono: 0 razy

Picture of Adrian Ścibor

Adrian Ścibor

W ramach działań związanych z cyberbezpieczeństwem odpowiada w AVLab za przeprowadzanie testów rozwiązań ochronnych przed zagrożeniami. Opracowuje strategie oraz narzędzia, które pomagają w ochronie danych i systemów przed cyberatakami. Współuczestnik międzynarodowej grupy non-profit AMTSO, która zrzesza ekspertów IT.
Picture of Adrian Ścibor

Adrian Ścibor

W ramach działań związanych z cyberbezpieczeństwem odpowiada w AVLab za przeprowadzanie testów rozwiązań ochronnych przed zagrożeniami. Opracowuje strategie oraz narzędzia, które pomagają w ochronie danych i systemów przed cyberatakami. Współuczestnik międzynarodowej grupy non-profit AMTSO, która zrzesza ekspertów IT.

PODZIEL SIĘ:

guest
0 komentarzy
najstarszy
najnowszy oceniany
Inline Feedbacks
View all comments

Zapisz się na newsletter

Informacje o cyberbezpieczeństwie prosto na skrzynkę pocztową!

Dodatkowo otrzymasz poradnik „Jak bezpiecznie funkcjonować w cyfrowym świecie”

[ninja_tables id=”27481″]

\r\n <\/div>\r\n<\/div>\r\n","isUserRated":"0","version":"7.6.29","wc_post_id":"19053","isCookiesEnabled":"1","loadLastCommentId":"0","dataFilterCallbacks":[],"phraseFilters":[],"scrollSize":"32","is_email_field_required":"1","url":"https:\/\/avlab.pl\/wp-admin\/admin-ajax.php","customAjaxUrl":"https:\/\/avlab.pl\/wp-content\/plugins\/wpdiscuz\/utils\/ajax\/wpdiscuz-ajax.php","bubbleUpdateUrl":"https:\/\/avlab.pl\/wp-json\/wpdiscuz\/v1\/update","restNonce":"c01ec70651","is_rate_editable":"0","menu_icon":"https:\/\/avlab.pl\/wp-content\/plugins\/wpdiscuz\/assets\/img\/plugin-icon\/wpdiscuz-svg.svg","menu_icon_hover":"https:\/\/avlab.pl\/wp-content\/plugins\/wpdiscuz\/assets\/img\/plugin-icon\/wpdiscuz-svg_hover.svg"}; var wpdiscuzUCObj = {"msgConfirmDeleteComment":"Are you sure you want to delete this comment?","msgConfirmCancelSubscription":"Are you sure you want to cancel this subscription?","msgConfirmCancelFollow":"Are you sure you want to cancel this follow?","additionalTab":"0"}; -->