Skip to content
Tutoriel

API exposées : comment les détecter et les sécuriser

Les API représentent 83% du trafic Internet et sont devenues la cible #1 des attaquants. Découvrez comment détecter vos API exposées, identifier celles à risque et les sécuriser avant une compromission.

Sarah Mansouri
25 novembre 20247 min

API exposées : comment les détecter et les sécuriser

Les API sont partout. Elles relient vos applications mobiles, vos intégrations partenaires, vos microservices, vos outils SaaS. Selon Salt Security, 94% des organisations ont connu des problèmes de sécurité API en 2024. Et pourtant, la plupart des organisations n'ont pas d'inventaire complet de leurs API exposées.


Pourquoi les API sont-elles si vulnérables ?

La proliferation des API

Une ETI typique expose entre 500 et 5 000 API. Chaque service SaaS, chaque intégration, chaque microservice ajoute de nouvelles API. La plupart ne sont pas documentées.

Les API zombies

Les API zombies (ou shadow APIs) sont des endpoints qui ne sont plus maintenus mais restent actifs. Ils contiennent souvent des vulnérabilités non parchées et des authentifications faibles.

L'authentification insuffisante

OWASP API Security Top 10 classe les problèmes d'authentification (Broken Object Level Authorization) comme la vulnérabilité #1 des API.


OWASP API Security Top 10 2023

RangVulnérabilitéDescription
#1Broken Object Level AuthorizationAccès à des objets sans autorisation
#2Broken AuthenticationAuthentification faible ou absente
#3Broken Object Property Level AuthExposition de propriétés sensibles
#4Unrestricted Resource ConsumptionPas de rate limiting
#5Broken Function Level AuthorizationAccès à des fonctions administratives
#6Unrestricted Access to Sensitive Business FlowsAbus des flux métier
#7Server Side Request ForgerySSRF via paramètres API
#8Security MisconfigurationConfigurations par défaut, CORS ouvert
#9Improper Inventory ManagementAPI non documentées, versions obsolètes
#10Unsafe Consumption of APIsConfiance aveugle dans les réponses API

Comment détecter vos API exposées ?

Méthode 1 : Détection passive via l'EASM

L'EASM identifie les API en analysant :

  • Les endpoints JSON/REST sur vos domaines et sous-domaines
  • Les fichiers de documentation exposés (swagger.json, openapi.yaml, api-docs)
  • Les réponses HTTP contenant des Content-Type API (application/json, application/xml)
  • Les ports standards des frameworks API (3000, 8080, 8443, 4000)

Méthode 2 : Analyse des certificats et DNS

Les sous-domaines contenant api., api-, -api, gateway, ws. sont des indicateurs forts d'une API.

Méthode 3 : Google Dorks

site:company.com filetype:json
site:company.com "swagger"
site:company.com "api_key"

Les configurations API à risque détectées par l'EASM

ConfigurationRisqueRémédiation
CORS ouvert (Access-Control-Allow-Origin: *)Vuln. CORS, accès depuis n'importe quelle origineRestreindre aux origines autorisées
Documentation Swagger publicCartographie complète pour l'attaquantProtéger l'accès, authentification requise
Pas de rate limitingBrute force, DoSImplémenter rate limiting + captcha
API v1 toujours activeVersion obsolète vulnérableDésactiver les anciennes versions
Pas d'authentificationAccès libre aux donnéesAPI keys minimum, OAuth recommandé
HTTPS non forcéInterception du traficForcer TLS 1.2+ sur tous les endpoints

Plan de sécurisation des API en 5 étapes

Étape 1 : Inventaire Construire un registre complet de toutes les API exposées (endpoint, version, méthodes d'authentification, données traitées, propriétaire).

Étape 2 : Classification Classifier chaque API par niveau de risque : publique/privée, données sensibles/non sensibles, critique/standard.

Étape 3 : Authentification et autorisation Implémenter OAuth 2.0 / JWT pour toutes les API. Vérifier l'autorisation au niveau objet (BOLA).

Étape 4 : Sécurisation technique Rate limiting, validation des entrées, HTTPS forcé, headers de sécurité, CORS restrictif.

Étape 5 : Surveillance continue Monitoring des anomalies de trafic, alertes sur les nouveaux endpoints exposés, revue régulière de l'inventaire.