Сканирование открытых портов на целевом хосте
На этом этапе мы расскажем, как использовать инструменты для сканирования открытых портов на целевом хосте.
В процессе пентестинга (проверки на проникновение) необходимо знать, какие порты открыты на целевом хосте. В Kali Linux есть два предустановленных инструмента для сканирования портов: Nmap и Zenmap. Мы рассмотрим основные способы использования этих двух инструментов.
Сначала запустим среду лабораторной работы. Хост-машина работает под управлением Ubuntu (это рабочий стол, к которому вы в данный момент подключены), на ней установлены виртуальные среды Docker и QEMU. Они обеспечивают платформенную поддержку для контейнера Kali Linux и целевой машины Metasploitable2 соответственно.
В хост-машине LabEx запустите Metasploitable2, дважды кликнув по терминалу xfce на рабочем столе и введя следующую команду в терминале:
sudo virsh start Metasploitable2
Подождите, пока целевая машина запустится. Это может занять от 1 до 3 минут.
Проверьте, запущена ли целевая машина, отправив ей ping (для выхода из режима ping нажмите Ctrl-C):
ping 192.168.122.102
Теперь запустим контейнер Kali и войдем в интерфейс bash, а затем выполним операцию ping, чтобы проверить сетевое соединение:
docker run -ti --network host b5b709a49cd5 bash
Теперь можно выполнить операцию ping для проверки сетеового соединения (для выхода из режима ping нажмите Ctrl-C):
ping 192.168.122.102
Теперь обе среды лабораторной работы запущены, и мы можем приступить к пентестингу.
Примечание: Если вы случайно выйдете из текущего сеанса bash, контейнер Kali автоматически остановится. Вы можете снова выполнить команду docker run -ti --network host b5b709a49cd5 bash
на хост-машине, чтобы запустить новый контейнер Kali и войти в bash для продолжения лабораторных операций.
Инструмент для сканирования TCP-портов: Nmap
Nmap - это программа для исследования сетей и проведения безопасности-сканирования. Администраторы систем и обычные пользователи могут использовать эту программу для сканирования больших сетей и получения информации о том, какие хосты работают и какие сервисы они предоставляют.
Nmap поддерживает множество методов сканирования, таких как UDP, TCP Connect(), TCP SYN (полуоткрытое сканирование), FTP-прокси (атака отскока), пассивное сканирование (Idle scan), ICMP, FIN, ACK-сканирование, сканирование Xmas Tree, SYN-сканирование и Null-сканирование.
Nmap имеет четыре основные функции:
- Обнаружение хостов
- Сканирование портов
- Определение версии сервисов
- Определение операционной системы
Используйте инструмент nmap
и введите следующую команду для выполнения сканирования портов и получения информации об открытых портах на целевой машине:
nmap 192.168.122.102
Zenmap: Графический интерфейс для Nmap
Zenmap - это официальный графический интерфейс на основе Nmap, разработанный проектом Nmap. Zenmap - это бесплатный и открытый исходный код графический интерфейс, написанный на Python, который может работать на различных операционных системах (Windows/Linux/Unix/Mac OS и др.). Zenmap призван предоставить более простой способ работы с Nmap. Общие операции можно сохранять в профилях, и пользователи могут выбирать профиль во время сканирования, что позволяет легко сравнивать разные результаты сканирования. Он также предоставляет графическое отображение топологии сети.
Примечание: В среде LabEx используется контейнер Kali, поэтому в данный момент графический интерфейс не может быть использован.