Affectation en masse
Qu'est-ce que Affectation en masse ?
Affectation en masseVulnérabilité où une application lie aveuglément des champs fournis par le client à des propriétés internes, laissant l'attaquant définir des attributs qu'il ne devrait pas contrôler.
L'affectation en masse se produit lorsque des frameworks (Rails, Spring, ASP.NET, NestJS, Django) mappent automatiquement le JSON ou les champs de formulaire entrants vers les attributs d'un modèle sans liste blanche explicite. L'attaquant ajoute des propriétés supplémentaires — isAdmin, role, balance, tenantId — que le serveur écrit en base. Le défaut est difficile à repérer en revue de code car l'affectation est implicite. Aussi appelé autobinding ou object injection. Mitigations : DTO ou schémas d'entrée explicites, listes blanches strictes, séparation des attributs internes des modèles exposés, tests de sécurité envoyant des clés JSON inattendues.
● Exemples
- 01
Envoyer {"name":"Bob","isAdmin":true} à /api/users et être promu administrateur.
- 02
Mettre à jour une commande avec un champ remise caché via POST pour contourner les règles de prix.
● Questions fréquentes
Qu'est-ce que Affectation en masse ?
Vulnérabilité où une application lie aveuglément des champs fournis par le client à des propriétés internes, laissant l'attaquant définir des attributs qu'il ne devrait pas contrôler. Cette notion relève de la catégorie Vulnérabilités en cybersécurité.
Que signifie Affectation en masse ?
Vulnérabilité où une application lie aveuglément des champs fournis par le client à des propriétés internes, laissant l'attaquant définir des attributs qu'il ne devrait pas contrôler.
Comment se défendre contre Affectation en masse ?
Les défenses contre Affectation en masse combinent habituellement des contrôles techniques et des pratiques opérationnelles, comme détaillé dans la définition ci-dessus.
Quels sont les autres noms de Affectation en masse ?
Noms alternatifs courants : Vulnérabilité d'autobinding, Injection d'objet.