Reconmind, accueil

Test d’intrusion d’API (pentest API)

Les API portent les données et moins de garde-fous que les interfaces.

Réponse courte

Pentest API : de quoi s’agit-il, pour qui, à quel prix ?

Audit offensif d’API REST, GraphQL et gRPC : autorisation par objet et par fonction, abus de quotas, exposition de données, cloisonnement entre clients. Public concerné : plateformes qui exposent une API publique ou partenaire. Durée indicative : 2 à 10 jours. Prix d’entrée : à partir de 1 290 € HT. Reconmind conduit la mission depuis Paris, sur site en Île-de-France et à distance ailleurs.

Une interface web contraint l’utilisateur : elle n’affiche que les boutons autorisés. Une API, elle, accepte tout ce que le client veut bien envoyer. C’est pourquoi les défauts d’autorisation par objet occupent la première place de l’OWASP API Security Top 10 (édition 2023).

La mission part de la spécification quand elle existe (OpenAPI, schéma GraphQL, fichiers proto), puis la confronte au comportement réel du service. L’écart entre les deux est une mine : endpoints non documentés, champs qui fuient, paramètres encore acceptés par rétrocompatibilité.

Les tests sont conduits avec au moins deux identités distinctes par rôle, seule façon de prouver un défaut de cloisonnement sans ambiguïté : la même requête, deux jetons, deux réponses qui ne devraient pas se ressembler.

Les versions successives d’une API sont un terrain favorable. Une v1 maintenue pour quelques clients historiques conserve souvent les anciennes règles d’autorisation, alors que la v3 a été corrigée. Nous testons chaque version encore routée, y compris celles que la documentation ne mentionne plus, parce qu’un attaquant n’a aucune raison de s’en tenir à la version recommandée.

En résumé

Durée indicative
2 à 10 jours
Prix
à partir de 1 290 € HT
Référentiels appliqués
OWASP API Security Top 10OWASP ASVSPTES

Mission conduite sous autorisation écrite, avec accord de confidentialité et clause d’arrêt immédiat.

Réponse à toute demande sous 24 h ouvrées.

Pentest API : que couvre la mission ?

Le détail exact est fixé au cadrage, en fonction de votre contexte. Les axes traités systématiquement sont listés ci-dessous.

01

Autorisation par objet (BOLA) et par fonction (BFLA)

Accès croisés entre comptes et entre tenants, méthodes réservées à un rôle, endpoints administratifs atteignables avec un jeton standard.

02

Authentification machine

Vérification des signatures et de l’audience des JWT, durée et révocation des jetons, rotation des clés d’API, flux OAuth 2.0 et OIDC.

03

Exposition de données

Champs renvoyés au-delà du besoin, objets internes sérialisés tels quels, pagination qui laisse filtrer des identifiants, messages d’erreur bavards.

04

GraphQL

Introspection, requêtes imbriquées coûteuses, contournement du contrôle d’accès par alias et fragments, mutations non protégées.

05

Consommation de ressources

Absence de limitation de débit, coût unitaire des requêtes, usage abusif de fonctions facturées, énumération à grande échelle.

Pentest API : que livre la mission ?

  • Rapport par endpoint et par classe de vulnérabilité
  • Collection de requêtes rejouables (Postman / HTTP brut)
  • Matrice rôles × ressources, avec les cases qui ne tiennent pas
  • Recommandations de correction au niveau du code et de la passerelle
  • Passe de vérification après correction
Voir un exemple de rapport, entièrement fictif

Qu’est-ce que cela change pour vous ?

  • Une matrice d’autorisation vérifiée requête par requête
  • Les fuites de champs identifiées avant qu’un client ne les trouve
  • Des quotas et limites dimensionnés sur des abus mesurés

Vérification des correctifs incluse

Une passe de contrôle rejoue les preuves d’origine jusqu’à trois mois après le rapport, et produit une attestation de correction.

Pentest API : pour qui est-ce utile ?

  • Plateformes qui exposent une API publique ou partenaire
  • Architectures en microservices avec passerelle d’API
  • Applications mobiles dont tout le métier vit côté serveur
  • Éditeurs devant répondre à un questionnaire sécurité client

Votre situation ne figure pas dans cette liste ? Le cadrage tranchera : il nous arrive de recommander une autre prestation, ou d’attendre.

Pentest API : combien de temps dure la mission ?

