Всех приветствую, читатели Хабра!
Сегодня я поведаю о том как установить, настроить, и эксплуатировать уязвимости заранее уязвимой машины Metasploitable2-Linux. В данной статье я скорее даже поделюсь своим опытом взлома уязвимого хоста в виртуальной машине.
Но для начала правовая информация:
Данная статья создана исключительно в ознакомительных/образовательных/развивающих целях.
Автор статьи не несет ответственности за ваши действия.
Автор статьи ни к чему не призывает, более того напоминаю о существовании некоторых статей в уголовном кодексе РФ, их никто не отменял:
УК РФ Статья 272. Неправомерный доступ к компьютерной информации
УК РФ Статья 273. Создание, использование и распространение вредоносных компьютерных программ
УК РФ Статья 274. Нарушение правил эксплуатации средств хранения, обработки или передачи компьютерной информации и информационно-телекоммуникационных сетей
Естественно для целей изучения указанного софта я и использую виртуальную машину у себя на своем личном компьютере, а не удаленный хост или сервер.
Моя основная система Kali GNU/Linux, цель моей атаки - виртуальная машина Metasploitable2-Linux. Вообще Metasploitable2-Linux была создана для тестирования на проникновения (пентест, белый хакинг) другого известного фреймворка - metasploit-framework. Но metasploit-framework я использовать в данном случае не буду, а буду пробовать атаковать уязвимый хост программами для брутфорса - hydra, medusa, ncrack.
Итак у нас имеются две задачи сейчас:
I "Поднять" уязвимую машину в virtual box, и настроить ее.
II Проэксплуатировать уязвимости машины.
I. Как ни странно но первая задача оказалась гораздо сложнее второй.
Скачать образ уязвимой машины можно вот туТъ https://sourceforge.net/projects/metasploitable/files/Metasploitable2/
После скачивания увидим архив, который мы и распакуем.
Видим что внутри архива находится несколько файлов.
Далее установим весь необходимый нам софт командой:
sudo apt install nmap whatweb hydra medusa ncrack virtualbox
В операционной системе Kali GNU/Linux пакеты nmap whatweb hydra medusa ncrack предустановлены, а вот виртуал бокс мне необходимо установить.
После установки открываем программу
Нажимаем "создать", даем имя, выбираем тип Linux, Версия Other Linux 64bit
Далее задаем оперативной памяти 512Мб, 2 ядра процессора, объем на жестком диске около 2Гб, Далее очень важно!!! Выбираем использовать существующим виртуальный жесткий диск Metasploitable.vdmk.
Далее необходимо настроить сетевой мост, это также крайне важно. Я использую для подключение к сети usb шнур значит и для виртуального хоста необходимо это выбрать, иначе виртуальному хосту будет присвоен ipv6 адрес и процедура взлома либо усложнится, либо выхода в локальную сеть у такого хоста вообще не будет. Нажимаем настройки (прав. кнопка мыши на нашей виртуалке) далее сеть. Выбираем сетевой мост и usb0 интерфейс.
Все на этом настройка и установка закончены.
II Сам взлом
Запускаем нашу виртуальную машину, авторизируемся - логин и пароль msfadmin. Вводим команду ifconfig и видим ip адрес машины - 192.168.166.234.
Далее сканируем хост (некоторые команды и программы выполняются от имени root, поэтому иногда необходима приставка sudo):
whatweb 192.168.166.234
sudo nmap 192.168.166.234
Видим службы, ОС, другую информацию, а также открытые порты.
Создаем словари юзеров и паролей - user.txt, pass.txt. У меня они совсем небольшие, я выведу их содержимое командой cat.
Информация по утилитам, атакуемым протоколам, на скриншотах ниже:
Далее начинаем взлом методом брутфорса. Для начала ncrack. Введем по очереди три команды:
ncrack -U user.txt -P pass.txt 192.168.166.234:21 -v
ncrack -U user.txt -P pass.txt 192.168.166.234:23 -v
ncrack -U user.txt -P pass.txt 192.168.166.234:22 -v
Как видно и скрина пара пароль-логин подобрана успешно во всех трех случаях. То есть, программа запускает перебор по словарям логинов и паролей с указанием порта уязвимой службы (21 -ftp, 22 - ssh, 23 - telnet). В свою очередь открытые порты мы узнали используя nmap.
Ради интереса зайдем по протоколу telnet (23 порт) в уязвимую машину, используя подобранный ncrack логин и пароль msfadmin.
Как видно на скрине ниже успешно:
Далее используем medusa:
sudo medusa -U user.txt -P pass.txt -h 192.168.166.234 -M ssh
sudo medusa -U user.txt -P pass.txt -h 192.168.166.234 -M ftp
Как видно для медузы необходимо назначить не порт, а протокол (в данном случае ssh и ftp)
Как видно из скринов ниже, медуза также справляется с задачей:
Теперь используем hydra, по аналогии, только для данной программы необходимо кроме словарей указывать и порт и протокол:
hydra -L user.txt -P pass.txt ftp://192.168.166.234:21
Как видно из скринов ниже успешно, причем подобранную пару логин-пароль гидра подсвечивает:
Попробуем зайти на ftp используя пару user-user подобранную гидрой:
Успешно
Как видно из примеров все три утилиты hydra, medusa, ncrack имеют аналогичный синтаксис. И использовать их довольно легко против целевого хоста, необходимо лишь составить (либо скачать) словари логинов и паролей, предварительно просканировав открытые порты nmap-ом. Но использовать такого рода программы можно лишь на уязвимых машинах типа Metasploitable, либо можно их использовать санкционировано, в рамках аудита на сервер компании с которой заключен контракт на аудит информационной безопасности (проще говоря пентест). Не санкционированное использование подобных программ незаконно.
Всем спасибо за внимание до новых встреч.
Комментарии (8)
user0k
12.10.2024 16:23Моя vps за фаерволом. Поднимаю туннель и в нём работаю. Никаких портов наружу нет, кроме l2tp+ipsec.
Dynasaur
объясните чайнику, службы позволяют тупо перебирать пароли и логины и не вводят задержку после n попыток? Просто, если после 10й попытки перебора добавить задержку ответа 30 сек, то дальнейший перебор займёт вечность. Неужели такой простой защиты не предусмотрено? А если предусмотрено, то смысл перебора околонулевой.
leha_gorbunov
Не все знают про fail2ban наверное
KoshelevGeorge1989 Автор
Именно для отражения атак и необходимы fail2ban и другие методы защиты, такие как файерволы
Dynasaur
не понятно почему он не установлен по умолчанию. есть причина, что он кому-то не нужен?
KoshelevGeorge1989 Автор
Так это специально уязвимая машина, для оттачивания навыков пентеста
Dynasaur
так в убунте из коробки нет никакого фейлтубана. сотни миллионов работают на таких же специально уязвимых машинах. почему это не ставится по умолчанию?
ASD2003ru
Вроде еще попыток неправильных заходов по умолчанию в ssh есть после чего блок.