Attaque
Faille de logique métier
Aussi appeléBusiness logic flawAbus de logique métier
En résumé
Un défaut dans les règles propres à une application, exploitable en utilisant ses fonctions de façon légitime mais dans un ordre, un contexte ou une combinaison que ses concepteurs n’avaient pas prévus. Aucune syntaxe malveillante n’est nécessaire, ce qui la rend invisible aux outils automatiques.
Faille de logique métier, en détail
Contrairement à l’injection SQL : définition ou au XSS : définition, une faille de logique métier ne dépend pas d’une technique d’attaque connue mais d’une règle de gestion mal pensée ou mal appliquée. Cumuler deux remises qui devaient s’exclure, sauter une étape de validation en appelant directement l’étape suivante, demander un remboursement supérieur au montant payé, modifier un prix côté client : chaque action est autorisée prise isolément, c’est l’enchaînement qui pose problème.
Aucun scanner ne la détecte, parce qu’aucun outil ne sait ce que l’application est censée faire. Il faut comprendre le métier, lister les hypothèses que le développeur a faites (« l’utilisateur passera forcément par cette page », « ce champ ne peut pas être négatif ») et chercher comment les violer. Un analyste compare le comportement attendu, décrit dans la spécification, au comportement permis par les requêtes. La prévention se joue dès la conception : formaliser les règles et leurs exceptions, valider chaque règle côté serveur à chaque étape plutôt que seulement dans l’interface, et prévoir des tests qui tentent explicitement de contourner le parcours nominal. Les revues de conception avec un regard adverse, avant le développement, coûtent bien moins cher que la correction d’un abus déjà exploité.
Qu’est-ce que cela change pour vous ?
Ces failles touchent directement l’argent, les stocks ou les droits de votre activité, et elles échappent à la plupart des contrôles automatisés. Leur détection exige un test réalisé par une personne qui comprend votre modèle économique.
Exemple illustratif (fictif)
Imaginons une boutique en ligne où un code promotionnel limité à un usage par client peut être appliqué plusieurs fois, en passant par l’application mobile puis par le site web dont les contrôles ne sont pas partagés. Le cumul ramènerait certaines commandes à un prix nul.
La confusion fréquente
Penser qu’une application « propre » sur les vulnérabilités techniques est donc sûre. Un code irréprochable peut implémenter une règle de gestion exploitable ; les deux catégories de défauts sont indépendantes.
Comment le détecter chez vous ?
- Pentest web : la prestationSavoir ce qu’un attaquant obtiendrait sur votre application.
- Pentest API : la prestationLes API portent les données et moins de garde-fous que les interfaces.
Aller plus loin
- ArticleLire un rapport de scan de vulnérabilités : ce qu’il prouve et ce qu’il rateUn rapport de scan est une liste de candidats, pas de faits : faux positifs, gravité hors contexte, zones non atteintes. Comment le lire et le vérifier.
- ArticleOWASP Top 10 : les dix risques expliqués pour décideurs et développeursLes dix catégories de risques de l’OWASP Top 10:2025 expliquées simplement : ce que chacune recouvre, comment un test d’intrusion la vérifie et ce que le classement ne dit pas.
- ComparatifScan ou test d’intrusion : lequel choisir, critère par critère ?Un scan automatisé et un test d’intrusion portent des noms proches, mais ne répondent pas à la même question et ne coûtent pas le même prix. Critères, situations et erreur d’achat la plus fréquente.
Termes liés
- AttaqueIDOR / BOLA : définitionUn défaut de contrôle d’accès où l’application sert l’objet demandé sans vérifier qu’il appartient à l’utilisateur authentifié.
- AttaqueCondition de course : définitionUne vulnérabilité où le résultat d’une opération dépend de l’ordre ou du moment auquel plusieurs requêtes concurrentes sont traitées.
- MéthodeTest d’intrusion : définitionUne simulation d’attaque autorisée et encadrée, menée par des analystes, qui cherche à démontrer ce qu’un attaquant pourrait obtenir sur un périmètre défini.
- TechniqueScan de vulnérabilités : définitionUne analyse automatisée qui compare un système (serveur, application, réseau) à une base de défauts connus : versions vulnérables, configurations par défaut, en-têtes manquants.
Réponse à toute demande sous 24 h ouvrées
Un périmètre à faire tester ?
Le cadrage est gratuit et sans engagement. Trente minutes suffisent à savoir si une mission est pertinente, laquelle, et ce qu’elle coûterait.
- Accord de confidentialité systématique
- Cadrage gratuit et sans engagement
- Périmètre et prix écrits avant le début