API

Sécurité des API, êtes-vous concernés ?

Matthieu Millot
Placeholder for Matthieu MilotMatthieu Milot

Matthieu Millot, Expert réseau et sécurité

4 min. lecture
Placeholder for Rainbow housesRainbow houses

Share

L’usage des API a évolué ces dernières années, notamment avec l’avènement des applications smartphone et l’automatisation des processus impliquant plusieurs applications. Les nouveaux usages apportent de nouvelles vulnérabilités qui sont recensés dans le top 10 de l’OWASP dédié aux API.

C’est dans cette logique que Gartner prévoit qu’en 2022, les attaques d'interfaces de programmation d'applications (API) deviendront le vecteur d'attaque le plus fréquent.

Les API constituent un élément critique de la transformation digitale et de l’activité des entreprises

Selon Akamai, le trafic API représente plus de 80% des transactions Web sur Internet.

Tous les “pipelines” modernes dans les entreprises s’appuient sur des API pour connecter et faire dialoguer les éléments logiciels entre eux (API REST, gRPC et plus récemment GraphQL).

Le contexte de transformation numérique avec les organisations DevOps et les microservices entraîne généralement un phénomène d’applications shadows. Elles sont mises en ligne sans l’aval du RSSI et de la DSI, pour un usage métier légitime mais dangereux. Les API n’échappent pas à ce phénomène et la connaissance de l’ensemble des API de son entreprise est difficile.

On peut distinguer 3 types d’usage des API :

  • API Ouvertes : ce sont les interfaces qui sont diffusées sur le web de façon publique. Elles permettent d’interagir avec l’application publique. Par exemple Twitter,
  • API Semi-Ouvertes : elles sont ouvertes à un nombre limité de partenaires,
  • API Fermées : elles sont destinées à un usage interne de l’entreprise.

Ces usages entraînent des contraintes très différentes de sécurité.

Les passerelles API (API gateways) et les solutions d’API Management sont essentielles pour structurer une démarche d’APIsation

Les processus métiers en place dans les entreprises (ventes, achats, logistique…) utilisent en général un ensemble d’applications différentes pour fonctionner. La transformation numérique d’une entreprise passe par l’automatisation de ses processus métiers pour améliorer leur fiabilité et leur efficacité. Cette automatisation passe obligatoirement par une interconnexion des différents outils et donc l’usage d’API.

Pour sécuriser les API, nous distinguons 2 types de solutions :

  • API Gateways : Les passerelles sont installées en coupure du flux en amont des API à sécuriser. Leur fonction est de contrôler l’accès aux API (notamment l’authentification) et de contrôler le trafic (limiter la bande passante, filtrer les adresses IP),
  • API management : elles permettent de gérer et de monitorer les opérations liées aux API. Ces plates-formes intègrent généralement un portail de services à destination des développeurs et des responsables applicatifs. Elles ne vont pas directement interagir avec le trafic à destination de l’API mais avec l’API elle-même. Ces plates-formes vont permettre de versionner les API, de les publier en production. Elles vont analyser les définitions et les schémas pour vérifier s’ils sont conformes à la règle de l’art et à la politique de l’entreprise (par exemple l’exposition des utilisateurs d’une base de données). Elles vont aussi permettre de réaliser une documentation exhaustive de l’API.

Les WAF ont été utilisés parfois comme Gateway API, cependant le langage des API (REST, SOAP, gRPC, GraphQL) étant différent de celui des applications web (html, javascript), les moteurs d’analyse sont distincts. La capacité d’un WAF est donc très limitée en matière d’analyse des flux API.

Les API sont liées à des problématiques spécifiques en matière de sécurité

Lorsque nous réalisons un inventaire des API existantes dans les entreprises, les résultats sont la plupart du temps très éloignés des inventaires théoriques. La capacité à inventorier la totalité des API présentes dans les environnements est assez faible sans l’utilisation d’un outil spécifique qui va aussi trouver les API « shadow » ou “zombie”.

Les équipes de développement sont soumises à une pression accrue pour délivrer des nouvelles versions plus rapidement et satisfaire aux besoins “business”. Ils sont ainsi tentés de s’affranchir de certains process liés à la sécurité.

En effet, les API sont déployées dans des environnements multiples, dans les clouds publics ou les datacenters et des silos existent entre les équipes qui en ont la charge.

Dans le cadre de ses engagements et du déploiement de sa plate-forme, Noname Security identifie typiquement 30% d’API “inconnues”. Celles qui sont implémentées hors des process standards, non routées par les passerelles API de l’organisation, ou obsolètes mais non décommissionnées.

Les solutions traditionnelles de sécurité, telles que les API gateways et les WAF, amènent des fonctions de sécurité, comme évoqué précédemment, mais sont limitées dans leur analyse par leur manque de compréhension du contexte et de la logique des transactions. Les WAF analysent typiquement les paquets de façon unitaire et ne font pas nécessairement le lien entre une requête et une réponse. De plus, ces solutions ne peuvent évidemment pas couvrir les API puisqu’elles ne les routent pas.

Les organisations doivent adresser cette problématique de sécurité des API de façon globale

Selon Noname Security, trois éléments stratégiques doivent être considérés dans ce cadre :

  • Évaluation de la posture de sécurité des API - inventaire complet des API de l’organisation et traçage, identification et suivi des données exposées, analyse du routage et de l’exposition, identification des mauvaises configurations au niveau des composants de la chaîne,
  • Détection et réponse - construction et utilisation de modèles comportementaux pour réaliser une analyse de menace en mode “run time”, capacités d’alertes et de remédiation,
  • Testing actif en continu - les API doivent s’inscrire dans une démarche “shift-left” au niveau DevOps où les entreprises testent pro activement et de façon automatisée les nouvelles API et les nouvelles versions avant leur mise en production.

Il est donc important de bien comprendre les problématiques uniques liées à la sécurisation des API et d’avoir une stratégie associée ainsi que les bons outils pour les adresser, incluant une automatisation des process et du test actif en continu.

Connectez-vousContactez nos experts en sécurité

Notre équipe est disponible pour un appel rapide ou une réunion vidéo. Établissons le contact et discutons de vos défis en matière de sécurité, plongeons dans les rapports de comparaison entre fournisseurs, ou parlons de vos projets informatiques à venir. Nous sommes là pour vous aider.

Placeholder for Portrait of engineer beard wearing poloPortrait of engineer beard wearing polo

Plus de nouveautés