Dorking: Сайты\Сервера

Автор ни к чему не призывает, а просто показывает как делать НЕ нужно!

Вы же слышали что то по типу, что взломать можно все? В интернете так много серверов, на которых расположенный сайты, фтп, нюдсы и многое другое, не суть важно. Из-за такого большого кол-ва интернета, не так то и много людей, которые шарят за интернет изнутри.

Любой может купить сервер за 200р, и создать сайт, а вот настроить безопасность или не сломать ничего что делает сервер безопасным, не все смогут. Ведь проблема может быть не обязательно в сервере, может и в самом сайте.

О взломе

  1. Сбор инфы
  2. Поиск уязвимостей
  3. Взлом

Собираем информацию

Можно использовать такие поисковики как Shodan, Censys, ZoomEye, но мы ж панки, и платить за поиск УС с уязвимостями не будем, поэтому доркинг.

  • site – искать по конкретному сайту
  • inurl – указать на то, что искомые слова должны быть частью адреса страницы/сайта
  • intitle – оператор поиска в заголовке самой страниц
  • filetype – поиск файлов конкретного типа по расширению

Используйте это – inurl: /proc/self/cwd, этот запрос найдет сервер, у которого имеется возможность любому пользователю с помощью уязвимости Path Traversal получить доступ к директории /proc/self/cwd.

Directory traversal attack

Атака с обходом каталога использует недостаточную проверку безопасности или очистку имен файлов, предоставленных пользователем, так что символы, представляющие “переход к родительскому каталогу”, передаются через API файловой системы ОС. (QWASP)


Вот что мы видим на странице

Так как данный сервер запущен на Apache, мы можем посмотреть содержимое всего сайта перейдя в каталог www.

Перейдем на домашнюю страницу и увидим личные файлы администратора, в том числе и список файлов, которые он загружал

А теперь самое интересное, та самая директория /proc/self/cwd, которая позволяет перейти в директорию home и посмотреть список юзеров

Здесь содержится единственная директория пользователя

Вернемся назад и попробуем посмотреть файл /etc/passwd:

У нас имеется полный список всех пользователей, осталось проверить, какие сервисы запущены на сервере, а для этого воспользуемся NMap, но перед этим нам нужно узнать IP сервера:

ping domain

Берём IP и используем его для сканирования:

nmap IP

Итак, на сервере запущены сервисы ssh и smtp, посмотрим, имеются ли уязвимости в этих сервисах или других частях сайта через сканнер nikto.

Поиск уязвимостей

Запустим сканнер:

nikto -h url

Конкретно на этом сайте сканнеру не удалось найти уязвимостей, связанных с запущенными сервисами, однако это не означает, что его невозможно взломать.

Взлом

Зная, что на сервере запущен SSH и имея список пользователей системы, мы можем попробовать подобрать пароль к одному из пользователей.

Для этого используем инструмент hydra

hydra -V -f -t 4 -l username -P /root/wordlist ssh://IP

-V – показывать пару логин+пароль во время перебора

-f – остановка как только будет найден пароль для указанного логина

-P – путь до словаря с паролями

-l – логин

-P – путь к словарю паролей

ssh:// – указание сервиса и IP адрес цели

Пример пентеста сайта на WordPress

Теперь мы рассмотрим ещё один пример взлома, но теперь на сайте, сделанного с помощью CMS WordPress.

Найдем какой-нибудь сайт

inurl:wp-content

В Kali Linux присутствует специальный сканнер WPScan, которым мы и воспользуемся

wpscan --url url

Так же может потребоваться обновить базу данных

По завершению сканирования, утилита выведет отчет.

В этом случае отчет не дал никаких результатов по уязвимостям, поэтому воспользуемся более грубым методом перебора пользователей

wpscan --url url --enumerate -u

В итоге удалось найти одного пользователя

Как и в случае с предыдущем сайтом, попробуем атаковать пользователя перебором по словарю

wpscan --url url --passwords file --usernames username

Вот и все. Это самый начальный взлом, подобными способами получится взломать далеко не все.

Но тем не менее об этом лучше знать. Ведь это актуально не только для сайтов.

О защите

Самый универсальный и простой способ.

Сайты как таковы публичны, и их директории\файлы и тп. Поэтому вот что вам нужно сделать на хосте:

  • Убрать индексацию “приватных” дир. в robots.txt
  • Выставить правильные права на дир. которые не должны быть публичными

А для БД сайта, ssh пользователей, вашего аккаунта хоста и аккаунта вашей CMS (если он есть) – поставить сложный пароль и везде разный.

Желательно максимально допустимой длинны используя все доступные символы. Времена когда вы вводили пароли руками – прошли, ну или почти :)

На бумагу такой пароль будет трудно записать. Но существуют менеджеры паролей.

За все время произошло много сливов БД, и еще произойдет, поэтому ваш пароль уже может быть в каком нибудь вордлисте. Это не говоря о генерации возможных паролей, в основе которых ваши данные – ФИО, дата рождения, увлечения и тд.

Все остальные методы защиты упираются в ваши знания, знания систем, программирования и тд. или наличия денег и готовность их тратить на защиту.

Этот веб-сайт использует файлы cookie, чтобы обеспечить вам наилучший опыт.
Этот веб-сайт использует файлы cookie, чтобы обеспечить вам наилучший опыт.