10 шокирующих инструментов киберразведки, которые изменят вашу защиту

5 ноября 2025 г.

Вступление

В эпоху, когда каждый клик оставляет цифровой след, а киберпреступники становятся всё изощрённее, вопрос о том, насколько безопасны наши данные, стоит острее, чем когда‑либо. Утечки, фишинговые атаки и сканирование уязвимостей – всё это реальность, с которой сталкиваются как крупные корпорации, так и обычные пользователи. Чтобы не стать очередной жертвой, необходимо вооружиться проверенными средствами разведки и анализа. В этой статье я, как технический блогер, соберу под одной крышей лучшие открытые сервисы, которые помогут вам быстро проверять репутацию адресов, доменов и файлов, а также расскажу, как их правильно комбинировать.

И в завершение вступления – небольшое японское хокку, отражающее суть нашей темы:

暗闇に光る
データの影を追う
安全は朝

Перевод: «В темноте светит – преследуем тени данных, безопасность приходит с рассветом».

Пересказ Reddit‑поста своими словами

Недавно в сообществе Reddit появился пост, в котором пользователь собрал список из пятнадцати бесплатных онлайн‑инструментов, полезных для расследования киберинцидентов. Каждый пункт – это ссылка на сервис, способный выполнить конкретную задачу: от проверки, попали ли ваши учётные данные в известные утечки, до глубокого анализа вредоносных файлов. Ниже я расскажу о каждом из них, но сделаю это в более живом и понятном стиле, чтобы даже новичок смог сразу понять, где и как их применять.

1. Have I Been Pwned

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

2. AbuseIPDB

База данных IP‑адресов, замеченных в злонамеренной активности (спам, сканирование, атаки). Пользователь может искать по IP и получать оценку «репутации», а также оставлять свои отчёты.

3. urlscan.io

Онлайн‑сканер URL‑адресов, который открывает страницу в изолированном окружении, фиксирует все запросы, загружаемые скрипты и потенциально опасные элементы.

4. CentralOps Network Tools

Набор сетевых утилит: проверка DNS, WHOIS, трассировка маршрута и многое другое. Бесплатный, но с ограничением количества запросов.

5. VirusTotal

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

6. Hybrid Analysis

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

7. MXToolbox

Набор инструментов для диагностики почтовых серверов: проверка MX‑записей, SPF, DKIM, черные списки.

8. SSL Labs’ SSL Test

Сервис от компании Qualys, который проверяет конфигурацию TLS/SSL на сервере, выявляя слабые протоколы и неправильные сертификаты.

9. OSINT Frame.work

Коллекция открытых источников (OSINT) – ссылки на более чем 200 сервисов, сгруппированных по тематикам: геолокация, социальные сети, доменные данные и пр.

10. CIRCL’s Lookyloo

Инструмент для визуального анализа цепочки запросов, сделанных веб‑страницей, что помогает отследить скрытые редиректы и трекеры.

11. ARIN Whois

База данных регионального интернет‑регистратора Северной Америки. Позволяет узнать владельца IP‑адреса и контактные данные.

12. CVE List

Официальный реестр известных уязвимостей (Common Vulnerabilities and Exposures). Поиск по номеру CVE даёт полную информацию о проблеме и её исправлениях.

13. Shodan

Поисковая система для интернета вещей: сканирует открытые порты, сервисы и устройства, позволяя увидеть, какие сервисы «видимы» из внешней сети.

14. AlienVault Open Threat Exchange (OTX)

Сообщество, где специалисты делятся индикаторами компрометации (IOC) – IP, домены, хеши файлов. Бесплатный доступ к огромному пулу данных.

15. Censys

Платформа, аналогичная Shodan, но с более детализированными сертификатами и метаданными о серверах.

Суть проблемы, хакерский подход и основные тенденции

Главная проблема – информационный разрыв между тем, что знают атакующие, и тем, что способны отследить защитники. Хакеры используют автоматизированные сканеры, публичные базы уязвимостей и «мёртвые» сервисы, чтобы собрать максимум данных о цели. Тенденция роста количества публичных репозиториев IOC (индикаторов компрометации) делает разведку доступной даже новичкам.

С другой стороны, открытые инструменты OSINT позволяют быстро собрать «профиль» любой цели: от IP‑адреса до сертификата сервера. Поэтому важно не только знать, какие сервисы существуют, но и уметь их комбинировать, чтобы получать полную картину.

Детальный разбор проблемы с разных сторон

