2008-08-28 19 views
9

Mi jefe ha venido a mí y me preguntó cómo asegurar que un archivo cargado a través de la página web sea seguro. Él quiere que las personas puedan cargar archivos PDF y TIFF (y similares) y su verdadera preocupación es que alguien incruste un virus en un archivo PDF que luego se vea/altere (y se ejecute el virus). Acabo de leer algo sobre un procedimiento que podría usarse para destruir información estenográfica emebedded en imágenes mediante la alteración de bits menos significativos. ¿Se podría usar un proceso similar para demostrar que un virus no está implantado? ¿Alguien sabe de algún programa que pueda eliminar archivos?asegurando que los archivos cargados sean seguros

Actualización: Así que el equipo discutieron sobre esto un poco, y un desarrollador encontró un puesto de dejar que la descarga del archivo al sistema de archivos y tener el software antivirus que protege la red de comprobar los archivos allí. El cartel básicamente decía que era demasiado difícil usar la API o la línea de comando para un par de productos. Esto me parece un poco confuso, porque estamos planeando almacenar los archivos en el archivo db, pero antes no tuve que escanear archivos en busca de virus. ¿Alguien tiene alguna idea o experiencia con esto?

http://www.softwarebyrob.com/2008/05/15/virus-scanning-from-code/

Respuesta

4

me gustaría recomendar la publicación de sus archivos subidos a través de un software antivirus como ClamAV. No sé cómo depurar archivos para eliminar virus, pero al menos esto le permitirá detectar y eliminar archivos infectados antes de verlos.

1

Probablemente necesite encadenar un escáner de virus real al proceso de carga (de la misma manera que muchos escáneres de virus aseguran que un archivo que descarga en su navegador es seguro).

Para hacer esto usted mismo, debe mantenerlo actualizado, lo que significa mantener librerías de definiciones de virus, lo que probablemente exceda el alcance de su aplicación (y puede que no sea factible dependiendo del tamaño de su organización).

0

Sí, ClamAV debería escanear el archivo independientemente de la extensión.

2

Depende del presupuesto de su empresa, pero existen dispositivos de hardware y aplicaciones de software que pueden ubicarse entre su servidor web y el mundo exterior para realizar estas funciones. Algunos de estos son firewalls de hardware con software antivirus integrado. A veces se denominan gateways de aplicaciones o proxies de aplicaciones.

Éstos son enlaces a una pasarela de código abierto que utiliza almeja-AV: http://en.wikipedia.org/wiki/Gateway_Anti-Virus http://gatewayav.sourceforge.net/faq.html

3

virus incrustados en los archivos de imagen son poco probable que sea un problema importante para su aplicación. Lo que será un problema son los archivos JAR. Los archivos de imagen con trailers JAR se pueden cargar desde cualquier página en Internet como un applet de Java, con enlaces de origen idéntico (cookies) apuntando a su aplicación y su servidor.

La mejor manera de manejar las cargas de imágenes es recortarlas, escalarlas y transformarlas en un formato de imagen diferente. Las imágenes deben tener diferentes tamaños, hash y sumas de comprobación antes y después de la transformación. Por ejemplo, Gravatar, que proporciona los "iconos de amigos" para Stack Overflow, te obliga a recortar tu imagen y luego la traduce a PNG.

¿Es posible construir un archivo PDF o DOC malicioso que explote vulnerabilidades en Word o Acrobat? Probablemente. Pero ClamAV no va a hacer un muy buen trabajo para detener esos ataques; esos no son "virus", sino más bien vulnerabilidades en el software del visor.

0

utilizar una configuración de proxy inverso como

www < ->HAVP < -> servidor web

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

Sin embargo, no funciona en la carga, por lo que no evitará los archivos para ser almacenado en servidores, pero impide que los archivos se descarguen y se propaguen. Por lo tanto, úselo con un escaneo regular de archivos (p. Ej., Clamscan).

Cuestiones relacionadas