La sécurité des API fait référence aux pratiques et procédures qui protègent les interfaces de programmation des applications (API) contre les abus, les attaques de bots malveillants et d'autres menaces pour la cybersécurité. Il s'agit d'un sous-ensemble de la sécurité web, mais qui se concentre spécifiquement sur les API, qui sont de plus en plus essentielles à la gestion informatique des entreprises.1
Les API servent désormais d'éléments constitutifs de la transformation numérique, permettant aux entreprises d’offrir des services aux développeurs et partenaires externes. Étant donné que les API orchestrent la communication et l’échange de données entre les applications, elles peuvent faciliter des expériences utilisateur plus connectées, étendre la portée globale de l’entreprise et favoriser une innovation technologique qui repousse les limites. Les API optimisent également l’intégration des services afin que les entreprises puissent s’adapter rapidement à l’évolution du marché et aux demandes des clients.
Mais la prolifération des API s’accompagne souvent de problèmes de sécurité.
Les API se situent entre les ressources informatiques d’une organisation et les développeurs de logiciels tiers, ou entre les ressources informatiques et les individus, et fournissent des données et des informations aux points de terminaison. Ces derniers étant exposés au monde extérieur, ils peuvent faire des API une cible lucrative pour divers types d’attaques.
L’évolution de la gestion et de la sécurité des API est intrinsèquement liée à l’évolution des API elles-mêmes. Les premières API étaient principalement axées sur la communication inter-processus au sein d’un système unique. La sécurité (ou l’absence de sécurité) était donc moins préoccupante, car la communication était limitée à une seule machine.
Cependant, avec l’avènement de l’Internet des objets (IdO) et des architectures de microservices cloud natives, les API se sont développées pour permettre une communication transparente et un routage des appels entre les applications et dans les environnements DevOps. Une API moderne et de haute qualité (telle que REST (Representational State Transfer) et SOAP (Simple Object Access Protocol)), permet d’orchestrer l’intégration des applications, de spécifier les formats de données et de dicter les types d’appel, les procédures et les conventions.
Les API Web (GraphQL, API REST et API SOAP, en particulier) ont changé la donne en élargissant leurs fonctionnalités pour inclure des capacités d’intégration de grande envergure à travers une myriade de réseaux complexes.
Mais comme les technologies avancées dépendent fortement des points de technologie API pour leur fonctionnalité, les entreprises et les équipes de sécurité doivent implémenter des mesures de sécurité robustes pour protéger les données et les services Web et, en fin de compte, tirer le meilleur parti des ressources informatiques.
S'ils ne sont pas correctement sécurisés, les terminaux API peuvent permettre à des pirates d'obtenir un accès non autorisé à des données sensibles, de perturber les opérations de service, ou les deux, avec des conséquences potentiellement dévastatrices.En voici les exemples les plus courants :
Dans une économie numérique dynamique, les API sont essentielles à la réactivité des entreprises, mais leur nature ouverte peut présenter des risques importants pour la sécurité des données. Les violations de la sécurité des API ont entraîné des fuites massives de données, même pour de grandes entreprises réputées comme John Deere, Experian et Peloton.2
Et dans un environnement technologique aussi mondialisé, les violations de la sécurité menacent tous les grands fournisseurs de services, quel que soit leur secteur d’activité ou leur emplacement géographique. Par exemple, en 2022, une attaque API contre la société de télécommunications australienne Optus a révélé les noms, les numéros de téléphone, les détails du passeport et les informations relatives au permis de conduire de près de 10 millions de clients.3
Ces incidents soulignent l’importance de la protection des API et ont accéléré le développement de stratégies et d’outils de sécurité des API.
La mise en œuvre de protocoles de sécurité API stricts protège les données, les applications et les services affichés par les terminaux de l’API, tout en veillant à ce qu’ils soient disponibles pour les utilisateurs légitimes. La sécurité des API ne se limite pas à la protection des terminaux. Elle privilégie également la sécurité des interactions réseau telles que les transmissions de données, les demandes des utilisateurs et les communications inter-applications tout au long du cycle de vie de l’API.
Voici quelques-unes des solutions de sécurité API les plus courantes pour renforcer les infrastructures informatiques :
L’authentification est le processus de vérification de l’identité d’un utilisateur, d’un système ou d’un processus. Dans le contexte des API, elle fait référence à l’utilisation de protocoles d’authentification des utilisateurs tels que OAuth 2.0, les clés API et les spécifications JWT pour s’assurer qu’un demandeur est bien celui qu’il prétend être.
En revanche, l’autorisation est le processus de vérification de ce à quoi un utilisateur authentifié a accès. Une fois l’utilisateur authentifié, les contrôles d’accès basés sur les rôles doivent limiter l’accès de l’utilisateur aux ressources dont il a besoin ou qu’il demande.
Avec le chiffrement, le texte brut et d’autres types de données sont convertis d’une forme lisible en une version codée qui ne peut être décodée que par une entité disposant d’une clé de déchiffrement. En utilisant des technologies de chiffrement telles que la sécurité de la couche de transport (TLS), la connexion SSL et les protocoles de chiffrement TLS, les équipes peuvent s’assurer que le trafic de l’API ne sera pas intercepté ou modifié par des acteurs malveillants ou des utilisateurs non autorisés.
Les protocoles de validation des entrées protègent les API contre les données malveillantes, telles que les attaques par injection SQL et les scripts intersites, en s’assurant que les entrées répondent à certains critères (longueur, type, format, plage, etc.) avant d’être traitées. L’utilisation de pare-feu d’applications Web (WAF) et la validation de schémas XML ou JSON peuvent aider les équipes de sécurité à automatiser les processus de validation, en analysant de manière préventive les requêtes entrantes et en bloquant le trafic malveillant avant qu’il ne soit transmis au serveur.
La limitation du débit sécurise les ressources de l’API contre les attaques par force brute et les attaques DoS en limitant le nombre d’appels qu’un utilisateur ou une adresse IP peut effectuer dans un laps de temps donné. Elle garantit que toutes les demandes d’API sont traitées rapidement et qu’aucun utilisateur ne peut submerger le système de demandes nuisibles.
À l’instar de la limitation du débit, la régulation restreint le nombre d’appels API reçus par un système. Cependant, au lieu d’opérer au niveau de l’utilisateur/client, elle agit au niveau du serveur/réseau. Elle limite et contingente la bande passante du système de back-end de l’API en limitant l’API à un certain nombre d’appels, de messages, ou les deux, par seconde.
Les en-têtes de sécurité peuvent être particulièrement efficaces pour prévenir les attaques par détournement de clics. L’en-tête « content-security-policy », par exemple, indique au navigateur les ressources qu’il peut demander au serveur. L’en-tête « x-content-type-option » empêche les navigateurs d’essayer de modifier les types de contenu MIME-sniff, et l’en-tête « strict-transport-security » impose des connexions sécurisées (HTTP sur SSL/TLS) au serveur.
L'installation d'API Gateways est l'un des moyens les plus simples de restreindre l'accès aux API et d'ajouter un niveau supplémentaire de sécurité au réseau, en particulier dans le cas d'API ouvertes. Un API Gateway agit comme un point d'entrée unique pour toutes les demandes d'API qu'un système reçoit, en normalisant les interactions API et en offrant des fonctions de sécurité telles que la mise en cache, l'analyse, la composition d'API, la limitation de débit, le chiffrement, l'enregistrement et le contrôle d'accès.
La tenue de journaux d’audit complets et à jour, ainsi que leur révision fréquente, permettent aux entreprises de suivre l’accès aux données et leur utilisation, et d’enregistrer chaque demande d’API. Compte tenu de la complexité des écosystèmes d’API, le suivi de l’activité des API peut nécessiter beaucoup de travail, mais les procédures d’audit et d’enregistrement peuvent faire gagner du temps aux équipes qui doivent revenir sur leurs pas à la suite d’une violation de données ou d’un manquement aux règles de conformité.
La gestion proactive des erreurs dans les environnements API peut empêcher les cybercriminels de révéler des informations sensibles sur les processus API. Idéalement, toute erreur de l’API renvoie des codes d’état HTTP qui indiquent de manière générale la nature de l’erreur, fournissant ainsi un contexte suffisant pour que les équipes puissent comprendre et résoudre le problème sans risquer une exposition excessive des données.
Comme pour toute application logicielle ou tout système, une surveillance et une maintenance vigilantes en temps réel sont essentielles pour maintenir la sécurité des API. Surveillez toute activité inhabituelle sur le réseau et mettez à jour les API avec les derniers correctifs de sécurité, les corrections de bogues et les nouvelles fonctionnalités.
Les organisations devraient également adopter des normes de sécurité opportunes telles que les recommandations de sécurité des API de l'Open Web Application Security Project (OWASP). La liste OWASP des 10 meilleures solutions de sécurité pour les API, par exemple, offre un cadre permettant de comprendre et d'atténuer les menaces les plus critiques et les plus courantes en matière de sécurité des API, telles que l'authentification erronée, l'affectation de masse et la falsification des requêtes côté serveur.
Chaque nouvelle version d’un logiciel d’API est accompagnée de mises à jour de sécurité et de corrections de bogues qui comblent les lacunes de sécurité des versions antérieures. Mais sans pratiques de versions adéquates, les utilisateurs peuvent accidentellement (ou intentionnellement) déployer une version obsolète de l'API et mettre en danger des données sensibles. Des pratiques attentives en matière de version et de documentation permettent aux entreprises d'accélérer le développement des API et d'éliminer progressivement les anciennes versions sans perturber les services, en poussant les utilisateurs vers des itérations plus récentes et plus sûres.
Par exemple, si une équipe découvre une violation de la sécurité dans la version 1 d’une API, elle peut la corriger dans la deuxième. Grâce à la gestion des versions, les équipes chargées de la sécurité peuvent encourager les utilisateurs à passer de la version 1 à la version 2 à leur rythme, tout en indiquant clairement dans la documentation relative à la version que la version 1 présente une faille de sécurité connue.
Les tests de sécurité exigent que les développeurs soumettent des requêtes standard à l’aide d’un client d’API afin d’évaluer la qualité et l’exactitude des réponses du système. La réalisation de tests de sécurité réguliers pour identifier et combler les lacunes de sécurité aide les équipes à corriger les vulnérabilités de l’API avant que les auteurs d’attaques n’aient la possibilité de les exploiter.
Testez IBM API Connect grâce à un essai gratuit ou contactez nos experts pour discuter de vos besoins. Que vous soyez prêt à optimiser votre gestion des API ou que vous souhaitiez en savoir plus, nous sommes là pour vous accompagner dans votre transformation numérique.
Découvrez tout le potentiel de vos processus d’intégration avec des solutions alimentées par l’IA. Prenez rendez-vous avec nos experts ou explorez notre documentation produit pour vous lancer.
Dynamisez votre activité avec les solutions de messagerie sécurisées et performantes IBM MQ. Commencez votre essai gratuit ou contactez nos experts pour découvrir comment IBM MQ peut transformer vos opérations.
Transférez des fichiers plus rapidement et en toute sécurité, quelle que soit leur taille ou la distance du transfert. Essayez IBM Aspera dès aujourd’hui et rationalisez vos workflows de données avec une efficacité à grande vitesse.
Intégrez vos applications et automatisez le travail avec la plateforme multicloud hybride IBM WebMethods.
Libérez le potentiel de votre entreprise avec les solutions d’intégration IBM qui connectent les applications et les systèmes pour fournir un accès rapide et sécurisé aux données critiques.
Déverrouillez de nouvelles fonctionnalités et stimulez l’agilité de votre entreprise grâce aux services de conseil d’IBM Cloud. Découvrez comment co-créer des solutions, accélérer la transformation numérique et optimiser les performances grâce à des stratégies de cloud hybride et à des partenariats d’experts.
1 Research Brief: The Urgency of Addressing API Security in an Application Security Program, Enterprise Strategy Group, 16 octobre 2023.
2 On the Radar: Wib secures APIs throughout their full lifecycles, Omdia, 1er septembre 2023.
3 The next big API security breach looms: here’s how to prepare, SC Magazine, 19 octobre 2023.
IBM web domains
ibm.com, ibm.org, ibm-zcouncil.com, insights-on-business.com, jazz.net, mobilebusinessinsights.com, promontory.com, proveit.com, ptech.org, s81c.com, securityintelligence.com, skillsbuild.org, softlayer.com, storagecommunity.org, think-exchange.com, thoughtsoncloud.com, alphaevents.webcasts.com, ibm-cloud.github.io, ibmbigdatahub.com, bluemix.net, mybluemix.net, ibm.net, ibmcloud.com, galasa.dev, blueworkslive.com, swiss-quantum.ch, blueworkslive.com, cloudant.com, ibm.ie, ibm.fr, ibm.com.br, ibm.co, ibm.ca, community.watsonanalytics.com, datapower.com, skills.yourlearning.ibm.com, bluewolf.com, carbondesignsystem.com