Привет, Хабр! В AKTIV.CONSULTING я руковожу центром технической экспертизы по анализу защищённости. В фокусе нашей команды — спектр задач по проверке безопасности ПО, тестирование на проникновения внешнего и внутреннего периметра организации, проведение Red Team, расследований киберинцидентов, а также внедрения процесса DevSecOps. Проанализировав результаты сотен тестов на проникновение, мы увидели четкую закономерность: большинство успешных атак объясняются не сложностью инструментов злоумышленников, а игнорированием базовых мер защиты. Реальность такова, что злоумышленники берут то, что плохо лежит: используют слабые пароли, вовремя не закрытые уязвимости и эксплуатируют человеческий фактор. Сложные многоступенчатые атаки чаще бывают исключением. Как правило, злоумышленники используют атаки, выстроенные с помощью стандартных методов и утилит.

В этой статье мы систематизировали инструменты, которыми может воспользоваться любой пентестер при аудите инфраструктуры и внешнего периметра. Понимание этого набора — первый и критически важный шаг к выстраиванию адекватной системы защиты.
Этап 1. Разведка
Всё начинается с разведки. Наша цель — собрать как можно больше информации о цели, создав её цифровой портрет. Базовый инструментарий для этого включает в себя:
Whois – сетевой протокол прикладного уровня, который позволяет получить регистрационные данные о владельцах доменных имён и IP-адресов.
Whatweb – инструмент с открытым исходным кодом, с помощью которого можно собрать информацию о веб-приложении.
Wig – инструмент по сбору информации о веб-приложениях, позволяет идентифицировать ряд систем управления контентом (CMS) и другие административные приложения.
dnsdumpster.com – бесплатный инструмент для исследования домена, позволяет обнаруживать видимые хосты и поддомены, связанные с основным доменом.
Dirb – это сканер веб-контента, даёт возможность подбирать директории сайта по словарю.
Gobuster – это сканер веб-контента, предназначенный для брутфорса директорий и файлов веб-сайтов и DNS субдоменов.
Но разведка давно вышла за рамки простого сканирования веб-сервера. Для более глубокого анализа мы можем использовать:
WPScan – blackbox-сканер уязвимостей сайтов на WordPress, позволяет определять версию WordPress, обнаруживать конфиденциальные файлы, находить имена пользователей и обнаруживать включённые функции, а также выявлять уязвимости.
Nikto – бесплатный сканер, позволяет обнаруживать уязвимости в веб-серверах.
Gitleaks – SAST-инструмент с открытым исходным кодом. Позволяет сканировать код из Git репозиториев на наличие утечек и конфиденциальной информации.
А с приходом в нашу практику OSINT (Open Source Intelligence) разведка стала еще глубже. Появились мощные специализированные инструменты:
Maltego – OSINT-фреймворк с графическим интерфейсом для сбора информации о цели из всевозможных источников. Позволяет найти информацию о нужном объекте по заданным параметрам в глобальной сети, анализировать зависимости и данные в режиме реального времени, а также получать информацию в виде схем/графов.
Shodan – поисковик по Интернету вещей. Позволяет оценивать уровень распространения тех или иных устройств, операционных систем и веб‑инструментов, а также выяснять текущий уровень проникновения интернета в любые регионы – от квартала до континента.
Netlas.io – инструмент для сбора информации о сетях. Позволяет просканировать каждый IPv4-адрес, все известные веб-сайты и веб-приложения, при этом вся информация собирается только ненавязчивыми методами. Также используется для обнаружения поверхности атаки при пентесте.
Sherlock – один из самых популярных OSINT-инструментов. Позволяет путем поиска по огромному количеству сайтов определить, зарегистрирован ли там пользователь с указанным никнеймом.
Snoop – OSINT-инструмент по поиску никнеймов. Позволяет получить лучшие результаты поиска информации по никнейму.
И это не предел. Сообщество постоянно развивается, и на смену старым инструментам приходят новые полезные утилитами для OSINT в рамках тестирований на проникновения, а также инструменты для Blue Team, которые за последние пару лет стали частью ОС Kali Linux:
Findomain – инструмент для поиска субдоменов, который позволяет быстро распознавать субдомены с использованием логов Certificate Transparency и API сервисов.
H8mail – инструмент для предоставления набора возможных паролей из своих баз данных для указанного почтового ящика, позволяет получить доступ не только к электронной почте, но и ко всем остальным аккаунтам, если пользователь повторно использует одни и т�� же пароли.
ReconSpider – продвинутый фреймворк для OSINT, который позволяет сканировать IP-адреса, электронные письма, веб-сайты и собирать информацию из разных источников.
Autorecon – многопоточный инструмент сетевой разведки, который позволяет сканировать порты и автоматически анализировать найденные сервисы.
Когда цифровой портрет цели составлен, пора изучать её периметр.
Этап 2. Сканирование и анализ уязвимостей
На этом этапе мы переходим от пассивного наблюдения к активному взаимодействию. Наша задача — найти «открытые двери» и слабые места. Чтобы увидеть саму локальную сеть и всех её участников, а также для атаки на сетевые устройства используем:
Arpsсan – утилита для ARP сканирования локальной сети, позволяет обнаруживать все подключенные к сети устройства, в том числе на ОС Linux и скрытые.
Netdiscover – инструмент активного/пассивного поиска адресов, даёт возможность пассивно обнаруживать сетевые хосты, а также искать их активно, отправляя ARP-запросы.
Yersinia – фреймворк для выполнения атак второго уровня модели OSI. Позволяет использовать недостатки безопасности в различных сетевых протоколах для анализа и тестирования сетей и систем.
Для анализа сетевого трафика используем:
Tcpdump – утилита для анализа и фильтрации сетевых пакетов. Позволяет прослушивать трафик, а также проверять его маршрутизацию, диагностировать потерю пакетов и пр.
Wireshark – графическая утилита для анализа трафика. Позволяет просматривать весь проходящий по сети трафик в режиме реального времени.
Для сканирования сети и портов используем:
Nmap – утилита с открытым исходным кодом для исследования сети и проверки безопасности. Позволяет обнаруживать открытые порты и веб-сервисы на них.
Zenmap – графическая утилита Nmap для Windows.
Но просто найти открытый порт — мало. Нужно понять, какая уязвимость за ним скрывается. Для этого используем сканеры:
Nessus – программное обеспечение для автоматического поиска известных изъянов в защите информационных систем, позволяет обнаружить наиболее часто встречающиеся виды уязвимостей.
OWASP ZAP (Zaproxy) – сканер безопасности веб-приложений с открытым исходным кодом. Позволяет манипулировать всем трафиком, который проходит через него, включая трафик с использованием HTTPS, а также в автоматическом режиме обнаруживать уязвимости безопасности в веб-приложениях.
Burp Suite – интегрированная платформа, позволяет проводить аудита веб-приложений, как в ручном, так и в автоматических режимах, перехватывать и обрабатывать все поступающие от браузера запросы, а также устанавливать сертификаты burp для анализа https-соединений.
OpenVAS – инструмент для сканирования уязвимостей с открытым исходным кодом, позволяет выявлять проблемы безопасности в информационных системах и сетях.
Отдельного внимания заслуживает анализ Wi-Fi. Здесь можно использовать такие инструменты:
Wifite2 – бесплатная утилита для аудита Wi-Fi сетей с открытыми исходниками, позволяет сканировать все каналы и сортировать сети по силе сигнала, отображать информацию о подключённых клиентах, наличии WPS и проводить в автоматизированном режиме атаки на сети Wi-Fi.
Airgeddon – набор инструментов с открытым исходным кодом для тестирования безопасности беспроводных сетей, позволяет проводить деаутентификацию, атаки на WEP, WPA и WPA2, создавать поддельные точки доступа и прочие комбинированные атаки на сети Wi-Fi.
Aircrack-ng – набор инструментов для оценки безопасности сети Wi-Fi, позволяет обнаруживать беспроводные сети, перехватывать проходящий через них трафик и проводить аудит беспроводных сетей.
Когда карта уязвимостей составлена, теперь следует другой логический шаг — расширение привилегий в системе.
Этап 3. Получение доступа и эксплуатация уязвимостей
Это фаза, где мы превращаем найденную уязвимость в реальный доступ к системе. Наш главный союзник здесь — Metasploit – фреймворк, который помогает обнаруживать и исследовать уязвимости в сетях и на серверах. А чтобы быстро найти нужный эксплойт, используем Searchsploit – локальную версию сайта Exploit-DB, представляющую собой базу данных с эксплоитами. Она позволяет обнаруживать и исследовать уязвимости в сетях и на серверах.
Для атаки на пароли у нас есть целый арсенал:
Hydra – программное обеспечение с открытым исходным кодом для перебора паролей в реальном времени от различных онлайн сервисов, веб-приложений и протоколов, позволяет выполняется перебор паролей не по хэшу, а напрямую.
Medusa – быстрый, параллельный и модульный брут-форсер входа, позволяет осуществлять перебора учётных данных в максимально возможном количестве протоколов.
Hashcat – утилита, с помощью которой осуществляется восстановление паролей путём перебора хэшей.
John the Ripper – программное обеспечение, предназначенное для восстановления паролей по их хешам, позволяет проводить аудит паролей в UNIX-системах путем перебора возможных вариантов по словарю.
Современные Active Directory-сети требуют специализированного подхода:
CrackMapExec – инструмент для тестирования Windows и Active Directory, позволяет перечислять вошедших пользователей и индексировать общие папки SMB, выполнять автоматические инъекции в память с использованием Powershell и дампить NTDS.dit.
Mimikatz – приложение с открытым исходным кодом, позволяет извлекать пароли в виде простого текста, хеши, ПИН-коды и билеты kerberos из памяти.
Bloodhound – программное обеспечение, которое выявляет скрытые и часто непреднамеренных отношений в среде Active Directory, позволяет находить и определять сложные пути атаки, предоставляя информацию в виде графов.
Enum4linux-ng – инструмент для перечисления информации из систем Windows и Samba, позволяет получать списки пользователей и информацию о их группах, информацию о домене хоста и ОС, а также перечень общих ресурсов и парольные политики.
Coercer – инструмент, написанный на Python, который автоматически принуждает сервер Windows к аутентификации на произвольной машине.
Активно развиваются и инструменты для эксплуатации:
Mssqlpwner – продвинутый и универсальный инструмент, позволяет беспрепятственно взаимодействовать с серверами MSSQL, а также взламывать их.
Sqlmap – инструмент с открытым исходным кодом для тестирования на проникновение, позволяет автоматизировать процесс выявления и эксплуатации уязвимости SQL-инъекций и захвата серверов баз данных.
Когда доступ получен, мало просто зайти в систему — нужно укрепить свои позиции.
Этап 4. Повышение привилегий и закрепление в системе
Обычно первоначальный доступ — это права обычного пользователя. Наша цель — стать администратором или суперпользователем. Для Linux незаменим LinPEAS — автоматизированная утилита для выявления уязвимостей и ошибок конфигурации в системах Linux, позволяющая анализировать различные аспекты системы, помогая выявить и устранить потенциальные слабые места безопасности для облегчения повышения привилегий, а также PXEnum – скрипт, который позволяет осуществлять сбор всей доступной информации о Linux-системе. Для Windows и Active Directory есть BloodyAD — фреймворк с открытым исходным кодом, который позволяет повышать привилегий в AD.
Чтобы сохранить доступ для дальнейшего анализа, мы используем инструменты для закрепления. Например, Ngrok позволяет сделать локальный порт доступным из интернета без настройки NAT, роутера, DDNS и других протоколов через безопасный туннель.
Инструменты для симуляции атак и защиты
В ходе пентеста, чтобы симулировать реалистичные сложные атаки, мы используем фишинговые инструменты:
GoPhish – платформа с открытым исходным кодом, которая позволяет симулировать фишинговые атаки.
Evilginx – инструмент для фишинга и атаки «Man-in-the-Middle» (MITM), позволяет перехватывать учётные данные и сеансовые cookie пользователей.
Важно, чтобы современный пентестер понимал инструменты Blue Team. Это позволяет эффективнее скрывать следы своей активности и давать более качественные рекомендации. Обратите внимание на:
Chainsaw – инструмент для первичного реагирования на инциденты, позволяет быстро искать артефакты в журналах событий Windows, таблицах Master File Table и System Resource Utilization Monitor.
Snort – гибкая сетевая система предотвращения вторжений (IPS) и обнаружения вторжений (IDS) с открытым исходным кодом, совместимая с ОС Windows и Linux, которая позволяет записывать все выявленные угрозы в лог-файл.
Portspoof – утилита для эмуляции TCP-портов, которая позволяет показывать все настроенные TCP-порты в «открытом» состоянии, что создаёт ложное представление о структуре и уязвимостях сети.
Hubble – распределённая платформа, которая позволяет осуществлять мониторинг сетей, сервисов и безопасности для Kubernetes и для облачных рабочих нагрузок с использованием eBPF.
TheHive – масштабируемая платформа реагирования на инциденты безопасности с открытым исходным кодом, которая предоставляет централизованную систему для отслеживания и расследования событий, связанных с безопасностью.
В заключении хочу отметить, что представленные инструменты составляют мощную, но не исчерпывающую часть арсенала специалиста по тестированию на проникновение, а их эффективность напрямую зависит от экспертизы и критического мышления исполнителя.
Мы настоятельно рекомендуем использовать данные инструменты исключительно на своих собственных локальных сетях, серверах, сервисах и сайтах, либо по договору о проведении анализа защищённости или тестировании на проникновения, ведь обязательным условием их применения является строгое соблюдение правовых норм и этического подхода.
А для стабильной безопасности инфраструктуры мы призываем проводить регулярные пентесты и интегрировать лучшие практики DevSecOps в жизненный цикл разработки и эксплуатации информационных систем.
