Descarga inmediata tras la compraPDF sin DRM: léelo en cualquier dispositivoGarantía de Calidad y Atención 24/7Pago cifrado y 100% seguroEbooks gratis para probar antes de comprarDescarga inmediata tras la compraPDF sin DRM: léelo en cualquier dispositivoGarantía de Calidad y Atención 24/7Pago cifrado y 100% seguroEbooks gratis para probar antes de comprar

No confíes en lo que te envía el usuario

  • 1 min de lectura
  • Gratis
Vídeo de esta pieza: en producción. Mientras tanto, todo el contenido está aquí en texto.
Para empezar

Cualquier dato que venga del cliente es un arma potencial apuntando directamente a tu base de datos.

Dato clave

El vector favorito

Más del setenta por ciento de las vulnerabilidades críticas en aplicaciones web explotan un fallo fundamental: el servidor confía ciegamente en los datos que introduce el usuario a través de formularios, URLs o cabeceras HTTP.

Concepto

¿Qué es la validación?

La validación de entradas es el proceso de verificar que los datos proporcionados por el usuario cumplen exactamente con las reglas de formato, longitud, tipo y rango esperados antes de permitir que la aplicación los procese.

Cuidado

El mito del frontend

Confiar en la validación de JavaScript en el navegador es un error crítico de diseño. Un atacante puede desactivar JavaScript, interceptar la petición con un proxy y enviar cualquier carga maliciosa directamente a tu backend.

Paso a paso

Pilares de validación

Para construir un filtro de entradas verdaderamente seguro en tu aplicación web, debes aplicar rigurosamente estos cuatro principios fundamentales en el lado del servidor:

Marca cada paso al entenderlo · 0/4

Concepto

Entendiendo la sanitización

A diferencia de la validación, que rechaza lo incorrecto, la sanitización limpia y transforma los datos potencialmente peligrosos eliminando o codificando caracteres especiales para que sean inocuos si se interpretan como código.

Practica

Payload evadido

Un atacante no necesita herramientas complejas; basta con introducir comillas simples o etiquetas HTML maliciosas en un campo de texto estándar para comprobar si el backend procesa los datos crudos.

terminal
Repaso rápido

¿Te acuerdas? Toca para comprobarlo

Atajos: ← → para cambiar de pieza · / para buscar