
Observatoire de renseignement sur les menaces agrégeant les flux CISA KEV, ThreatFox, URLhaus et MalwareBazaar avec recherche, suivi des modifications et export STIX/CSV/JSONL.
Inspectez les vulnérabilités exploitées et les indicateurs de menace, vérifiez leurs preuves sources et examinez les modifications conservées.
Ouvrir l'Observatoire en direct · Essayer le parcours KEV · Couverture des sources · L'exécuter vous-même
L'Observatoire réunit CISA KEV, ThreatFox, URLhaus et MalwareBazaar dans un espace de travail unique pour analystes. Utilisez-le pour inspecter les enregistrements sources, distinguer les dates des sources des heures de collecte et exporter des résultats bornés de l'état actuel. Les données manquantes, obsolètes, désactivées ou indisponibles restent visiblement étiquetées.
Si la vue sur sept jours ne renvoie aucune correspondance, utilisez CURRENT KEV CATALOG pour inspecter une entrée existante. Un résultat vide réussi, une source obsolète et une lecture indisponible ont des significations différentes. Aucun d'entre eux n'établit que vos systèmes ne sont pas affectés.
Résultat : un enregistrement CVE appuyé par une source que vous pouvez inspecter et référencer, avec la base de dates et les limites de collecte visibles. Ce parcours ne détermine pas si vos propres actifs sont vulnérables.
L'export est un parcours distinct. Commencez dans Pulse, Infrastructure, URLs ou Malware, choisissez une fenêtre temporelle et appliquez la recherche ou les filtres disponibles. Sélectionnez ensuite Export, examinez la sélection des sources et les décomptes de la page visible, choisissez JSONL, CSV, STIX 2.1, du texte défangé ou un manifeste, puis téléchargez le résultat.
Les exports couvrent la page chargée après application de la politique sélectionnée. Examinez les décomptes émis et non pris en charge. Les filtres KEV de l'espace de travail dédié Exploited ne sont pas reportés directement dans l'Export.
L'état actuel des sources, les événements de changement matériel et la télémétrie de récupération restent séparés. L'interface ne substitue jamais d'enregistrements de démonstration ni d'attribution déduite. La collecte est pilotée par la demande ; ce déploiement ne prétend pas à une surveillance continue.
La mise en œuvre et les limitations sont documentées ci-dessous, y compris la couverture des sources, la rétention, la provenance et la sémantique des exports.

Pulse — relations entre sources, santé des sources et analyse de l'état actuel.

Replay — reconstruction bornée par page des transitions NEW, UPDATED et REMOVED conservées.
D'autres surfaces en direct incluent une géographie approximative de l'infrastructure par IP publique et des vues de preuves propriétaires URLhaus / MalwareBazaar. Ces surfaces ne sont volontairement pas représentées par des captures d'écran fictives ou dupliquées dans ce README.
Les captures de production sont des captures d'écran fidèles aux sources, issues de l'Observatoire v1.2.0 en direct. Elles sont recadrées et redimensionnées/compressées pour la présentation ; les preuves affichées, les horodatages, les décomptes, les valeurs d'IOC et les états de l'interface ne sont ni régénérés ni substitués.
Le Worker de production est adossé à Cloudflare D1. Les identifiants des flux restent des secrets Cloudflare Worker côté serveur uniquement et ne sont jamais requis dans le navigateur.
1.2.222.13.0 ou plus récentCe déploiement fonctionne en mode demand-driven. Le dépôt cible désormais directement les Cloudflare Workers standard ; les déclencheurs planifiés ne sont intentionnellement pas activés dans la v1.2.2, de sorte que l'application ne prétend pas à une collecte continue. Un futur ordonnanceur pourra appeler la même opération runIngestionCycle() après une vérification distincte de la correction et du fonctionnement opérationnel.
Le navigateur effectue une demande de maintenance bornée explicite lors de la première utilisation et toutes les cinq minutes tant qu'il reste ouvert :
POST /api/ingest
↓
runIngestionCycle()
↓
configuration → TTL → backoff → D1 lease → fetch → normalize → validate
↓
snapshot cache + current observations + material events + cycle statistics
Les lectures ordinaires sont séparées et locales :
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
Aucune de ces routes GET n'appelle d'adaptateur de source. Si ce projet acquiert ultérieurement un planificateur réellement pris en charge, il pourra appeler la même opération runIngestionCycle() sans créer une seconde implémentation de rafraîchissement.
| Source | Identifiant | TTL | Couverture réelle |
|---|---|---|---|
| CISA KEV | Aucun | 30 minutes | Catalogue validé actuel complet |
| ThreatFox | THREATFOX_AUTH_KEY | 15 minutes | Fenêtre IOC de 24 heures demandée |
| URLhaus | URLHAUS_AUTH_KEY | 15 minutes | 500 derniers enregistrements renvoyés par le point de terminaison récent |
| MalwareBazaar | MALWAREBAZAAR_AUTH_KEY | 15 minutes | 100 derniers enregistrements de métadonnées renvoyés par le point de terminaison |