ZGrab2 — это модульный сканер, разработанный для детального анализа сетевых сервисов. В отличие от традиционных сканеров, которые просто проверяют доступность портов, ZGrab2 выполняет сканирование, собирая информацию о серверах, их конфигурации и поддерживаемых протоколах. Этот инструмент является частью проекта ZMap и активно используется для исследований в области кибербезопасности и сетевого администрирования.
⬇️ Особенности ZGrab2
- поддержка множества протоколов (HTTP, HTTPS, SSH, FTP, DNS, SMTP, TLS и другие)
- модульная архитектура позволяет настраивать сканирование под конкретные задачи
- высокая скорость работы благодаря асинхронному сканированию
- возможность сохранения результатов в JSON для последующего анализа
⌛ Установка ZGrab2
Для установки ZGrab2 потребуется Go (версия 1.13+)
▪️Клонируем репозиторий
git clone https://github.com/zmap/zgrab2.git
cd zgrab2
▪️Собираем проект
go build
▪️Проверяем
./zgrab2 --h
➡️ Использование
▪️Сканирование HTTP-серверов
Проверим заголовки и SSL-сертификаты веб-сервера
echo "example.com" | ./zgrab2 http --port 443 --use-https --output-file=results.json
▪️Проверка SSH-серверов
Соберем информацию о поддерживаемых алгоритмах
echo "example.com" | ./zgrab2 ssh --port 22 --output-file=ssh_results.json
▪️Комбинируем ZMap (для быстрого поиска хостов) и ZGrab2 (для детального анализа)
zmap -p 443 -o targets.txt
cat targets.txt | ./zgrab2 http --port 443 --use-https --output-file=zgrab_results.json
Результаты сохраняются в JSON, что удобно для автоматической обработки. Пример вывода:
{
"domain": "example.com",
"ip": "93.184.216.34",
"data": {
"http": {
"status_code": 200,
"headers": {
"Server": "nginx",
"Content-Type": "text/html"
},
"tls": {
"version": "TLS 1.3",
"certificate": {
"issuer": "Let's Encrypt"
}
}
}
}
}
