Что пишут в блогах

Подписаться

Онлайн-тренинги

Конференции

Что пишут в блогах (EN)

Разделы портала

Про инструменты

Лучшие вакансии

.
Введение в тестирование безопасности: использование NMAp, Tor, ProxyChains
31.08.2020 00:00

Автор: Санджит Хохар (Sunjeet Khokhar)
Оригинал статьи
Перевод: Ольга Алифанова

Цель: как прощупать удаленную цель, чтобы проверить, какие порты небезопасны и подвержены сетевым атакам?

Шаг 1: Создайте или выберите готовый сканер сетевых портов.

На основании своих изысканий, а также поговорив с более опытными коллегами, я выбрал Nmap, бесплатный инструмент проверки сетевой безопасности с открытым исходным кодом. Он очень популярен среди исследователей и профессионалов.

Я использую Mac, и для него можно установить сканер через DMG-файл или через Homebrew.

$ brew install nmap

У Nmap есть свои недостатки – он "шумный", и его легко засечь по объемам трафика, которые он генерирует, выполняя свои операции.

Это привело меня к шагу 2.

Шаг 2: Найдите анонимный способ запуска вашего сканера сетевых портов, и выполните прощупывание более безопасным образом

Найдите безопасный "оверлей", через который будет идти ваш трафик – вы сможете использовать Nmap анонимно, не подвергаясь уязвимостям со своей стороны. Я выбрал сеть Tor и их же Tor-браузер.

Вот выдержка из отличного руководства по Tor:

"Tor может быть знаком вам, как родина нелегальной онлайн-деятельности, место, где вы можете купить любой наркотик, место для любого криминала. Tor куда больше, чем об этом рассказывают в СМИ. Согласно Королевскому Колледжу, большая часть Tor легальна.

Обычно при посещении веб-сайта ваш компьютер устанавливает прямое TCP-соединение с сервером сайта. Любой отслеживающий ваш Интернет может прочитать TCP-пакет. Он может выяснить, какой сайт вы посещаете, каков ваш IP-адрес, а также порт, к которому вы подключаетесь.

Если вы используете HTTPS, никто не узнает, что было внутри пакета, однако иногда все, что нужно злоумышленнику – это знать, к кому вы подключаетесь.

При использовании Tor ваш компьютер никогда не взаимодействует с сервером напрямую. Tor создает извилистый путь через 3 ноды Tor, и отправляет данные через эту цепь.

Ключевой принцип Tor – многослойная маршрутизация, техника для анонимной и безопасной коммуникации в публичной сети. В многослойной маршрутизации сообщения завернуты в несколько слоев шифрования".

Шаг 3. Объедините эти инструменты, чтобы прощупать свою цель

Теперь план таков: вызвать Nmap-команды из терминала и перенаправить трафик через сеть Tor (ее инициирует браузер Tor, когда он запущен на локальной машине – по умолчанию это 127.0.0.1 9050).

Дальнейшее изучение привело меня к полезному инструменту – Proxychains. Это основанный на unix инструмент, который отлично работает с Tor (если он настроен на распознавание трафика Tor как дефолтного) или любым другим прокси, или другими цепочками прокси, перенаправляя трафик с вашего локального хоста.

Примечание: я пока не искал эквивалент Proxychains для Windows, поэтому полноценное решение пока что будет неполным.

Итак:

a)       Установите Proxychains, используя HomeBrew: – $ proxychains4 brew install proxychains-ng

b)      Установите и запустите Tor из командной строки:

$ brew install tor

$ brew services start tor

c)       Выберите цель, разрешающую этичное тестирование безопасности. Я выбрал вариант от Nmap: scanme.nmap.org

d)      Перейдите в конфигурационный файл proxychains.conf (обычно находится по адресу /usr/local/etc), и если установка была успешной, вы увидите вот что:

[ProxyList]

# add proxy here ...

# meanwile

# defaults set to "tor"socks4

127.0.0.1 9050

e)      Все готово к запуску команды nmap через тор. Наберите в терминале:

$ proxychains4 nmap -sT -PN -n -sV -p 21 scanme.nmap.org

Параметры в строчке выше означают следующее:


-sT

Полное сканирование TCP-соединения

-PN

Не выполнять сканирование хостов

-n

Не выполнять преобразование DNS (для предотвращения DNS-утечек)

-sV

Определять версию сервиса/информацию

-p

Порты для сканирования

То есть мы сканируем порт 21 на scanme.nmap.org анонимно через Nmap, и смотрим, открыт он или закрыт

f) Результат будет примерно таким:

Как можно видеть выше, запрос отклонен, порт закрыт.

Вот и все – простой базовый тест безопасности для сканирования портов в "безопасном" окружении.

Информация к размышлению и домашнее задание

Хосты часто блокируют конечные точки Tor, и тут вам пригодится ProxyChains. Вы можете присоединить один или несколько публичных прокси (тоже анонимных) к своей Tor-службе.

Сканирование портов через Tor – процесс очень медленный, поэтому мне придется найти более масштабируемое решение для выполнения множества таких тестов.

Обсудить в форуме