La mejor manera de determinar si un documento adjunto dañará a un usuario cuando se abra

StackOverflow https://stackoverflow.com/questions/658771

  •  20-08-2019
  •  | 
  •  

Pregunta

Estamos escribiendo una función que permitirá a nuestros usuarios " adjuntar " cosas como documentos de Word, hojas de cálculo de Excel, imágenes, archivos PDF a documentos en nuestra aplicación, como el correo electrónico.

Sin embargo, no queremos permitir que adjunten archivos .exe, .bat, .reg o cualquier otra cosa que pueda dañarlos si lo abren, por lo que proponemos tener una lista blanca de tipos de archivos permitidos .

¿Alguien sabe de una mejor manera de determinar si un documento es seguro? (es decir, no tiene la capacidad de dañar la computadora de un usuario). ¿O en cambio, un recurso que nos daría una lista de documentos seguros de uso común para agregar a nuestra lista blanca como valores predeterminados?

¿Fue útil?

Solución

Puede usar una lista blanca más el resultado de AssocIsDangerous ( http://msdn.microsoft.com/en-us/library/bb773465 (VS.85) .aspx ) para determinar si se debe permitir el archivo. Lista blanca de archivos para adjuntar sin advertencia, AssocIsDangerous para bloquear por completo, y el resto podría obtener un cuadro de diálogo de advertencia predeterminado.

Tenga cuidado con la lista blanca porque los documentos complejos pueden contener macros y sus aplicaciones asociadas podrían contener vulnerabilidad de seguridad en sus analizadores.

Otros consejos

¿Qué pasa con Virus de macro de Word ? No hay nadie & Quot; safe & Quot; Tipo de Documento. ¿Qué sucede si alguien cambia el nombre de un archivo .doc .doc? ¿Está permitido? No dependa solo del tipo o nombre del archivo y nunca confíe solo en la entrada del cliente. Validarlo en el lado del servidor si es posible, probablemente usando un programa antivirus o alguna otra utilidad conocida.

Utilice una configuración de proxy inverso como

www < - > HAVP < - > servidor web

HAVP ( http://www.server-side.de/ ) es una forma para escanear tráfico http a través de ClamAV o cualquier otro software antivirus comercial. Evitará que los usuarios descarguen archivos infectados. Si necesita https o cualquier otra cosa, puede poner otro proxy inverso o servidor web en modo proxy inverso que pueda manejar el SSL antes de HAVP

Sin embargo, no funciona durante la carga, por lo que no impedirá que los archivos se almacenen en los servidores, pero evitará que los archivos se descarguen y, por lo tanto, se propaguen . Así que úselo con un escaneo de archivos regular (por ejemplo, clamscan).

Sinceramente, creo que lo mejor es que lo atienda Clam AV en Linux o Trend Micro en Windows.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top