Audit sécurité API
Vos APIs exposent plus de données qu'elles ne devraient
Audit de sécurité de vos APIs REST et GraphQL par un pentester senior spécialisé SaaS. Tests manuels d'autorisation (BOLA, BFLA), injection, rate limiting et exposition de données — on identifie les failles avant qu'un attaquant ne le fasse. Méthodologie OWASP API Security Top 10.
Périmètre
Ce qu'on teste
Broken Object-Level Authorization (BOLA)
Tests d'accès horizontal sur les ressources exposées par l'API. Manipulation d'identifiants pour accéder aux données d'autres utilisateurs ou tenants.
Broken Function-Level Authorization (BFLA)
Tentatives d'accès à des fonctions réservées à d'autres rôles : endpoints admin accessibles par un utilisateur standard, actions destructives sans vérification.
Mass assignment et data exposure
Recherche de champs non protégés dans les requêtes de création/modification. Détection de données sensibles exposées dans les réponses (champs internes, tokens, PII).
Rate limiting et abus
Absence de rate limiting sur les endpoints sensibles (login, reset password, envoi d'email). Pagination non bornée et exports de masse permettant l'extraction de données à grande échelle.
Validation des entrées
Fuzzing et injection sur tous les paramètres de l'API : SQL, NoSQL, SSRF, XXE, path traversal. Tests sur les types de données, les limites de taille et les caractères spéciaux.
Spécificités GraphQL
Tests des vecteurs propres à GraphQL : introspection en production, nested queries (batching attacks), deep query complexity, alias-based DoS, field-level authorization bypass, mutation abuse.
Authentification API
Analyse des mécanismes d'auth : OAuth 2.0 flows, JWT (algorithme none, clé faible, expiration), API keys (rotation, scope, revocation), session management.
Exposition d'information
Détection d'endpoints non documentés, de données de debug, de versions d'API obsolètes, d'erreurs verbeuses et de headers révélant la stack technique.
Extrait de rapport
Voici ce que vous recevez
Chaque vulnérabilité est documentée avec sa preuve d'exploitation et un correctif applicable. Pas de généralités, pas de faux positifs.
Description
L'introspection GraphQL est activée sur l'endpoint de production /graphql. Un attaquant peut récupérer l'intégralité du schéma (types, mutations, champs) et cartographier la surface d'attaque de l'API sans authentification.
Requête d'introspection
POST /graphql HTTP/2 Content-Type: application/json { "query": "{ __schema { types { name fields { name type { name } } } } }" }
Réponse — schéma complet exposé
200 OK { "data": { "__schema": { "types": [ { "name": "User", "fields": ["id", "email", "role", "stripeCustomerId"] }, { "name": "InternalConfig", "fields": ["apiKeys", "webhookSecret"] } ] } } }
Correctif proposé
// apollo-server configuration const server = new ApolloServer({ schema, introspection: process.env.NODE_ENV !== 'production', plugins: [ ApolloServerPluginLandingPageDisabled(), ], }); // Ajouter aussi : query depth limiting + query complexity analysis
Méthodologie
Notre approche étape par étape
Cadrage
Revue de la documentation API (OpenAPI/Swagger, schéma GraphQL) et définition des scénarios.
1 jour
Cartographie
Exploration automatisée et manuelle de tous les endpoints, paramètres et réponses.
0.5 jour
Tests manuels
Exploitation des vecteurs d'attaque OWASP API Top 10 sur l'ensemble des endpoints identifiés.
3–7 jours
Rapport
Documentation de chaque finding avec requête/réponse, score CVSS et correctif applicable.
Inclus
Restitution
Présentation des résultats à votre équipe avec priorisation des correctifs.
Inclus
Livrable
Contenu du rapport
Synthèse exécutive
Résumé non technique pour votre direction et vos investisseurs. Score de risque global, répartition par sévérité.
Retest inclus
Validation gratuite de vos corrections sous 30 jours. Attestation de remédiation fournie.
Findings détaillés
Chaque vulnérabilité documentée avec requête/réponse, score CVSS 3.1 et mapping OWASP API Top 10.
Correctifs applicables
Code ou configuration de correction prêt à être intégré par votre équipe de développement.
Matrice de risques
Classement par sévérité et facilité d'exploitation pour prioriser votre plan de remédiation.
Mapping conformité
Correspondance des findings avec NIS2, DORA, SOC 2, ISO 27001, PCI DSS.
Conformité
Chaque audit couvre vos obligations réglementaires
Les findings sont mappés vers les référentiels de conformité applicables à votre secteur.
OWASP
Référentiel de test standard pour la sécurité applicative
NIS2
Directive européenne sur la cybersécurité des entités essentielles
DORA
Tests d'intrusion obligatoires pour le secteur financier
SOC 2
Preuves de pentest requises pour les Trust Services Criteria
ISO 27001
Tests de sécurité réguliers exigés par l'annexe A
PCI DSS
Tests d'intrusion obligatoires pour le traitement de paiements
Tarif indicatif
4 000 – 18 000 €
5–10 jours ouvrés
Prix fixe après cadrage. Pas de surprise, pas de semaines d'attente.
- Tests manuels OWASP API Top 10
- Couverture REST et/ou GraphQL
- Rapport avec requêtes/réponses complètes
- Correctifs applicables pour tous les findings
- Analyse des mécanismes d'authentification
- Retest gratuit sous 30 jours
Appel de 30 min — sans engagement
Aller plus loin
Services complémentaires
Pentest application web
Complétez l'audit API par un pentest de l'interface web qui la consomme.
Revue de code source
Audit white-box pour identifier les failles dans la logique interne de votre API.
Pentest Rapide
Audit rapide sur un périmètre défini. Rapport complet livré en 48 heures ouvrées.
Questions fréquentes
Ce que nos clients demandent
Avez-vous besoin de la documentation API ?
C'est recommandé mais pas obligatoire. Un fichier OpenAPI/Swagger ou un schéma GraphQL accélère le cadrage. Sans documentation, on commence par une phase de discovery pour cartographier les endpoints et les paramètres.
Testez-vous les WebSockets ?
Oui. Les connexions WebSocket sont testées pour les failles d'authentification, d'autorisation, d'injection et de manipulation de messages. C'est un vecteur souvent négligé dans les audits API classiques.
Comment abordez-vous GraphQL spécifiquement ?
On teste les vecteurs spécifiques à GraphQL : introspection en production, batching attacks via aliases, nested query DoS, bypass d'autorisation au niveau des fields et mutations, injection dans les variables et directives.
Les flux OAuth sont-ils couverts ?
Oui. On teste les flows OAuth 2.0 complets : authorization code, PKCE, implicit (déprécié), client credentials. On vérifie la validation des redirect_uri, la gestion des scopes, le stockage des tokens et les mécanismes de revocation.
Combien d'endpoints pouvez-vous tester ?
Le périmètre standard couvre 30 à 100 endpoints. Pour les APIs plus larges, on priorise les endpoints critiques (authentification, paiement, données sensibles) et on ajuste le calendrier. Tous les endpoints sont testés sur l'ensemble des verbes HTTP et paramètres.
Combien de temps notre équipe dev est-elle mobilisée ?
Un appel de cadrage d'une heure avec votre CTO ou tech lead pour définir le périmètre et les scénarios. Une restitution d'une heure à la livraison du rapport. Entre les deux, on travaille en autonomie. Vos développeurs ne sont pas sollicités pendant les tests.
Que se passe-t-il après la livraison du rapport ?
Votre équipe corrige les findings en suivant les correctifs fournis. Sous 30 jours, on reteste gratuitement les corrections pour valider la remédiation et fournir une attestation. Si des questions apparaissent pendant la correction, on reste disponible par email ou Slack.
Comment garantissez-vous la confidentialité de nos APIs ?
Un accord de confidentialité (NDA) est signé avant le début de la mission. Les tests sont réalisés depuis un environnement dédié et sécurisé. Les données collectées (requêtes, réponses, tokens de test) sont chiffrées et détruites 30 jours après la livraison du rapport.
Prêt à sécuriser votre application
Décrivez votre projet en 2 minutes. On revient vers vous le même jour avec une proposition de périmètre et un devis détaillé.
Réponse le jour même · Sans engagement · 4 missions par mois maximum