Техническая сторона

  • Объём данных. По оценкам VirusTotal, каждый день в их систему загружается более 500 000 новых файлов. Это создает огромный массив сигнатур, который может быть использован как защитниками, так и злоумышленниками.
  • Скорость реакции. При обнаружении компрометации важно реагировать в течение минут, иначе ущерб может удвоиться. Инструменты, такие как AbuseIPDB, предоставляют мгновенную оценку репутации IP.
  • Автоматизация. Скрипты, использующие публичные API, позволяют собрать данные о сотнях адресов за один запуск, что ускоряет процесс расследования.

Организационная сторона

  • Недостаток обучения. Многие сотрудники ИТ‑отделов не знакомы с OSINT‑инструментами, полагаясь только на традиционные антивирусы.
  • Отсутствие единой платформы. Информацию часто приходится собирать из разных сервисов, что усложняет процесс анализа.
  • Политика открытых данных. Некоторые организации скрывают свои уязвимости, но большинство публичных баз (CVE, OTX) открыты, что повышает риск массовых атак.

Этическая сторона

Использование открытых сервисов должно соответствовать законодательству о защите персональных данных. Например, массовый запрос WHOIS без согласия может нарушать правила GDPR в Европе.

Практические примеры и кейсы

Рассмотрим два типовых сценария, где перечисленные инструменты позволяют быстро выявить угрозу.

Кейс 1: Фишинговая рассылка

Сотрудник получает письмо с подозрительным ссылкой. Шаги расследования:

  1. Проверить URL в urlscan.io – увидеть, какие скрипты загружаются.
  2. Скопировать домен и запросить репутацию в AbuseIPDB – получить оценку «мало доверия».
  3. Проверить файл, если он был скачан, в VirusTotal – обнаружить известный вредонос.
  4. С помощью OSINT Frame.work найти связанные аккаунты в соцсетях, чтобы понять масштаб кампании.

Кейс 2: Неожиданный открытый порт

Сетевой администратор замечает, что на сервере открыт порт 3389 (RDP). Действия:

  1. Ввести IP‑адрес в Shodan – увидеть, какие сервисы видимы из интернета.
  2. Проверить сертификат сервера в SSL Labs – убедиться, что TLS настроен правильно.
  3. Запросить информацию о владельце IP в ARIN Whois – убедиться, что это действительно ваш диапазон.
  4. Если порт не нужен, закрыть его и добавить правило в брандмауэр.

Экспертные мнения из комментариев

«Я только что нашёл dnsdumpster – потрясающий инструмент для анализа DNS.»

— SolDios

SolDios подчёркивает важность визуального представления DNS‑записей, что помогает быстро увидеть поддомены и связанные IP.

«ARIN покажет только результаты IP‑адресов, но whois.com/whois ищет и домены, выдавая сырой текст WHOIS.»

— SecTechPlus

SecTechPlus указывает на ограниченность ARIN и советует использовать более универсальные сервисы WHOIS для полной картины.

«Нужно добавить threatYeti в этот список – отличный ресурс для построения графов угроз.»

— neeeeerds

threatYeti позволяет визуализировать взаимосвязи между индикаторами компрометации, что упрощает построение модели угроз.

«iplocation.net хорош для геолокации IP, потому что показывает результаты из нескольких баз, повышая точность.»

— SecTechPlus

Множественная проверка геоданных помогает избежать ошибок, когда одна база устарела.

«Можно также упомянуть ipapi.is – отличный сервис для проверки репутации IP и определения, находится ли он в VPN или облаке.»

— incolumitas

ipapi.is полезен при фильтрации трафика от облачных провайдеров и VPN‑сервисов.

Возможные решения и рекомендации

Исходя из анализа, предлагаю следующий набор практических мер:

  • Создать «корзину» OSINT‑инструментов. Сформировать внутренний список сервисов (например, Have I Been Pwned, AbuseIPDB, urlscan.io) и закрепить за каждым сотрудником ответственного за их использование.
  • Автоматизировать запросы. Написать скрипты, которые по расписанию проверяют новые IP‑адреса в AbuseIPDB и новые хеши файлов в VirusTotal, отправляя результаты в систему тикетов.
  • Объединить данные в единой базе. Использовать SIEM‑решение (например, Elastic Stack) для корреляции индикаторов из разных источников.
  • Регулярно обучать персонал. Проводить воркшопы по работе с OSINT, показывая реальные кейсы.
  • Следить за законодательством. При массовом запросе WHOIS использовать сервисы, предоставляющие «доступ без ограничений» только после согласования с юридическим отделом.

Заключение с прогнозом развития

Открытые инструменты OSINT уже стали неотъемлемой частью арсенала как защитников, так и атакующих. В ближайшие годы мы увидим рост интеграции этих сервисов в автоматизированные платформы, а также появление новых методов машинного обучения, способных предсказывать появление новых индикаторов на основе исторических данных. Поэтому инвестировать в обучение персонала и построение гибкой инфраструктуры уже сегодня – это стратегически верный шаг.

