Mass Assignment
hackingDéfinition
Vulnérabilité où un framework assigne automatiquement tous les paramètres HTTP aux attributs d'un objet, permettant de modifier des champs sensibles non exposés dans le formulaire.
Description
Le Mass Assignment survient quand un framework web assigne automatiquement tous les paramètres HTTP aux attributs d'un objet métier. Un utilisateur peut ainsi modifier des champs sensibles (is_admin, role, price) non exposés dans le formulaire en les ajoutant manuellement à la requête.
Exploitation
L'attaquant ajoute &is_admin=true à une requête de mise à jour de profil. Si le contrôleur utilise l'affectation de masse sans filtrage (Rails attr_accessible, Django model.save()), il élève ses privilèges ou modifie des données protégées.
Défense
- Utiliser des DTOs (Data Transfer Objects) pour filtrer explicitement les champs autorisés à la mise à jour
- Configurer les listes explicites d'attributs autorisés (whitelist) dans les modèles ORM
- Ne jamais passer directement les paramètres bruts de la requête à une méthode de sauvegarde
Besoin d'un expert sur ce sujet ?
Audit, pentest, conformité ISO 27001, développement IA sécurisé — demandez un devis gratuit.
Demander un devis