Что такое SpiderFoot и для чего он нужен
SpiderFoot — это open-source платформа для автоматизированной OSINT-разведки (разведки из открытых источников), которая собирает и анализирует данные о целевых объектах из более чем 200 различных источников. Инструмент способен исследовать IP-адреса, домены, email-адреса, имена, телефоны, подсети и ASN, автоматически выявляя связи между найденными данными.Основные сценарии использования SpiderFoot:
- Пентестинг и аудит безопасности — поиск потенциальных векторов атаки через публичную информацию
- Threat Intelligence — сбор данных об угрозах и анализ инфраструктуры злоумышленников
- Проверка цифрового следа компании — выявление утечек корпоративной информации
- OSINT-расследования — комплексный сбор данных о целевых объектах
- Due Diligence — проверка контрагентов и партнеров
Оглавление
- Ключевые возможности и модули
- Установка SpiderFoot на разные ОС
- Настройка API-ключей для максимальной эффективности
- Режимы работы: от базового до профессионального
- Практические примеры использования
- Безопасность и OPSEC при работе
- SpiderFoot vs Maltego и другие альтернативы
- Решение частых проблем
- Часто задаваемые вопросы
Ключевые возможности и модули
SpiderFoot построен на модульной архитектуре — более 200 специализированных модулей собирают данные из различных источников. Каждый модуль отвечает за конкретный тип разведки:1. Базовая сетевая разведка
DNS и доменная информация:- Whois-данные — владельцы доменов, даты регистрации, контактная информация
- DNS-записи — полный анализ A, AAAA, MX, TXT, NS, CNAME записей
- Поиск поддоменов — через bruteforce, словари и пассивные DNS-базы
- Reverse DNS — определение доменов по IP-адресам
2. Поисковые системы и публичные источники
Поисковики:- Google, Bing, DuckDuckGo, Yandex — поиск упоминаний, кэшированных страниц, документов
- Специализированные поисковики — GitHub, Reddit, архивы веб-страниц
- LinkedIn, Twitter, Facebook, Instagram — поиск профилей по email и именам
- Telegram, Discord — поиск публичных каналов и упоминаний
3. Базы утечек и уязвимостей
Проверка скомпрометированных данных:- HaveIBeenPwned — проверка email в известных утечках
- Pastebin и аналоги — поиск паст с упоминанием целей
- Базы утечек — Dehashed, IntelX (требуют платные API)
4. Сетевая разведка и Threat Intelligence
Сканеры интернета:- Shodan — открытые порты, сервисы, уязвимые системы, IoT-устройства
- Censys — SSL-сертификаты, HTTP-заголовки, технологии сайтов
- BinaryEdge — данные о сетевой инфраструктуре
- VirusTotal — проверка доменов и IP на вредоносную активность
- AlienVault OTX — индикаторы компрометации
- AbuseIPDB — база злоумышленных IP-адресов
5. Анализ веб-ресурсов
- Сканирование сайтов — извлечение email, телефонов, метаданных
- SSL/TLS сертификаты — поиск альтернативных доменов через SAN
- Технологии сайта — CMS, фреймворки, библиотеки
- Web-архивы — история изменений сайта через Wayback Machine
Установка SpiderFoot на разные ОС
Установка на Linux (Ubuntu/Debian/Kali)
Вопреки распространенному мнению, SpiderFoot не предустановлен в Kali Linux, но доступен в репозиториях:
Bash:
# Для Kali Linux и Debian-based систем
sudo apt update && sudo apt install spiderfoot
# Запуск после установки
spiderfoot -l 127.0.0.1:5001
Bash:
# Клонирование репозитория
git clone https://github.com/smicallef/spiderfoot.git
cd spiderfoot
# Установка зависимостей Python
pip3 install -r requirements.txt
# Запуск
python3 ./sf.py -l 127.0.0.1:5001
Установка на Windows
Для Windows потребуется предварительно установленный Python 3.6+:
Код:
# 1. Установите Python с python.org
# 2. Откройте PowerShell от администратора
# Клонирование репозитория
git clone https://github.com/smicallef/spiderfoot.git
cd spiderfoot
# Установка зависимостей
pip install -r requirements.txt
# Запуск
python sf.py -l 127.0.0.1:5001
Установка через Docker (универсальный метод)
Docker-контейнер — самый простой способ для любой ОС:
Bash:
# Скачивание и запуск официального образа
docker pull blacklanternsecurity/spiderfoot
docker run -p 5001:5001 blacklanternsecurity/spiderfoot
# Или с сохранением данных
docker run -p 5001:5001 -v /path/to/data:/var/lib/spiderfoot blacklanternsecurity/spiderfoot
Настройка API-ключей для максимальной эффективности
КРИТИЧЕСКИ ВАЖНО: Без API-ключей SpiderFoot использует только 20-30% своих возможностей. Большинство мощных модулей требуют авторизации в external сервисах.Пошаговая настройка API-ключей:
- Запустите веб-интерфейс:
Bash:python3 ./sf.py -l 127.0.0.1:5001
- Откройте в браузере:
http://127.0.0.1:5001
- Перейдите в настройки: Settings → API Key Manager
- Получите бесплатные ключи для основных сервисов:
Обязательные API-ключи (бесплатные):
Сервис | Регистрация | Лимиты бесплатного плана |
---|---|---|
Shodan | shodan.io/register | 100 запросов/месяц |
VirusTotal | virustotal.com/gui/join-us | 500 запросов/день |
HaveIBeenPwned | haveibeenpwned.com/API/Key | 10 запросов/минута |
Hunter.io | hunter.io/users/sign_up | 25 поисков/месяц |
Censys | censys.io/register | 250 запросов/месяц |
AlienVault OTX | otx.alienvault.com | Без ограничений |
AbuseIPDB | abuseipdb.com/register | 1000 запросов/день |
GreyNoise | greynoise.io/signup | 50 запросов/день |
Рекомендуемые платные API (для профессионального использования):
- Shodan Pro ($49/месяц) — неограниченные запросы
- IntelX (от $100/месяц) — доступ к базам утечек
- Dehashed ($15/месяц) — поиск по утечкам паролей
Режимы работы: от базового до профессионального
SpiderFoot предлагает несколько предустановленных режимов работы (Use Cases) и возможность точечного выбора модулей:1. Passive (Пассивная разведка)
Безопасный режим без прямого взаимодействия с целью. Использует только публичные источники и кэши.
Bash:
# CLI запуск
python3 ./sf.py -s example.com -u passive -o passive_scan.json
# Через веб-интерфейс
New Scan → Use Case: "Passive" → Start Scan
2. Footprint (Отпечаток инфраструктуры)
Умеренно активный режим с запросами к целевым ресурсам (robots.txt, sitemap.xml).
Bash:
python3 ./sf.py -s example.com -u footprint
3. Investigate (Расследование угроз)
Проверка IP/доменов по базам угроз и репутационным спискам.
Bash:
python3 ./sf.py -s suspicious-domain.com -u investigate
4. All (Полное сканирование)
НЕ РЕКОМЕНДУЕТСЯ! Запускает все модули, генерирует гигабайты данных.Профессиональный подход: точечный выбор модулей
Bash:
# Только поиск поддоменов и их резолвинг
python3 ./sf.py -s example.com -m sfp_subdomain_enum,sfp_dnsresolve
# Только email и связанные домены
python3 ./sf.py -s example.com -t EMAILADDR,DOMAIN_NAME
# Экспорт в CSV для анализа
python3 ./sf.py -s example.com -u passive -o results.csv -F CSV
Практические примеры использования
Кейс 1: Аудит безопасности корпоративной инфраструктуры
Задача: Проверить, какая информация о компании доступна публично.
Bash:
# Шаг 1: Пассивная разведка основного домена
python3 ./sf.py -s company.com -u passive -o company_passive.json
# Шаг 2: Анализ найденных поддоменов
python3 ./sf.py -s company.com -m sfp_subdomain_enum,sfp_shodan,sfp_censys
# Шаг 3: Проверка email-адресов сотрудников
python3 ./sf.py -s company.com -t EMAILADDR -m sfp_haveibeenpwned,sfp_hunter
Кейс 2: Расследование фишинговой кампании
Задача: Изучить инфраструктуру фишингового сайта.
Bash:
# Комплексный анализ подозрительного домена
python3 ./sf.py -s phishing-site.com -u investigate
# Поиск связанной инфраструктуры через SSL-сертификаты
python3 ./sf.py -s phishing-site.com -m sfp_tlscert,sfp_crt
Кейс 3: OSINT-разведка по email
Задача: Собрать информацию о человеке по email-адресу.
Bash:
# Поиск по email
python3 ./sf.py -s target@example.com -t EMAILADDR
# Поиск в социальных сетях и утечках
python3 ./sf.py -s target@example.com -m sfp_socialprofiles,sfp_haveibeenpwned
Безопасность и OPSEC при работе
Критические правила безопасности
Правило №1: Никогда не сканируйте с личного/рабочего IPЛюбое активное сканирование оставляет следы в логах целевых систем. Ваш IP-адрес будет записан.
Правило №2: Используйте промежуточную инфраструктуру
Bash:
# Вариант 1: Работа через VPN
# Подключитесь к VPN перед запуском SpiderFoot
# Вариант 2: Арендованный VPS
ssh user@vps-server
# Запускайте SpiderFoot на VPS
# Вариант 3: Tor (медленно, но анонимно)
# В настройках SpiderFoot: Settings → Global Settings → Use Tor
- Получите письменное разрешение на тестирование
- Не сканируйте государственные ресурсы
- Учитывайте законы страны размещения целевых систем
Настройка SpiderFoot для работы через Tor
- Установите Tor:
Bash:sudo apt install tor sudo service tor start
- В веб-интерфейсе SpiderFoot:
- Settings → Global Settings
- Enable "Route requests through Tor"
- SOCKS Proxy: 127.0.0.1:9050
- Проверьте анонимность:
Bash:curl --socks5 127.0.0.1:9050 https://check.torproject.org
Рекомендации по скрытности
- Используйте режим "Passive" для первичной разведки
- Растягивайте сканирование во времени (настройка delays)
- Не используйте агрессивные модули без необходимости
- Регулярно меняйте IP-адреса при длительных исследованиях
SpiderFoot vs Maltego и другие альтернативы
Сравнительная таблица OSINT-инструментов
Характеристика | SpiderFoot | Maltego | Recon-ng | theHarvester |
---|---|---|---|---|
Лицензия | Open Source | Freemium | Open Source | Open Source |
Интерфейс | Web + CLI | GUI | CLI | CLI |
Количество модулей | 200+ | 50+ (transforms) | 100+ | 30+ |
Визуализация | Базовая | Отличная | Отсутствует | Отсутствует |
Автоматизация | Высокая | Средняя | Высокая | Высокая |
Сложность освоения | Средняя | Высокая | Средняя | Низкая |
Стоимость Pro | $899/год | $999/год | Бесплатно | Бесплатно |
Когда использовать каждый инструмент
SpiderFoot — когда нужен максимальный охват источников и автоматизация:- Массовый сбор данных
- Автоматизированные проверки безопасности
- Регулярный мониторинг инфраструктуры
- Расследование сложных схем
- Презентация результатов руководству
- Анализ социальных связей
- Интеграция в скрипты
- Кастомные модули
- CLI-автоматизация
- Простые задачи разведки
- Начальный этап пентеста
- Обучение OSINT
Оптимальная связка инструментов
Код:
SpiderFoot (сбор данных) → Экспорт CSV/JSON → Maltego (визуализация) → Отчет
Решение частых проблем
Проблема: "Module failed: sfp_shodan"
Решение:
Bash:
# Проверьте API-ключ
Settings → API Keys → Shodan API Key
# Проверьте лимиты (100 запросов/месяц на бесплатном плане)
# Решение: используйте режим passive или купите Shodan Pro
Проблема: "Connection refused" при запуске веб-интерфейса
Решение:
Bash:
# Проверьте, не занят ли порт
netstat -tulpn | grep 5001
# Используйте другой порт
python3 ./sf.py -l 127.0.0.1:5002
# Для доступа с других машин
python3 ./sf.py -l 0.0.0.0:5001
Проблема: Слишком много данных, браузер зависает
Решение:
Bash:
# Используйте фильтры в веб-интерфейсе
# Или экспортируйте в JSON/CSV для внешнего анализа
python3 ./sf.py -s target.com -u passive -o results.json -q
Проблема: "SSL Certificate Verify Failed"
Решение:
Python:
# Временное решение (НЕ для продакшена!)
# В файле sf.py добавить:
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
Проблема: Медленная работа сканирования
Решение:- Уменьшите количество одновременных модулей: Settings → Global Settings → Thread Count (5-10)
- Отключите медленные модули (например, sfp_torch при работе без Tor)
- Используйте SSD для базы данных SpiderFoot
Часто задаваемые вопросы
Как установить SpiderFoot на Windows 10/11?
Установите Python 3.8+ с официального сайта python.org, затем откройте PowerShell от администратора и выполните:
Код:
git clone https://github.com/smicallef/spiderfoot.git
cd spiderfoot
pip install -r requirements.txt
python sf.py -l 127.0.0.1:5001
Ссылка скрыта от гостей
SpiderFoot vs Maltego — что лучше для начинающих?
SpiderFoot проще в освоении и бесплатен, идеален для автоматизированного сбора данных. Maltego лучше для визуального анализа, но требует больше времени на изучение и стоит $999/год для полной версии. Начните с SpiderFoot, затем освойте Maltego для презентаций.Какие бесплатные альтернативы SpiderFoot существуют?
- Recon-ng — мощный CLI-фреймворк для OSINT
- theHarvester — простой инструмент для поиска email и поддоменов
- Amass — продвинутый поиск поддоменов
- Photon — веб-краулер для OSINT
- Sherlock — поиск username по соцсетям
Можно ли использовать SpiderFoot без API-ключей?
Технически да, но вы получите только 20-30% функционала. Без API-ключей не работают Shodan, VirusTotal, HaveIBeenPwned и другие ключевые модули. Потратьте 30 минут на регистрацию в бесплатных сервисах — это критически важно.Как запустить SpiderFoot в Docker?
Bash:
docker pull blacklanternsecurity/spiderfoot
docker run -p 5001:5001 -v ~/spiderfoot:/var/lib/spiderfoot blacklanternsecurity/spiderfoot
Ссылка скрыта от гостей
в браузере.Законно ли использовать SpiderFoot?
Сбор публичной информации (OSINT) законен. Однако активное сканирование чужих систем без разрешения может нарушать законы о компьютерных преступлениях. Всегда получайте письменное разрешение перед сканированием корпоративных сетей.Как экспортировать результаты из SpiderFoot в Excel?
Bash:
# Экспорт в CSV
python3 ./sf.py -s target.com -o results.csv -F CSV
# Открыть в Excel или конвертировать через pandas:
python3 -c "import pandas as pd; pd.read_csv('results.csv').to_excel('results.xlsx')"
Почему SpiderFoot не находит поддомены?
Проверьте:- Включены ли модули sfp_subdomain_enum, sfp_sublist3r
- Есть ли API-ключи для Shodan, Censys
- Используйте режим "Footprint" вместо "Passive"
- Попробуйте специализированные инструменты: Amass, Subfinder
Как настроить SpiderFoot для работы через прокси?
В веб-интерфейсе: Settings → Global Settings → HTTP ProxyФормат:
http://user:pass@proxy.server:8080
или для SOCKS: socks5://127.0.0.1:9050
Можно ли автоматизировать регулярные сканирования?
Да, через cron и CLI:
Bash:
# Добавить в crontab для ежедневного сканирования
0 2 * * * /usr/bin/python3 /path/to/sf.py -s example.com -u passive -o /path/to/reports/scan_$(date +\%Y\%m\%d).json -q
Заключение
SpiderFoot — мощнейший инструмент в арсенале специалиста по кибербезопасности и OSINT-аналитика. Его главные преимущества: автоматизация рутинных задач, огромное количество источников данных и гибкая настройка под конкретные задачи.Чек-лист для эффективной работы с SpiderFoot:
- [ ] Установлен SpiderFoot последней версии
- [ ] Настроены минимум 5-7 API-ключей (Shodan, VirusTotal, HaveIBeenPwned обязательно)
- [ ] Изучены основные режимы работы (Passive, Footprint, Investigate)
- [ ] Настроена работа через VPN или прокси
- [ ] Отработан процесс экспорта данных для анализа
- [ ] Изучены правовые аспекты использования в вашей юрисдикции
- [ ] Создан набор шаблонов для типовых задач
- [ ] Настроена интеграция с другими инструментами (Maltego, Recon-ng)
Освоение инструментов OSINT-разведки — важный шаг в карьере специалиста по информационной безопасности. Если вы нацелены на профессиональный рост в области пентестинга, рекомендую изучить материал о подготовке к сертификации OSCP, где навыки OSINT-разведки играют ключевую роль.
Делитесь в комментариях своими кейсами использования SpiderFoot и любимыми модулями. Какие источники данных вы считаете наиболее полезными?
Последнее редактирование модератором: