BOPLA est l'acronyme de Broken Object Property Level Authorization (autorisation brisée au niveau de la propriété de l'objet). BOPLA se distingue de BOLA, car il fait référence à une propriété à l'intérieur d'un objet, alors que BOLA fait référence à un objet entier. Les mesures de sécurité des API conçues pour se protéger contre BOLA n'assurent pas la sécurité des API contre BOPLA. Il est donc essentiel que les équipes de sécurité adoptent des solutions conçues pour se défendre contre les deux types d'attaques.
Une façon centralisée de gérer les API
Les API sont partout aujourd'hui, permettant à divers systèmes logiciels de communiquer de manière à alimenter notre monde de plus en plus connecté. Les API, ou interfaces de programmation d'applications, fournissent un ensemble de règles et d'outils qui permettent à divers programmes logiciels écrits dans différentes langues d'échanger des informations et de partager des fonctionnalités. Les passerelles API fournissent un point centralisé pour la gestion, la sécurisation et l'optimisation des appels API, requêtes comme réponses.
Étant donné qu'elles sont essentielles à de nombreux processus et qu'elles se connectent souvent à des données sensibles, les API sont devenues la cible préférée des acteurs malveillants. Par conséquent, les équipes de sécurité doivent adopter des protocoles, des pratiques et des mesures qui garantissent la sécurité des passerelles API, et qui protègent les microservices sous-jacents et les services backend pris en charge par les API.
Qu'est-ce qu'une API ?
Une API est un ensemble de protocoles et de définitions qui permettent aux composants logiciels issus de différents systèmes ou écrits dans différents langages de communiquer facilement et de partager des informations. En normalisant la façon dont les applications communiquent, les API permettent à une application d'accéder aux données et aux fonctions fournies par une autre application, et de les incorporer. Par exemple, lorsque les développeurs souhaitent inclure les dernières informations météorologiques sur un site Web, ils peuvent utiliser une API permettant d'accéder aux données d'une source liée à la météo au lieu de créer leur propre application pour collecter et interpréter les données météorologiques. Les API sont impliquées dans presque toutes les actions et transactions en ligne, du commerce électronique aux paiements mobiles en passant par les plateformes de médias sociaux et les services cloud, ce qui signifie qu'elles représentent une grande surface d'attaque.
Quelles sont les menaces pour les API ?
Les pirates informatiques ciblent désormais les API car elles permettent souvent d'accéder à des données sensibles ou d'accéder sans autorisation à des systèmes plus importants. Avec la prolifération rapide des API, les équipes de sécurité n'ont pas toujours connaissance de toutes les API de l'écosystème digital de leur organisation. Cela entrave la protection adéquate de chaque API avec des contrôles de sécurité et des correctifs et mises à jour réguliers. La sécurité des API peut être menacée par de nombreux risques, y compris les exploitations de vulnérabilités, les erreurs d'autorisation, les problèmes d'authentification et les attaques par déni de service.
Qu'est-ce qu'une passerelle API ?
Une passerelle API est une couche de logiciel qui sert de point d'entrée unique pour gérer les requêtes clients ou les appels d'API et renvoyer les réponses des points de terminaison API. Les passerelles API acheminent les requêtes entrantes vers le microservice ou le service backend approprié, combinant plusieurs requêtes en une seule ou divisant des requêtes uniques en plusieurs requêtes afin de répondre au mieux aux besoins d'un client. Les passerelles API traduisent également les protocoles entre différentes applications et microservices et peuvent servir d'équilibreur de charge pour optimiser les performances de l'API.
Qu'est-ce que la sécurité de la passerelle API ?
Une passerelle API peut exécuter un large éventail de fonctions de sécurité afin de prévenir les abus et les attaques d'API, et améliorer la posture de sécurité d'une organisation.
- Authentification. Les passerelles API peuvent valider des informations d'identification telles que des jetons ID pour authentifier l'identité de toutes les requêtes d'API.
- Limitation du débit. Les mesures de sécurité des passerelles API incluent la possibilité de limiter le nombre de fois qu'une API peut être appelée dans une période spécifique pour s'assurer que la capacité de traitement n'est pas dépassée. Cela aide à prévenir les attaques par déni de service, ainsi que les attaques en force et les attaques par milliers de tentatives de connexion avortées, où les pirates tentent d'accéder aux systèmes en essayant à plusieurs reprises diverses informations d'identification.
- Application des règles. Les passerelles API peuvent mettre en place des stratégies et des règles, en particulier en matière d'authentification, d'autorisation et de contrôle d'accès, à suivre lors de l'accès aux microservices et aux services backend.
- Protection reposant sur des signatures. Les API peuvent bloquer certaines menaces en reconnaissant les signatures et les schémas des attaques connues.
- Journalisation et surveillance. Les passerelles API permettent une surveillance continue du trafic API et des mesures relatives à l'utilisation des API. Les passerelles peuvent également conserver un journal de toutes les transactions qui fournit des informations sur l'utilisation et les problèmes de sécurité.
- Découplage. Pour renforcer la sécurité, une passerelle API découple les services backend des applications frontales afin d'éliminer tout contact direct entre elles. Cela peut aider à bloquer les attaques par injection SQL, où du code malveillant est injecté dans les bases de données backend.
Quelle est l'efficacité de la sécurité des passerelles API ?
Bien que les passerelles API constituent une partie importante d'un programme de sécurité, elles ne représentent qu'une couche de protection, de sorte que certaines vulnérabilités de sécurité restent une menace. Les attaques BOLA (autorisation brisée au niveau de l'objet) peuvent apparaître comme du trafic normal vers une passerelle API, laissant les systèmes vulnérables aux attaques BOLA et BOPLA (autorisation brisée au niveau de la propriété de l'objet). Les passerelles ne fournissent pas non plus une visibilité suffisante de l'inventaire des API pour s'assurer que les équipes de sécurité connaissent toutes les API et que chaque API est protégée par des contrôles et des stratégies appropriés. Pour cette raison, de nombreuses organisations utilisent des solutions de protection des API supplémentaires conjointement à une passerelle API pour améliorer la visibilité de la surface d'attaque.
Quelles sont les meilleures pratiques en matière de sécurité des passerelles API ?
Les organisations et leurs équipes de sécurité peuvent améliorer la sécurité des passerelles API en adhérant à ces meilleures pratiques.
- Centralisez l'authentification. En centralisant l'authentification des API au niveau de la passerelle, les entreprises peuvent minimiser le risque que chaque microservice tente indépendamment de gérer l'accès, la vérification des jetons et d'autres éléments du processus d'authentification, ce qui peut entraîner une complexité et des lacunes en matière de sécurité.
- Mise en place d'une limitation du débit. Contrôler le nombre de requêtes d'API peut empêcher les requêtes excessives (malveillantes ou légitimes) de submerger les services et de succomber à des attaques DoS ou DDoS.
- Surveillez en continu. La surveillance et l'analyse continues peuvent aider à détecter les menaces potentielles et à résoudre les problèmes d'accès et de demande des clients.
- Supprimez les API inutilisées et obsolètes. Les équipes de sécurité peuvent améliorer la sécurité des passerelles API en gardant une trace de toutes les API et en supprimant celles qui ne sont plus utilisées ou qui ne prennent plus en charge les dernières mesures de sécurité.
- Adoptez un pare-feu d'applications Web (WAF). Le déploiement d'un WAF dans les programmes de sécurité des API et des réseaux peut bloquer les menaces courantes telles que les attaques par injection et les scripts inter-sites en limitant l'accès aux API en fonction de règles et de conditions définies.
- Exploitez les analyses comportementales. Une solution d'analyse comportementale basée sur SaaS peut enregistrer l'activité de l'ensemble des API afin de déterminer un comportement normal de référence. Elle peut ensuite signaler les menaces potentielles et recommander des réponses défensives ou proactives.
Foire aux questions (FAQ)
OpenAPI est un langage standard et de spécification ouvert pour les API HTTP qui articule la structure et la syntaxe d'une manière qui n'est pas associée au langage de programmation dans lequel l'API est créée. Avec OpenAPI, les équipes DevOps peuvent facilement communiquer sur la façon dont une API fonctionne avec une spécification encodée dans un document JSON ou YAML. La sécurité OpenAPI fait référence aux différents schémas de sécurité qui restreignent l'accès aux applications en fonction de l'authentification et qui peuvent impliquer le cryptage, l'autorisation et d'autres mesures pour protéger l'intégrité, la disponibilité et la confidentialité de l'API.
BOLA est un acronyme pour Broken Object Level Authorization (autorisation brisée au niveau de l'objet), l'une des menaces les plus puissantes pour la sécurité des API et la sécurité des passerelles API. Faisant partie des 10 principaux risques pour la sécurité des API selon l'OWASP, cette vulnérabilité permet aux pirates de manipuler des paramètres d'entrée tels que des paramètres d'URL ou de demander à des charges utiles d'accéder à des données non autorisées ou d'effectuer des actions non autorisées.
Pourquoi les clients choisissent-ils Akamai ?
Akamai soutient et protège la vie en ligne. Les entreprises leaders du monde entier choisissent Akamai pour concevoir, diffuser et sécuriser leurs expériences digitales, et aident des milliards de personnes à vivre, travailler et jouer chaque jour. Akamai Connected Cloud, plateforme cloud massivement distribuée en bordure de l'Internet, rapproche vos applications et expériences des utilisateurs, tout en tenant les menaces à distance.