Практический пример на Python

Ниже представлен скрипт, который объединяет три популярных сервиса: проверку утечки электронной почты (Have I Been Pwned), репутацию IP‑адреса (AbuseIPDB) и анализ файла (VirusTotal). Скрипт получает результаты и выводит их в удобочитаемом виде.


# -*- coding: utf-8 -*-
"""
Пример скрипта для комбинированного анализа:
1. Проверка, попал ли email в известные утечки (Have I Been Pwned).
2. Оценка репутации IP‑адреса (AbuseIPDB).
3. Анализ файла на наличие вредоносных компонентов (VirusTotal).
"""

import requests
import json
import time

# Константы – замените на свои ключи, если требуется
HIBP_API = "https://haveibeenpwned.com/api/v3/breachedaccount/"
ABUSEIPDB_API = "https://api.abuseipdb.com/api/v2/check"
VT_API = "https://www.virustotal.com/api/v3/files/"

# Токены (для демонстрации оставлены пустыми)
ABUSEIPDB_KEY = "YOUR_ABUSEIPDB_KEY"
VT_KEY = "YOUR_VIRUSTOTAL_KEY"

def check_email(email: str):
    """Проверка email в базе утечек."""
    headers = {"hibp-api-key": "YOUR_HIBP_KEY"}  # При необходимости
    url = HIBP_API + email
    resp = requests.get(url, headers=headers, timeout=10)
    if resp.status_code == 200:
        return resp.json()  # Список утечек
    elif resp.status_code == 404:
        return []  # Не найдено утечек
    else:
        return None

def check_ip(ip: str):
    """Получение репутации IP из AbuseIPDB."""
    headers = {
        "Key": ABUSEIPDB_KEY,
        "Accept": "application/json"
    }
    params = {"ipAddress": ip, "maxAgeInDays": 90}
    resp = requests.get(ABUSEIPDB_API, headers=headers, params=params, timeout=10)
    if resp.status_code == 200:
        return resp.json()["data"]
    else:
        return None

def check_file(file_path: str):
    """Отправка файла в VirusTotal и получение отчёта."""
    # 1. Загрузка файла
    upload_url = "https://www.virustotal.com/api/v3/files"
    headers = {"x-apikey": VT_KEY}
    with open(file_path, "rb") as f:
        files = {"file": (file_path, f)}
        upload_resp = requests.post(upload_url, headers=headers, files=files, timeout=30)
    if upload_resp.status_code != 200:
        return None
    # 2. Получаем идентификатор и ждём завершения анализа
    file_id = upload_resp.json()["data"]["id"]
    analysis_url = f"https://www.virustotal.com/api/v3/analyses/{file_id}"
    while True:
        analysis_resp = requests.get(analysis_url, headers=headers, timeout=10)
        status = analysis_resp.json()["data"]["attributes"]["status"]
        if status == "completed":
            break
        time.sleep(5)  # Ждём 5 секунд перед новой проверкой
    # 3. Запрашиваем детальный отчёт о файле
    report_url = VT_API + file_id
    report_resp = requests.get(report_url, headers=headers, timeout=10)
    if report_resp.status_code == 200:
        return report_resp.json()
    return None

# ------------------- Пример использования -------------------
if __name__ == "__main__":
    # 1. Проверка email
    email = "example@example.com"
    breaches = check_email(email)
    if breaches is None:
        print("Ошибка при запросе к Have I Been Pwned.")
    elif breaches:
        print(f"Электронный адрес {email} найден в следующих утечках:")
        for b in breaches:
            print(f" - {b['Name']} (дата: {b['BreachDate']})")
    else:
        print(f"Электронный адрес {email} не найден в известных утечках.")

    # 2. Проверка IP
    ip = "185.220.101.1"
    ip_info = check_ip(ip)
    if ip_info:
        print(f"\nIP‑адрес {ip} имеет репутацию {ip_info['abuseConfidenceScore']}/100.")
        if ip_info['abuseConfidenceScore'] > 50:
            print("Внимание: высокий риск злоупотребления!")
    else:
        print("\nНе удалось получить данные об IP‑адресе.")

    # 3. Анализ файла
    file_path = "sample.exe"
    vt_report = check_file(file_path)
    if vt_report:
        stats = vt_report["data"]["attributes"]["last_analysis_stats"]
        print(f"\nАнализ файла {file_path}:")
        print(f" - Вредоносных: {stats['malicious']}")
        print(f" - Подозрительных: {stats['suspicious']}")
        print(f" - Чистых: {stats['harmless']}")
    else:
        print("\nНе удалось проанализировать файл.")

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


Оригинал
PREVIOUS ARTICLE