Durée indicative : 2 à 10 jours. Les 6 étapes de cette mission, dans l’ordre.

  1. 01

    Cadrage et périmètre

    Définir ce qui est testé, ce qui est exclu, et ce qu’une réussite signifierait pour vous.

  2. 02

    Autorisation et règles d’engagement

    Aucune requête n’est émise avant une autorisation écrite nominative sur un périmètre explicite.

  3. 03

    Reconnaissance et cartographie

    Établir la surface réelle, presque toujours plus large que l’inventaire fourni.

  4. 04

    Tests et exploitation

    Vérifier les vulnérabilités connues, puis chercher ce qu’aucun outil ne trouve.

  5. 05

    Rapport et restitution

    Deux lectures : une synthèse de décision, un rapport technique actionnable.

  6. 06

    Vérification des correctifs

    Vérifier que ce qui a été corrigé l’est bien, sans régression.

Qu’est-ce qui est vérifiable avant de signer ?

Nous n’annonçons ni certification, ni nom de client, ni chiffre que nous ne saurions pas montrer. Le détail est écrit une seule fois, sur deux pages.

Ce que nous ne promettons pasMéthode et règles d’engagement

  • Autorisation écrite avant toute requêteNominative, sur un périmètre et une période écrits. Hors périmètre, rien n’est sondé.
  • Accord de confidentialité systématiqueLes éléments collectés sont chiffrés, conservés le temps convenu au contrat, puis détruits.
  • Arrêt immédiat sur simple demandeUn contact que vous désignez peut interrompre la mission par un seul message, sans justification.
  • Chaque constat est reproduitCe qui ne peut pas être reproduit passe en observation, il n’entre pas dans la liste des vulnérabilités.
  • Vérification des correctifs incluseJusqu’à trois mois après le rapport, avec une attestation de correction.
  • Un exemple de rapport à lireLa structure réelle d’un rapport, sur un exemple entièrement fictif.

Comment démarrer cette mission ?

Trois étapes, et le cadrage est gratuit et sans engagement.

  1. 1

    Vous décrivez le périmètre

    Un formulaire court ou un e-mail suffit : ce que vous voulez faire tester, et pourquoi maintenant.

  2. 2

    Nous répondons avec un créneau

    Réponse à toute demande sous 24 h ouvrées, avec une proposition de créneau de cadrage.

  3. 3

    Le cadrage débouche sur un devis

    Le prix plancher affiché (1 290 € HT) est un point de départ : le devis fixe le prix pour votre périmètre.

Pentest API : ce qu’on nous demande

Toutes les questions

Et si nous n’avons pas de spécification OpenAPI à jour ?

Ce n’est pas bloquant. La surface est reconstituée depuis le trafic de l’application cliente, les bundles front et le comportement du service. Nous vous rendons en fin de mission l’inventaire des endpoints découverts, y compris ceux que vous aviez oubliés et qui sont souvent les plus intéressants.

Combien de comptes de test faut-il prévoir ?

Deux comptes par rôle, dans deux organisations différentes. C’est la condition pour démontrer un défaut de cloisonnement proprement, et c’est un point de blocage classique en début de mission : nous le demandons dès le cadrage.

Testez-vous aussi les API de nos partenaires que nous consommons ?

Notre périmètre est l’API que vous exposez, pas celle des tiers que vous appelez. Tester l’API d’un partenaire exige son autorisation écrite, que vous ne pouvez pas donner à sa place. En revanche, la manière dont votre service consomme ces API entre dans la mission : validation des réponses reçues, confiance accordée aux données entrantes, redirections suivies sans contrôle, secrets transmis dans des URL de rappel. Une réponse partenaire falsifiée ou compromise peut devenir une entrée hostile, et c’est un angle que les équipes testent rarement. Nous documentons ces appels sortants dans l’inventaire remis en fin de mission, avec la confiance que vous leur accordez, pour que vous décidiez quels partenaires méritent une revue conjointe.

Pour comprendre avant de décider

Quelles prestations s’y associent ?

  • Pentest web

    Savoir ce qu’un attaquant obtiendrait sur votre application.

    2 à 15 jours selon le périmètredès 1 490 €

  • Audit de code

    Retrouver la ligne de code responsable et la raison pour laquelle elle a été écrite.

    3 à 15 jours selon le volume de codedès 1 900 €

  • Audit cloud

    Dans le cloud, la plupart des incidents partent d’une mauvaise configuration.

    2 à 12 joursdès 1 290 €

Toute la famille : Cybersécurité offensive

Réponse à toute demande sous 24 h ouvrées

Faire tester ce périmètre

Trente minutes de cadrage suffisent à savoir si « Pentest API » correspond à votre besoin, sur quel périmètre, et ce que cela coûterait.

  • Autorisation écrite obligatoire
  • Accord de confidentialité systématique
  • Vérification des correctifs incluse