Содержание:
С возвращением, мои хакеры!
Не так давно мы учились находить различные устройства, подключенные к Интернету, при помощи Shodan. Как вы помните, Shodan — это другой тип поисковой системы. Вместо индексирования содержимого веб-сайтов он вытягивает ответные баннеры серверов на всех типах онлайн-устройств, а затем индексирует содержимое этих баннеров.
Эта информация может быть получена с любого типа устройств, включая веб-серверы, маршрутизаторы (роутеры), веб-камеры, системы SCADA, домашние системы безопасности и все, что имеет веб-интерфейс, который уже в 2014 году означал почти все.
В нашей первой статье по Shodan мы упомянули, что вы можете получить доступ к этим устройствам, просто используя имя пользователя и пароль по умолчанию, поскольку администраторы часто ленивы и небрежны. Вопрос, который мы хотим рассмотреть в этой статье — что делать, когда сайт требует ввести учетные данные, а значения по умолчанию уже не работают?
Существует инструмент, который отлично подходит для взлома онлайн-паролей и называется THC-Hydra (https://www.thc.org/thc-hydra/). К счастью, он уже встроен в наш дистрибутив Kali, поэтому нам не придется дополнительно что-то скачивать, устанавливать или компилировать.
Шаг 1. Скачайте и установите Tamper Data
Прежде чем мы начнем работать с THC-Hydra, давайте установим еще один инструмент, который дополняет THC-Hydra. Этот инструмент известен как «Tamper Data», и он является плагином для браузера Mozilla Firefox. Поскольку наш дефолтный браузер в Kali — IceWeasel построен на Firefox, который является браузером с открытым исходным кодом, то он также хорошо подключается и к Iceweasel.
Tamper Data позволяет нам захватывать и просматривать информацию, передаваемую по протоколам HTTP и HTTPS через GET и POST запросы. В сущности, Tamper Data — это веб-прокси, похожий на Burp Suite, но более простой и встроенный в наш браузер.
Tamper Data позволяет нам захватывать информацию из браузера по пути на сервер и изменять ее. Кроме того, как только мы займемся более сложными сетевыми атаками, нам важно будет знать, какие поля и методы используются при работе с веб-формами, и Tamper Data нам в этом поможет.
Давайте скачаем его отсюда (Tamper Data) и установим в Iceweasel.
Шаг 2. Тест Tamper Data
Теперь, когда мы установили Tamper Data в наш браузер, давайте посмотрим, что он может делать. Активируйте Tamper Data, а затем перейдите на любой веб-сайт. На скриншоте ниже вы можете видеть, что мы перешли на сайт Bank of America, а Tamper Data показывает нам каждый GET и POST запрос между нашим браузером и сервером.
Когда я пытаюсь войти на сайт с именем пользователя «хакер», Tamper Data возвращает мне всю критически важную информацию о форме. Эта информация будет полезна, когда мы начнем использовать Hydra для взлома онлайн-паролей.
Шаг 3. Откройте THC Hydra
Теперь, когда у нас есть Tamper Data и мы убедились, что он нормально работает, давайте откроем Hydra. Вы можете найти ее в Kali Linux -> Password -> Online Attacks -> Hydra. Вы найдете ее примерно на середине списка онлайн-инструментов для взлома паролей.
Шаг 4. Изучение основ Hydra
Когда мы откроем Hydra, нас поприветствует экран справки. Обратите внимание на синтаксис примеров в нижней части скриншота. Синтаксис Hydra относительно прост и похож на другие инструменты взлома пароля.
Посмотрим, что там дальше.
hydra -l username -p passwordlist.txt target
Имя пользователя (username) может быть единственным именем пользователя, таким как «admin», например, или же целым списком пользователей, список паролей (passwordlist) обычно представляет собой текстовый файл, содержащий потенциальные пароли, а целью (target) может быть IP-адрес и порт, или это может быть конкретным полем веб-формы.
И хотя для Hydra вы можете использовать ЛЮБОЙ текстовый файл с паролями, но у Kali есть несколько таких уже встроенных файлов. Давайте перейдем в директорию /usr/share/wordlists:
kali > cd /usr/share/wordlists
Затем выведем на экран содержимое этой директории:
kali> ls
Как видно на скриншоте ниже, у Kali есть много вордлистов («списков слов»). Можно использовать любой из них или другой вордлист, который вы скачаете из Интернета, если, конечно, он был создан в Linux и находится в формате .txt.
Шаг 5. Использование Hydra для взлома паролей
В примере ниже мы используем Hydra, чтобы попытаться взломать пароль пользователя «admin», используя вордлист «rockyou.txt» для адреса 192.168.89.190 на 80-м порту.
Использование Hydra в веб-формах
Использование Hydra в веб-формах добавляет уровень сложности, но формат аналогичен, за исключением того, что вам нужна информация о параметрах веб-формы, которые, в свою очередь, может нам предоставить Tamper Data.
Синтаксис использования Hydra для работы с веб-формами заключается в использовании такой конструкции — :<параметры_формы>:<строка_отказа>, где ранее мы использовали IP-адрес целевой системы. И нам по-прежнему нужен список имен пользователей и список паролей.
Скорее всего, наиболее критичным из всех этих параметров для взлома паролей веб-форм является «строка_отказа». Это та строка, которую форма возвращает в тот момент, когда имя пользователя или пароль введены неверно. Нам нужно захватить эту строку и передать ее Hydra, чтобы она знала, что происходит в ситуации, когда проверяемый пароль оказывается неверным, чтобы после этого перейти к следующей попытке.
В следующей статье по Hydra мы рассмотрим, как использовать эту информацию для перебора данных для любых веб-форм (брутфорс), включая все эти веб-камеры, системы SCADA и светофоры, которые мы можем найти на Shodan.