Mass Assignment

Alto

Mass Assignment / Asignación Masiva

Definición

Mass Assignment es una vulnerabilidad que ocurre cuando una aplicación asigna automáticamente los valores de una petición HTTP a los campos de un modelo u objeto de datos sin filtrar qué campos pueden ser modificados. Un atacante puede agregar campos adicionales a la petición para modificar atributos sensibles como el rol, el estado o el precio.

Impacto

Escalada de privilegios (cambiar role a admin)Bypass de restricciones de pago (cambiar price a 0)Modificación de estado de verificación de cuentasAcceso a funcionalidades premium sin pagarModificación de datos que no deberían ser editables por el usuario

Ejemplos

Mass Assignment para escalada de privilegios

El endpoint de actualización de perfil acepta cualquier campo del body y lo pasa directamente al ORM. El atacante agrega campos como 'role' o 'verified' que no aparecen en el formulario pero que el modelo sí acepta.

# Petición legítima de actualización de perfil
PUT /api/users/me
Content-Type: application/json
{"name": "Juan", "email": "juan@ejemplo.com"}

# Petición con campos adicionales (Mass Assignment)
PUT /api/users/me
Content-Type: application/json
{"name": "Juan", "email": "juan@ejemplo.com", "role": "admin", "verified": true}

# Si el backend hace: User.findByIdAndUpdate(userId, req.body)
# Sin filtrar req.body, el atacante se convierte en admin

Practica Mass Assignment con labs reales

Aplica lo que has aprendido en entornos seguros basados en reportes de bug bounty.

Ver labs de práctica
819

hunters entrenando

56

labs de reportes reales

1327

completaciones

$231.560

en bounties practicados

35 flags capturadas esta semana·Reportes reales de HackerOne · Bugcrowd · Intigriti·Sin permanencia·Academy gratis
BBLabs · bug bounty en español

Deja de leer sobre bugs y empieza a cazarlos

Crea tu cuenta gratis y practica sobre labs basados en reportes reales que pagaron miles de euros. La Academy es gratis para siempre.

Sin tarjeta · Academy gratis · cancela cuando quieras