L’économie numérique mondiale nécessite des interfaces de programmation d’applications (API) pour connecter les services basés sur des applications aux clients, aux consommateurs, aux partenaires et aux employés. Les applications héritées, modernisées et nouvelles évoluent vers des architectures basées sur des API pour accélérer le développement des applications et réduire les délais de mise sur le marché. Le rapprochement des fonctionnalités des applications avec le client pour réduire les frictions est à l’origine des architectures décentralisées et du mouvement API-first.
Malheureusement, les gains d’efficacité obtenus grâce aux API dans le développement d’applications sont éclipsés par le risque qu’elles introduisent dans une entreprise informatique. Les pirates informatiques ont appris qu’il est facile de compromettre les API lorsqu’elles sont légèrement protégées ou non protégées. Personne ne contestera que les API nécessitent des pratiques sécurisées ; cependant, il n’existe pas de consensus industriel sur la meilleure façon de les sécuriser. Voici quelques-unes des principales raisons pour lesquelles les API nécessitent plus de protection que celle qu’elles reçoivent habituellement.
Un nombre croissant de violations de sécurité importantes dues à une mauvaise visibilité et à une mauvaise sécurité des API se produisent et continueront dans un avenir prévisible.1 La course à la numérisation des organisations entraînera la mise en production d’API encore plus mal protégées. De nombreuses organisations tenteront de résoudre les vulnérabilités des API grâce à une meilleure conception et un meilleur codage, mais se retrouveront confrontées aux mêmes failles de sécurité que les applications en général, en partie parce que la sécurité n'est pas une compétence essentielle pour un développeur d'applications classique et que les équipes de sécurité peuvent ne pas être conscientes de toutes les interconnexions tierces au sein de leur environnement.
Le cœur de la prolifération des API est l’absence d’une stratégie holistique incluant la gouvernance et les meilleures pratiques. Le développement d’applications agiles a conduit à plusieurs versions de la même API sans bénéficier du contrôle de version de l’API. Le passage aux microservices donne lieu à une application comprenant plusieurs dizaines d’API.
Les API non gérées créent des API malveillantes, fantômes et zombies. Les API approcheront les 2 milliards d’ici 2030, ce qui aggravera encore le problème.2
Travailler dans un environnement cloud distribué est aujourd’hui la norme. Cependant, l’utilisation d’une passerelle API dédiée comme point d’entrée unique pour contrôler la sécurité présente des limites, notamment des points de défaillance uniques et une dégradation des performances. Les passerelles API étant aujourd’hui un élément essentiel de l’infrastructure API, il est devenu évident que la prolifération des API augmente le déploiement des passerelles API, ce qui conduit à la prolifération des passerelles API.
Les WAF modernes offrent une protection et une sécurité robustes pour les protocoles API, notamment GraphQL et gRPC, et constituent une solution provisoire pour les vulnérabilités logicielles critiques, mais ils n'offrent souvent pas l'observabilité nécessaire des API pour détecter les menaces avancées dans les architectures hybrides et multicloud. De nombreux WAF manquent de fonctionnalités de découverte d'API dynamique, de détection automatisée et d'atténuation des menaces, de test et d'automatisation des spécifications et de mise en œuvre des documents OpenAPI.
Maintenant que nous savons pourquoi les pirates aiment les API, comment pouvons-nous les protéger ?
Les régulateurs ont pris conscience du risque introduit par les API et ont encouragé les entreprises à atténuer leurs risques dans l’ensemble de leurs activités informatiques, y compris auprès des tiers. Les États-Unis Le Département du Trésor et le Bureau de protection financière des consommateurs (CFPB) ont publié des directives strictes à l'intention des entités conformes qui doivent protéger les API. D'un point de vue normatif, l'exigence 6.3.2 de la norme PCI DSS v4 exige la sécurité des API, et la recommandation NIST 800-95 Guide to Secure Web Services depuis 2007 – 800-24 Security Strategies for Microservices-based Application Systems spécifie une gestion sécurisée des API.
Une architecture de sécurité API doit envisager l’intégration à une entreprise informatique distribuée, y compris le multicloud, les périphéries régionales et les niveaux de service. La solution doit pouvoir être déployée sur n’importe quel matériel, environnement virtualisé, Docker, Kubernetes, etc. La solution doit permettre aux politiques de sécurité de suivre l’API à travers son écosystème. Voici un exemple d’architecture de référence pour sécuriser les API.
Les pirates informatiques ont depuis longtemps compris que les API souffrent des mêmes problèmes de sécurité que les applications Web, notamment de faibles contrôles d’authentification et d’autorisation. Ils sont devenus experts dans l’exploitation des vulnérabilités des API, en abusant de la logique métier et en créant des exploits zero-day pour accéder aux entreprises informatiques avec peu de résistance.
Les données personnelles sont la propriété de l’individu, pas d’un fournisseur d’applications ou de services. L’économie numérique favorise le partage ouvert des données. Les API permettent d'accéder à des données et services privés, publics, partenaires et tiers. Les API doivent disposer de technologies de préservation de la confidentialité appliquées pour se conformer aux réglementations sur la confidentialité des données.
Le déploiement d'une solution de sécurité API nécessite une intégration d'infrastructure et des connecteurs, certains personnalisés pour être déployés correctement dans un parc informatique. Comprendre les subtilités du déploiement nécessite une planification architecturale. La sélection d’une solution prête à l’emploi au sein d’une architecture d’entreprise informatique existante réduit le temps de déploiement.
Pour en savoir plus sur la défense contre les attaques API, consultez mon récent rapport commandé par F5, API Security Solution Evaluation Guide . Ce rapport aborde les considérations les plus importantes lors de la sélection d’une solution de protection des API.
Par Tari Schreider, C|CISO, CRISC – Conseillère stratégique, Datos Insights