Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Validacion de Entrada PDF
Validacion de Entrada PDF
Este artículo se centra en proporcionar una guía clara, simple y práctica para
proporcionar la funcionalidad de seguridad de Validación de entrada en sus
aplicaciones.
Implementación de validación de
entrada
La validación de entrada se puede implementar utilizando cualquier técnica de
programación que permita la aplicación efectiva de la corrección sintáctica y
semántica, por ejemplo:
Referencias
Expresiones regulares
El desarrollo de expresiones regulares puede ser complicado y está mucho
más allá del alcance de esta hoja de trucos.
Verificación de carga
Use la validación de entrada para asegurarse de que el nombre del archivo
cargado use un tipo de extensión esperado.
Asegúrese de que el archivo cargado no sea más grande que un tamaño máximo
de archivo definido.
Si el sitio web admite la carga de archivos ZIP, verifique la validación antes de
descomprimir el archivo. La verificación incluye la ruta de destino, el nivel de
compresión, el tamaño estimado de descompresión.
Subir almacenamiento
Use un nuevo nombre de archivo para almacenar el archivo en el sistema
operativo. No utilice ningún texto controlado por el usuario para este nombre de
archivo o para el nombre de archivo temporal.
Cuando el archivo se carga en la web, se sugiere cambiar el nombre del archivo
en el almacenamiento. Por ejemplo, el nombre del archivo cargado
es test.JPG , cámbiele el nombre a JAI1287uaisdjhf.JPG con un nombre de
archivo aleatorio. El propósito de hacerlo para evitar los riesgos de acceso directo
a archivos y nombres de archivo ambiguos para evaluar el filtro,
como test.jpg;.asp or /../../../../../test.jpg.
Los archivos cargados deben analizarse en busca de contenido malicioso
(antimalware, análisis estático, etc.).
La ruta del archivo no debe poder especificarse por parte del cliente. Se decide
por el lado del servidor.
Verificación de carga
Utilice las bibliotecas de reescritura de imágenes para verificar que la imagen sea
válida y eliminar el contenido extraño.
Configure la extensión de la imagen almacenada para que sea una extensión de
imagen válida basada en el tipo de contenido detectado de la imagen del
procesamiento de imágenes (por ejemplo, no confíe solo en el encabezado de la
carga).
Asegúrese de que el tipo de contenido detectado de la imagen esté dentro de una
lista de tipos de imagen definidos (jpg, png, etc.)
"><script>alert(1);</script>"@example.org
user+subaddress@example.org
user@[IPv6:2001:db8::1]
" "@example.org
Validación Semántica
La validación semántica se trata de determinar si la dirección de correo
electrónico es correcta y legítima. La forma más común de hacer esto es enviar
un correo electrónico al usuario y exigirle que haga clic en un enlace del correo
electrónico o que ingrese un código que se le haya enviado. Esto proporciona
un nivel básico de seguridad de que:
Los enlaces que se envían a los usuarios para demostrar la propiedad deben
contener un token que sea:
Subdireccionamiento
El subdireccionamiento permite al usuario especificar una etiqueta en la parte
local de la dirección de correo electrónico (antes del @signo), que el servidor
de correo ignorará. Por ejemplo, si ese example.orgdominio admite
subdireccionamiento, las siguientes direcciones de correo electrónico son
equivalentes:
user@example.org
user+site1@example.org
user+site2@example.org
Debido a que podría permitir a los usuarios registrar varias cuentas con una
sola dirección de correo electrónico, algunos sitios pueden desear bloquear el
subdireccionamiento eliminando todo entre los signos +y @. Esto generalmente
no se recomienda, ya que sugiere que el propietario del sitio web desconoce
el subdireccionamiento o desea evitar que los usuarios los identifiquen cuando
pierden o venden direcciones de correo electrónico. Además, puede evitarse
trivialmente mediante el uso de direcciones de correo electrónico
desechables o simplemente registrando varias cuentas de correo electrónico
con un proveedor de confianza.