
Обсерватория threat intelligence, агрегирующая потоки данных CISA KEV, ThreatFox, URLhaus и MalwareBazaar, с поиском, отслеживанием изменений и экспортом в STIX/CSV/JSONL.
Изучайте эксплуатируемые уязвимости и индикаторы угроз, проверяйте их исходные доказательства и просматривайте сохранённые изменения.
Открыть работающую Обсерваторию · Попробуйте обзор KEV · Покрытие источников · Запустите самостоятельно
Обсерватория объединяет CISA KEV, ThreatFox, URLhaus и MalwareBazaar в едином рабочем пространстве аналитика. Используйте её для изучения записей источников, различения дат источников и времени сбора, а также для экспорта ограниченных результатов текущего состояния. Отсутствующие, устаревшие, отключённые или недоступные данные остаются явно помеченными.
Если представление за семь дней не возвращает совпадений, используйте CURRENT KEV CATALOG, чтобы изучить существующую запись. Успешный пустой результат, устаревший источник и недоступное чтение имеют разные значения. Ни один из них не устанавливает, что ваши системы не затронуты.
Результат: запись CVE с подтверждением из источника, которую можно изучить и на которую можно сослаться, с видимой датой основания и ограничениями сбора. Этот рабочий процесс не определяет, уязвимы ли ваши собственные активы.
Экспорт — это отдельный рабочий процесс. Начните в Pulse, Infrastructure, URLs или Malware, выберите временное окно и примените доступный поиск или фильтры. Затем выберите Export, просмотрите выбор источников и счётчики видимой страницы, выберите JSONL, CSV, STIX 2.1, дефангированный текст или манифест и скачайте результат.
Экспорт охватывает загруженную страницу после применения выбранной политики. Просмотрите счётчики выданных и неподдерживаемых записей. Фильтры KEV специализированного рабочего пространства Exploited не переносятся напрямую в Export.
Текущее состояние источника, события материальных изменений и телеметрия выборки остаются раздельными. Интерфейс никогда не подменяет демонстрационными записями или предполагаемой атрибуцией. Сбор выполняется по запросу; это развёртывание не заявляет о непрерывном мониторинге.
Реализация и ограничения описаны ниже, включая покрытие источников, хранение, происхождение и семантику экспорта.

Pulse — межысточниковые связи, состояние источников и анализ текущего состояния.

Replay — ограниченная страницей реконструкция сохранённых переходов NEW, UPDATED и REMOVED.
Дополнительные работающие поверхности включают приблизительную географию инфраструктуры публичных IP-адресов и собственные представления доказательств URLhaus / MalwareBazaar. Эти поверхности намеренно не представлены в этом README заполнителями или дублированными скриншотами.
Производственные снимки — это сохраняющие источник скриншоты из работающей Обсерватории v1.2.0. Они обрезаны и изменены в размере/сжаты для презентации; отображаемые доказательства, временные метки, счётчики, значения IOC и состояния интерфейса не перегенерируются и не подменяются.
Production Worker работает на Cloudflare D1. Учётные данные фидов остаются серверными секретами Cloudflare Worker и никогда не требуются в браузере.
1.2.222.13.0 или новееЭто развёртывание работает в режиме demand-driven. Репозиторий теперь ориентирован непосредственно на стандартные Cloudflare Workers; запланированные триггеры намеренно не включены в v1.2.2, поэтому приложение не заявляет о непрерывном сборе. Будущий планировщик сможет вызывать ту же операцию runIngestionCycle() после отдельной проверки корректности и эксплуатационной проверки.
Браузер выполняет явный ограниченный запрос на обслуживание при первом использовании и каждые пять минут, пока открыт:
POST /api/ingest
↓
runIngestionCycle()
↓
configuration → TTL → backoff → D1 lease → fetch → normalize → validate
↓
snapshot cache + current observations + material events + cycle statistics
Обычные чтения выполняются отдельно и локально:
GET /api/observations → D1 current state, scoped before pagination
GET /api/search → D1 current state, scoped before pagination
GET /api/kev → D1 current CISA catalog
GET /api/events → D1 material change ledger
GET /api/geo → local observations + bounded cached IP enrichment
Ни один из этих GET-маршрутов не вызывает адаптер источника. Если в будущем в проекте появится действительно поддерживаемый планировщик, он сможет вызывать ту же операцию runIngestionCycle(), не создавая вторую реализацию обновления.
| Источник | Учётные данные | TTL | Фактическое покрытие |
|---|---|---|---|
| CISA KEV | Нет | 30 минут | Полный текущий проверенный каталог |
| ThreatFox | THREATFOX_AUTH_KEY | 15 минут | Запрошенное 24-часовое окно IOC |
| URLhaus | URLHAUS_AUTH_KEY | 15 минут | Последние 500 записей, возвращённых эндпоинтом recent |
| MalwareBazaar | MALWAREBAZAAR_AUTH_KEY | 15 минут | Последние 100 записей метаданных, возвращённых эндпоинтом |
Покрытие отображается по каждому источнику. API с ограниченной выборкой никогда не представляются как полные каталоги.
Привязка DB владеет отдельными наборами данных: