Repaso
English
SeguridadIntermedioSEC-41

¿Por qué @Valid en los cuerpos de petición más las consultas parametrizadas forman parte de la programación segura en Spring?

Opciones

  1. La validación bloquea entradas malas; los parámetros enlazados frenan la SQLi (Opción correcta)
  2. Solo mejoran la velocidad de cada petición
  3. Cifran todo el tráfico que gestiona la API
  4. Ocultan los stack traces a usuarios y bots

Respuesta

La validación rechaza pronto las entradas mal formadas, y los parámetros enlazados evitan la SQL injection; ninguna de las dos basta por sí sola

Por qué

Casi todas las vulnerabilidades web empiezan con entradas no confiables. Lista de programación segura:

  • Valida las entradas (tipo, longitud, formato, allow-list) en el servidor.
  • Usa consultas parametrizadas o parámetros de JPA, nunca concatenación de strings.
  • Codifica la salida según el contexto (HTML, JS) para frenar XSS.
  • Comprueba la autorización en cada petición, no solo en el login.
  • No filtres stack traces ni errores internos a los clientes.
  • Mantén actualizados las dependencias y los frameworks.

Recuerda

Valida entradas, parametriza consultas, codifica salidas, autoriza cada llamada.

Términos clave

Practica esta pregunta en Repaso