Por qué un PDF tiene scripts
PDF admite JavaScript desde Acrobat 3. Es lo que hace que un formulario sume una columna, rechace una fecha mal escrita o desactive un campo hasta que se marque una casilla. También es lo que hace que valga la pena enviar un PDF malicioso.
La mayoría de herramientas que dicen detectar JavaScript en PDF solo miran /Names /JavaScript. Ese es el almacén de nivel de documento y, en un formulario real de empresa, suele estar vacío. El código interesante está enlazado a campos concretos.
Todos los sitios donde busca
/Names /JavaScript— el árbol de nombres de nivel de documento. Es un árbol, no una lista, así que una herramienta que solo lea la matriz raíz no encuentra nada en un archivo con muchos scripts./OpenAction— se ejecuta nada más abrir el documento, antes de que hayas leído una palabra.- Acciones adicionales del documento — antes de cerrar, antes y después de guardar, antes y después de imprimir.
- Acciones de página — al abrir y al cerrar la página.
- Acciones de anotación — la acción
/Ade un enlace o botón, más entrada y salida del ratón, pulsar, soltar, enfocar y desenfocar. - Acciones de campo de formulario — pulsación, formato, validación y cálculo. Aquí es donde está realmente el código de cualquier formulario que haga algo.
/AcroForm /CO— el orden de cálculo, que decide cuál de dos totales dependientes gana.
Se siguen las cadenas de acciones vía /Next, porque quien se detiene en el primer eslabón lee la parte inofensiva y se pierde el traspaso.
Observaciones, no veredictos
Llamadas como app.launchURL, this.submitForm, this.exportDataObject, Net.HTTP, eval y largas cadenas de escapes \uNNNN se señalan como motivos para leer el script. Ninguna prueba nada: un formulario de gastos legítimo llama a submitForm y una plantilla legítima llama a util.printf. La marca indica dónde mirar.
No se ejecuta nada
Los scripts se leen del grafo de objetos como texto y se muestran. Nunca se evalúan, ni se inyectan en la página, ni se descargan de la red. Copia uno, guárdalo como .js o llévate todos en un ZIP con un informe JSON.
Privacidad
El archivo se analiza por completo en tu navegador y nunca se sube, lo que importa cuando el archivo que inspeccionas es uno del que no te fías.
Tiny Online Tools







