Asegurar que un archivo sea del tipo de archivo correcto es desafiante y, a veces, imposible.
Cuando sea posible, use un analizador de archivos estricto.
Para un archivo PDF, use una biblioteca de pdf o un analizador de pdf para analizar el archivo y rechazar el archivo si surge algún problema de análisis. Esto a menudo puede tener consecuencias reales de compatibilidad, ya que muchos clientes de PDF permiten documentos PDF con formato incorrecto.
Guarde el archivo en una ubicación restringida con permisos restringidos
Asegúrese de guardar el archivo en una ubicación que no sea procesada por su servidor web. Asegúrese de que la extensión no sea ejecutable por su servidor web. Permitir solo el acceso de lectura al archivo (denegar explícitamente los privilegios de ejecución).
Comprenda qué tipo de ataques son posibles gracias a los archivos subidos por el usuario
En el caso de que un archivo se cargue en un servidor, si se toman precauciones de no ejecución, se mitigará un archivo malicioso que pasa por el analizador de archivos. Sin embargo, si el archivo está disponible para otros usuarios, es posible que desee utilizar un antivirus o buscar firmas maliciosas conocidas. Este enfoque de lista negra es un último recurso, pero es una medida razonable a tomar.