Dans l'environnement en constante évolution de la cybersécurité, la révélation récente d'une vulnérabilité zero-day dans FortiOS de Fortinet nous a brutalement rappelé le jeu constant du chat et de la souris entre les développeurs et les cybercriminels.
Garder une longueur d'avance sur les menaces potentielles à la sécurité n'est pas seulement une bonne pratique, c'est un impératif. Pour les développeurs, la difficulté réside non seulement dans l’identification des vulnérabilités, mais également dans la manière d'y arriver de manière proactive, surtout lorsqu’il s’agit d’exploits zero-day. Dans ce billet, nous allons explorer comment le monitoring des performances des applications de New Relic APM permet aux développeurs de créer des alertes en cas de vulnérabilité zero-day, et propose ainsi une solution robuste pour améliorer les postures de sécurité sans nécessiter d'analyse approfondie.
Les développeurs sont souvent chargés de gérer l’équilibre délicat entre agilité et sécurité. New Relic reconnaît ces difficultés et propose une boîte à outils complète permettant de rationaliser le processus. Aujourd'hui, nous allons examiner en profondeur deux capacités clés : les conditions et règles d'alerte sur la plateforme New Relic et l'intégration avec la gestion des vulnérabilités. Ces capacités permettent aux développeurs de créer des règles d'alertes ciblées et de contrôler aisément leur posture de sécurité.
Parcourons ensemble ces capacités et la façon dont elles permettent aux développeurs de recevoir des notifications en temps opportun sur des vulnérabilités et expositions courantes (CVE) spécifiques et de toujours bien comprendre l'état de sécurité de leurs applications. Nous découvrirons aussi la magie de la base de données New Relic (NRDB) et de l'onglet Environment Snapshot, où sont méticuleusement enregistrées toutes les modifications, y compris les modifications de la bibliothèque. Accompagnez-nous dans cette aventure de reconnaissance dans le milieu des alertes de vulnérabilité zero-day et libérons le potentiel de New Relic APM pour les développeurs.
Que sont exactement les alertes de vulnérabilités zero-day ?
Avant d'examiner en profondeur les avantages des alertes zero-day, il est important de comprendre ce que sont les alertes zero-day.
Les alertes zero-day sont cruciales dans le développement de logiciels. Imaginez que vous êtes en train de coder et tout à coup, une alerte apparaît : une vulnérabilité zero-day est détectée. Cette vulnérabilité n'est pas comme les autres, car personne ne l'a jamais vue auparavant. Les alertes zero-day sont comme des invités surprise : elles nécessitent une attention immédiate.
Ces alertes vous informent de l’émergence de vulnérabilités ou de menaces de sécurité jusqu’alors inconnues. Contrairement aux problèmes connus qui disposent de correctifs, les vulnérabilités zero-day sont imprévisibles et exigent de prendre rapidement des mesures et d'être vigilant.
Certains développeurs peuvent penser qu'une fois que leur code source a été analysé pour trouver les vulnérabilités au moment du développement, leur travail est terminé. Mais une fois que l'application ou le service est en production, une exposition à une vulnérabilité non détectée lors de l'analyse initiale du code source est révélée — jusqu'à trois ans plus tard en moyenne. Et le repérage et la correction de ces vulnérabilités sont souvent un moment de crise pour de nombreuses organisations.
Les alertes zero-day ne sont pas seulement des notifications, ce sont aussi des appels urgents à l’action. Elles nous rappellent que l'environnement numérique est en constante évolution et nous incitent à rester vigilants et à mettre en place des moyens de défense réactifs. Il nous faut garder une longueur d'avance, anticiper l'inattendu et protéger nos domaines numériques des inconnues. Dans le monde du développement de logiciels, il s'agit des rebondissements de l’intrigue qui nous tiennent en haleine, prêts à affronter les surprises de front.
Les avantages pour les développeurs
En tant que développeurs, l'adoption d'une posture de sécurité proactive n’est pas seulement un choix, c'est un avantage stratégique. New Relic APM et sa gestion des vulnérabilités constituent un duo dynamique qui offre aux équipes de développement toute une panoplie d'avantages, ce qui révolutionne la façon dont nous abordons la sécurité dans le cycle de développement logiciel.
Voici quelques avantages de cette approche :
-
Alertes en temps réel sur les événements zero-day : Les scanners classiques effectuent des scans réguliers et ratent souvent le moment critique où se produit un événement de bibliothèque zero-day. Avec l'APM et la gestion des vulnérabilités, les développeurs reçoivent des alertes en temps réel, ce qui leur permet de répondre rapidement aux vulnérabilités potentielles. Cette capacité dépasse les limites des scanners et offre un niveau d'immédiateté essentiel dans le monde à l'évolution effrénée qu'est celui du développement.
-
Large visibilité sur tout votre environnement : L'agent d'APM agit tel une sentinelle vigilante et apporte une large visibilité sur tout votre environnement. Il va au-delà d'une application individuelle et fournit des informations détaillées sur ce qui est en cours d'exécution, où a lieu l'exécution et quel est l'état de sécurité de milliers d'applications. Cette perspective holistique permet aux développeurs de comprendre globalement l'environnement de leurs applications et dépasse les capacités des outils d'analyse classiques.
-
Évaluation instantanée de l'impact : Imaginez que vous recevez des réponses immédiates à des questions cruciales : où avons-nous été touchés ? Quel impact cette situation a-t-elle eu ? Comment puis-je résoudre cette erreur ? L'APM et la gestion des vulnérabilités fournissent non seulement des alertes, mais permettent également aux développeurs d'évaluer instantanément l'impact. L'automatisation rationalise plus avant le processus, ce qui permet de prendre rapidement et efficacement des décisions et des mesures correctives. Les développeurs peuvent rester informés de l'état des efforts de remédiation attribués à des problèmes spécifiques, ce qui favorise la culture de responsabilité et de transparence.
-
Analyse zero-day en continu : Si les scanners offrent des instantanés ponctuels qui peuvent devenir obsolètes avec les modifications apportées aux bases de code ou aux environnements, l'APM et la gestion des vulnérabilités fournissent une analyse en continu. Chaque modification dans votre environnement est capturée et évaluée en temps réel. Cela garantit que votre posture de sécurité n'est pas un simple instantané, mais un processus continu et adaptatif qui évolue avec votre application.
-
Prévention et collaboration proactives : L'APM et la gestion des vulnérabilités vont au‑delà de la simple détection, ils permettent aux développeurs de prévenir les problèmes de manière proactive. Recevez des notifications pour éviter l'appel d'une bibliothèque spécifique en raison d'un besoin de mise à niveau et évitez ainsi la création du bruit inutile dû à une accumulation de vulnérabilités de bibliothèques associées à plusieurs entités. Cette approche proactive atténue non seulement les risques, mais minimise également le coût élevé de la résolution ultérieure des vulnérabilités.
-
Détection et correction automatique des nouvelles dépendances : Gardez une longueur d’avance en détectant et en corrigeant automatiquement les vulnérabilités des nouvelles dépendances. L'APM et la gestion des vulnérabilités permettent aux développeurs de résoudre les problèmes avant qu'ils ne se propagent, ce qui résout aussi souvent les vulnérabilités avant même que l'équipe de sécurité n'en soit consciente. Ce niveau d'automatisation améliore non seulement la sécurité, mais optimise également les workflows de développement et permet aux équipes de se concentrer sur l'innovation plutôt que sur la lutte contre les problèmes qui se déclarent tel un incendie.
Forts de tous ces avantages substantiels, explorons maintenant les étapes pratiques qui vous permettront de maîtriser ces capacités et de créer des alertes de vulnérabilités zero-day avec New Relic APM, les alertes et l'intelligence appliquée.
Création de règles d'alertes ciblées avec New Relic
En tant que développeurs, il est essentiel d'être vigilants en ce qui concerne la sécurité et New Relic APM est un allié puissant dans cette quête. Grâce aux alertes et aux capacités d'intelligence appliquée, les développeurs peuvent créer de manière transparente des règles d'alerte personnalisées pour recevoir des notifications en temps opportun sur des CVE spécifiques.
Imaginez un scénario dans lequel une CVE critique est identifiée et où une action rapide est nécessaire. New Relic APM vous permet d'accéder à l'onglet des conditions d'alerte, où vous pouvez configurer des conditions personnalisées en fonction de paramètres spécifiques tels que le taux d'erreur, le temps de réponse ou le débit. En intégrant la gestion des vulnérabilités dans ce processus, vous pouvez étendre vos règles d'alerte pour qu'elles couvrent les vulnérabilités, ce qui rend votre réponse de sécurité non seulement rapide, mais également bien adaptée aux caractéristiques uniques de votre application.
Décomposons les étapes pour ce scénario :
- Accédez à Alerts & AI sur la plateforme New Relic :
-
Localisez la section Alert Policies pour accéder aux puissantes capacités d'alerte de la plateforme New Relic.
- Créez une nouvelle règle d'alerte :
-
Définissez une nouvelle règle d'alerte qui est adaptée aux besoins de votre application. Cette règle servira de base à vos règles d’alertes personnalisées.
- Créez une condition d'alerte
-
Donnez-lui un nom “New Zero Day Library Vulnerability”
-
Saisissez la requête NRQL
SELECT count(*) FROM Vulnerability where issueType = 'Library Vulnerability'
-
Définissez les seuils. L'élément important dans cette section est “Open incidents with a:”. Ici, vous indiquez quand déclencher un incident critique. Il est évident que nous souhaitons recevoir des alertes dès que la requête renvoie une valeur supérieure à 0 au moins une fois dans la fenêtre temporelle donnée.
-
Ajoutez des détails. Donnez un nom à votre condition d’alerte et ajustez les autres paramètres comme bon vous semble.
En suivant ces étapes, vous donnez à votre équipe de développement une position proactive contre les vulnérabilités, en recevant des notifications non seulement en temps opportun, mais également alignées précisément sur les exigences de sécurité uniques à votre application.
Étapes suivantes
Voyons maintenant comment New Relic dépasse le simple envoi d'alertes en fournissant un rapport complet de toutes les modifications qui garantit une compréhension en profondeur du paysage de sécurité de votre application.
Pour vous permettre de démarrer encore plus facilement, j'ai créé un référentiel GitHub qui contient un script Terraform pour créer un exemple de règle et de condition d'alerte en utilisant le concept ci-dessus. Par ailleurs, il contient également une requête NerdGraph (l'API GraphQL de New Relic) que vous pouvez utiliser avec l'explorateur GraphiQL de New Relic.
Lancez-vous avec votre compte New Relic gratuit dès aujourd'hui.
Les opinions exprimées sur ce blog sont celles de l'auteur et ne reflètent pas nécessairement celles de New Relic. Toutes les solutions proposées par l'auteur sont spécifiques à l'environnement et ne font pas partie des solutions commerciales ou du support proposés par New Relic. Veuillez nous rejoindre exclusivement sur l'Explorers Hub (discuss.newrelic.com) pour toute question et assistance concernant cet article de blog. Ce blog peut contenir des liens vers du contenu de sites tiers. En fournissant de tels liens, New Relic n'adopte, ne garantit, n'approuve ou n'approuve pas les informations, vues ou produits disponibles sur ces sites.