Selon la sagesse populaire, les entreprises doivent équilibrer le coût de la sécurité avec les performances et l’expérience utilisateur. Cette idée implique que la sécurité est une taxe sur chaque interaction numérique. Et pour obtenir une réactivité et des temps de chargement optimaux, la sécurité doit être minimisée. Ou mieux encore, optimisé. Mais est-il possible que l’ajout de sécurité à votre pile d’applications augmente les performances ? Nous avons trouvé que la réponse est oui. Dans ce blog, nous allons explorer comment nous sommes parvenus à cette conclusion et les causes de la dégradation des performances applicatives liées à la sécurité, comment la périphérie peut les atténuer et comment un client a réalisé un gain de performances de 9 %.
Trafic malveillant et votre app web
La plateforme Edgecast, aujourd’hui Edgio, traite des milliards de demandes quotidiennement. Notre moteur de renseignements sur les menaces exploite cette source de données massive pour analyser les schémas de sécurité et mettre à jour les signatures qui alimentent notre pare-feu d’application Web (WAF), notre système de protection contre les bots et d’autres services de sécurité. En moyenne, nous trouvons plus de 16 000 requêtes malveillantes sondant un site Web typique. Ces sondes sont automatisées, recherchant et sondant les applications Web non protégées et les vulnérabilités 24h/24 et 7j/7. Ces requêtes peuvent enrayer vos services, surtout si votre application est déjà soumise à une lourde charge de la part des utilisateurs légitimes.
La suppression du trafic malveillant avant qu’il n’entre dans votre application est une bonne pratique pour améliorer les performances. Si vous utilisez un WAF, vous le faites déjà. Mais la relation à votre origine importe. L’exécution du WAF à la périphérie du CDN garantit que le trafic malveillant est abandonné et ne renvoie pas le proxy à l’origine.
Accélérer les requests malveillants
Un CDN exploite la mise en cache pour réduire la charge sur l’origine. Mais les CDN modernes optimisent également les requêtes de contenu dynamique entre la périphérie du CDN et les serveurs d’origine. Cela s’applique à la fois au trafic malveillant et légitime. La plupart des menaces pour les applications Web ciblent des fonctions dynamiques dans l’application Web, telles que les services de connexion, les requêtes de base de données et les API. À moins qu’ils ne soient filtrés et supprimés, le CDN les traitera comme légitimes, travaillant à accélérer le bon et le mauvais ensemble. En supposant que vous soyez soucieux des performances et que vous utilisiez un CDN pour améliorer l’expérience utilisateur et contrôler les coûts, vos piles d’applications peuvent involontairement optimiser toutes les requêtes, y compris les requêtes malveillantes, ce qui peut dégrader les ressources d’origine – voire les mettre hors ligne.
WAF et latence
Un WAF est conçu pour résoudre le défi mentionné ci-dessus. Les WAF peuvent être déployés à n’importe quel point de l’architecture de l’application. Sa position aura toujours un impact sur les performances globales de votre application, pour le bien ou le mal. Que le WAF soit exécuté sur le serveur lui-même, dans le centre de données en tant qu’appliance séparée, via un service tiers ou intégré dans la structure périphérique ou le CDN, le WAF est une autre couche qui inspecte chaque requête HTTP. La latence et le temps d’aller-retour sont des facteurs, en particulier lorsque plusieurs solutions tierces sont enchaînées. Cela devient de plus en plus courant au fur et à mesure que les entreprises déploient des services WAF, d’atténuation des bots et de protection contre les attaques DDoS.
Déplacer le WAF à la périphérie via un fournisseur de CDN peut permettre des gains de performances immédiats car il est conçu pour s’intégrer à la logique de périphérie, en tirant parti du traitement en ligne pour réduire les sauts.
Architecture WAF
Au niveau de l’architecture, le WAF est comme n’importe quel autre composant de votre pile d’applications. Les performances de l’architecture sont affectées par la conception du WAF, qui inclut la puissance brute, telle que le CPU, la RAM, le SSD, et les composants logiciels, tels que le système d’exploitation et le jeu de règles WAF. De nouvelles menaces sont découvertes quotidiennement. Au fil du temps, ces nouvelles signatures peuvent créer un runtime WAF surchargé avec plus de logique à traiter.
Si l’optimisation des performances est votre objectif, il est essentiel de comprendre l’approche de votre fournisseur WAF. Edgio ne se contente pas d’ajouter de nouvelles signatures à notre WAF. Nous les optimisons pour tirer parti de notre architecture système et les configurons pour qu’ils fonctionnent ensemble efficacement, c’est pourquoi nous avons devancé les principaux logiciels de sécurité source dans les tests de performance. Pour plus de détails, consultez notre article technique « améliorer les performances des applications avec des règles de sécurité plus rapides ».
Étude de cas
Un client potentiel examinait notre plateforme pour améliorer les performances de son site Web. Lors de la validation de concept, notre réseau a montré des gains de performance. Mais il est intéressant de noter qu’un gain de performance supplémentaire de 27 % a été obtenu lorsque le WAF a été activé.
Après une analyse plus approfondie, nous avons découvert que le WAF bloquait les attaques soutenues de la couche 7. Comme l’attaque n’était pas volumétrique, elle n’a pas entraîné de panne catastrophique. Et comme le client n’utilisait pas de WAF, il n’était pas au courant de l’attaque et de sa durée.