Console et flotte

Export OpenTelemetry (Enterprise)

Une flotte Enterprise peut transmettre son flux de détection à la supervision que vous exploitez déjà : un événement OpenTelemetry (OTLP) par changement évalué, diffusé du daemon vers votre propre collecteur. Il reste dans votre réseau et ne touche jamais le cloud PoisonZero. Cette page liste ce qui est exporté, où cela va, et comment cela se configure.

~7 min de lecture · Console et flotte

Ce que c'est

Un export OpenTelemetry rattaché au propriétaire qui transmet chaque événement de détection à un collecteur ou un SIEM que vous exploitez :

  • OTLP standard : pas d'agent propriétaire ni d'intégration sur mesure ; tout collecteur ou backend compatible OpenTelemetry fonctionne.
  • Noms d'attributs fixes sous l'espace poisonzero.*, plus les attributs miroir security_rule.*, pour que tableaux de bord et alertes restent stables quand le modèle ou la flotte changent.
  • Fonction Enterprise, en mode Cloud comme en mode Privé.
  • Fail-soft : si le collecteur est injoignable, l'export réessaie en arrière-plan ; la détection et l'application ne sont jamais bloquées.
Par défaut, aucun contenu ne quitte le daemon : les événements portent verdict, niveau de menace, décision et version du modèle. Un extrait de contenu n'est joint qu'au niveau de menace le plus élevé et seulement si vous relevez le niveau de détail localement (voir ci-dessous).

Ce qui est exporté

Un événement (poisonzero.detection) est émis par changement évalué. Voici l'ensemble complet des attributs, avec la clé OTLP, ce qu'il porte et quand il est renseigné :

AttributDescriptionQuand renseigné
poisonzero.verdict.labelLe libellé du verdict de détection, benign ou maliciousToujours
poisonzero.verdict.dangerLa valeur de danger calculée dans l'intervalle 0 à 1Toujours
poisonzero.verdict.categoryLa catégorie d'attaque : direct-injection, exfiltration, meta-attack, role-play, subtle ou benignQuand une catégorie est définie
poisonzero.verdict.danger_bandUne bande de danger grossière pour regrouper sans le score brutQuand une bande est définie
poisonzero.threat_levelNiveau de gravité, low, medium ou high ; le champ sur lequel alerterToujours
poisonzero.evidence.presentSi une preuve étayée a été trouvée pour le verdict (booléen)Toujours
poisonzero.evidence.groundedSi cette preuve est étayée dans le changement (booléen)Quand une preuve est présente
poisonzero.evidence.hashSHA-256 de l'extrait de preuveQuand une preuve est présente
poisonzero.evidence.lengthLongueur de l'extrait de preuveQuand une preuve est présente
poisonzero.evidence.quoteL'extrait de preuve lui-même, caviardé ou textuel selon le niveau de détailUniquement au niveau redacted ou full, et seulement pour un événement de niveau de menace high
poisonzero.chunk.indexIndex de la fenêtre évaluée quand le changement a été découpéQuand le changement a été fenêtré
poisonzero.chunk.countNombre de fenêtres évaluéesQuand le changement a été fenêtré
poisonzero.file.path_hashSHA-256 du chemin du fichier ; le chemin lui-même n'est jamais émis au niveau par défautToujours
poisonzero.model.tierLe palier du modèle de détectionQuand le palier du modèle est défini
poisonzero.model.versionLa version du modèle de détectionQuand la version du modèle est définie
poisonzero.model.sha256SHA-256 de l'artefact du modèle de détectionQuand l'empreinte du modèle est définie
poisonzero.decision.actionCe que le daemon a fait : flag, detected_kept, quarantine_reversible ou revert (allow n'est jamais exporté)Toujours
poisonzero.decision.reason_codePourquoi, le cas échéant : malformed_output, degraded_score ou ungrounded_evidenceQuand un motif s'applique
file.pathLe chemin du fichier, caviardé ou textuel selon le niveau de détail, dans le champ standard des conventions sémantiquesUniquement au niveau redacted ou full, et seulement pour un événement de niveau de menace high
security_rule.nameL'identité du modèle, reflétée dans l'espace de noms sécurité d'OpenTelemetry pour les SIEM génériquesToujours
security_rule.versionLa version du modèle, reflétée dans l'espace de noms sécuritéQuand la version du modèle est définie
security_rule.categoryLa catégorie d'attaque, reflétée dans l'espace de noms sécuritéQuand une catégorie est définie
security_rule.uuidL'identifiant de l'artefact du modèle, reflété dans l'espace de noms sécuritéQuand l'empreinte du modèle est définie

Où cela va

Le flux va du daemon à votre collecteur en OTLP/HTTP. Tout collecteur ou backend compatible OpenTelemetry fonctionne, par exemple :

  • Grafana
  • Datadog
  • Splunk
  • Elastic
  • Votre propre collecteur OpenTelemetry
Il ne touche jamais le cloud PoisonZero. Le flux OTLP va du daemon à votre collecteur, point final, et fonctionne sans aucune connectivité cloud, daemons privés et on-prem inclus.

Niveau de détail

Vous décidez localement, par profil d'export, ce que porte chaque événement. Hashes est le niveau par défaut :

NiveauCe qu'il ajoute
hashes (par défaut)Empreintes, énumérations et nombres seulement ; pas de chemin de fichier ni d'extrait de preuve.
redactedAjoute un chemin de fichier caviardé et un extrait de preuve caviardé.
fullAjoute l'extrait de preuve textuel : une décision locale délibérée.
Le contenu (chemin de fichier ou extrait de preuve) n'est joint que pour un événement d'empoisonnement prouvé (niveau de menace high), jamais pour les bandes inférieures. Le niveau full n'est atteignable que depuis un profil local, jamais via la configuration à distance, et le mode Privé reste toujours à hashes.

Configuration

L'export se configure par daemon via un profil d'export nommé, le même schéma que les profils d'inférence BYO. Les variables d'environnement OpenTelemetry standard sont prises en compte :

VariableEffet
OTEL_EXPORTER_OTLP_LOGS_ENDPOINTPoint d'accès OTLP logs complet, utilisé tel quel (aucun chemin ajouté).
OTEL_EXPORTER_OTLP_ENDPOINTPoint d'accès de base ; le daemon ajoute le chemin standard /v1/logs.
OTEL_EXPORTER_OTLP_HEADERSEn-têtes du collecteur au format key=value,key=value (aussi la variante _LOGS_HEADERS).

Pour une flotte, le profil est géré de façon centralisée via une API d'administration dédiée (/v1/otel-config, GET / PUT / DELETE). Les en-têtes d'authentification du collecteur sont conservés dans le gestionnaire de secrets du backend, jamais intégrés à l'image du daemon.

Le mode Privé ignore toute configuration de collecteur distant et n'accepte qu'un collecteur en loopback ou .local avec empreintes imposées, si bien qu'un déploiement privé peut tout de même émettre de la télémétrie vers un puits strictement local, sans ouvrir de voie d'egress distante.

À lire ensuite

L'egress du daemon qu'il n'utilise pas : exigences réseau et pare-feu. Ce que le flux assisté par le cloud envoie pour l'évaluation : ce que le mode Cloud envoie.

Est-ce utile ?

Les événements de détection, dans la pile que vous exploitez déjà.

OpenTelemetry standard, noms d'attributs fixes, et le flux ne quitte jamais votre réseau. Une fonction Enterprise.

Sign me up