5 points par lemonmint 2024-12-11 | Aucun commentaire pour le moment. | Partager sur WhatsApp
  • Un outil d’instrumentation automatique sûr et fiable pour les applications Go, développé par Datadog
  • Insère l’instrumentation à la compilation afin de minimiser la surcharge à l’exécution
  • Protège l’application grâce à des fonctionnalités de RASP
  • Modifie le code source pendant la compilation pour insérer automatiquement l’instrumentation destinée au traçage Datadog APM
  • Protège l’application contre les vulnérabilités courantes grâce à la fonctionnalité Exploit Prevention de Datadog Application Security Management

Fonctionnement

  • S’intègre à la toolchain Go pour analyser et modifier le code source pendant la compilation.
  • Manipule le code au niveau de l’Abstract Syntax Tree (AST) afin que le compilateur Go valide tous les changements et effectue la vérification des types.
  • Évite les erreurs pouvant survenir lors de la modification directe du binaire compilé, tout en permettant un accès sans restriction à l’ensemble du comportement de l’application.
  • Le code modifié passe par les optimisations du compilateur Go, ce qui réduit la surcharge à l’exécution.
  • Insère des directives pragma Go //line dans le code source modifié afin que les numéros de ligne ne soient pas affectés par les changements et que les traces de pile générées par l’application instrumentée pointent vers les bons emplacements dans le code source d’origine.

Pourquoi utiliser l’instrumentation à la compilation

  • Sécurité, fiabilité, qualité des données : l’instrumentation à la compilation produit des données plus sûres et plus fiables que le patching binaire ou eBPF.
  • Automatisation : le patching binaire et eBPF offrent un niveau élevé d’automatisation, mais Orchestrion nécessite des modifications du processus de build ainsi qu’un redéploiement de l’application.
  • Surcharge de performance : eBPF peut entraîner une surcharge liée aux changements de contexte entre le noyau et l’espace utilisateur. Orchestrion insère l’instrumentation à la compilation pour minimiser la surcharge à l’exécution.
  • Environnements pris en charge : eBPF est limité à Linux, tandis qu’Orchestrion prend en charge des environnements variés.
  • Fonctionnalités globales : eBPF a des capacités limitées, alors qu’Orchestrion fonctionne au niveau du code et offre davantage de fonctionnalités.

Orchestrion pour la sécurité

  • Met en œuvre des fonctionnalités de RASP en insérant une instrumentation capable de modifier le flux de contrôle du programme au niveau du code.
  • Permet à l’application de se protéger elle-même contre des vulnérabilités courantes comme l’injection SQL ou l’inclusion de fichiers locaux.
  • Peut remplacer complètement certaines API par d’autres, ce qui évite aux développeurs d’avoir à faire transiter des valeurs de contexte dans toutes les couches de logique métier pour chaîner le contexte de traçage.

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.