Código incrustado en documentos PDF

Código incrustado en documentos PDF

He estado leyendo sobre este episodio de Google/China y parece que uno de los vectores de ataque utilizados fue incrustar código (creo que JavaScript) en documentos PDF. Esto me tiene preocupado, seguramente no quiero que ningún documento PDF ejecute código en mi máquina a menos que lo diga explícitamente. Sin embargo, ejecuto todos los sistemas Linux, entonces, ¿es lo chmod -x doc.pdfsuficientemente simple? (De todos modos, ninguno de mis archivos PDF tiene privilegios ejecutivos)

¿Existe alguna herramienta para escanear PDF con código incrustado? Estoy buscando herramientas de Linux, pero si alguien conoce alguna herramienta de Windows para esto, estoy seguro de que a otros les resultará útil.

Además, el lector que uso ahora es evince, ¿alguien sabe si evince ejecuta código incrustado en archivos PDF? No hay opción para desactivarlo y, en general, la evidencia parece minimalista, así que sospecho que no.

Respuesta1

El bit de ejecución en el sistema de archivos no hará ninguna diferencia en este problema. La ejecución ocurre dentro de la aplicación del lector. Luego, el lector se ocupa del contenido que se ha cargado y, si ese contenido tiene javascript, se ejecutará. Este es el mismo escenario que abrir una página HTML en un navegador. La página HTML no necesita ejecutarse para ejecutar javascript.

En cuanto a las pruebas, no lo sé con certeza... pero creo que tienes razón en que no se trata de javascript incrustado en archivos PDF.

Respuesta2

Un programa antivirus debería solucionar este caso y, por supuesto, hay muchos para Windows. Dado que los archivos PDF son hoy en día un vector de ataque bastante común, el escaneo de archivos PDF es una característica estándar de estos productos. No le dará una respuesta contiene código/no contiene código, pero bloqueará o eliminará archivos que contengan exploits conocidos o potenciales.

Respuesta3

Puedo informarle que el visor de PDF integrado de Google Chrome no ejecuta JavaScript en este momento.

Esto es un problema para mí ya que estoy intentando usar este código para completar los campos del formulario, pero puede ser de su interés para prevenir posibles ataques maliciosos.

información relacionada