Qué esconde el PDF



Los archivos PDF tienen mucha información. La mayoría se utilizan para la misma visualización del documento en diferentes plataformas. Pero también hay muchos metadatos: la fecha y hora de creación y edición, qué aplicación se utilizó, el tema del documento, título, autor y mucho más. Este es un conjunto estándar de metadatos, y hay formas de insertar metadatos personalizados en un PDF: comentarios ocultos en el medio del archivo. En este artículo, presentaremos algunas formas de metadatos y mostraremos dónde buscarlos.

Metadatos de información


Comenzando con PDF 1.0, hay un conjunto estandarizado de valores que se pueden agregar más al documento. Los administradores de archivos usan estos valores para mejorar las búsquedas de documentos. Incluyen:

  • El autor
  • Fecha de creación
  • Creador
  • Productor

En PDF 1.1, este conjunto se amplió para incluir datos adicionales que ayudan a encontrar documentos:

  • Titulo
  • Tema
  • Palabras clave
  • Fecha de edición (ModDate)

Estrictamente hablando, esta información no está realmente oculta, ya que muchas aplicaciones le permiten verla. Pero no se muestra al público en general. En cualquier caso, si le preocupa la seguridad, debe confiar cuidadosamente en esta información porque puede editarse más adelante. Dado que los metadatos pueden actualizarse por separado del contenido que se muestra, esto significa que el administrador de archivos y los metadatos mostrarán los cambios, y el contenido puede no cambiar.



Metadatos adicionales


El estándar PDF ahora admite incluso más metadatos. En lugar de un pequeño conjunto de valores predeterminados, puede almacenar una secuencia completa de información en formato XMP . Como resultado, cualquier tipo de datos puede incrustarse allí. Nuevamente, no se muestran, pero el administrador de archivos puede analizarlos.

El flujo XMP se puede codificar, por lo que no siempre lo leen las personas, pero muchas aplicaciones pueden leer y editar esta información. Aquí hay un ejemplo de cómo se ve XMP en un formato legible para humanos:

<xmp:CreateDate>1851-08-18</xmp:CreateDate> <xmp:CreatorTool>Ink and Paper</xmp:CreatorTool> <dc:creator> <rdf:Seq> <rdf:li>Nick Winder</rdf:li> </rdf:Seq> </dc:creator> <dc:title> <rdf:Alt> <rdf:li xml:lang="x-default">My Amazing PDF</rdf:li> </rdf:Alt> </dc:title> 

Es fácil comprender que esta información es invaluable cuando se trata de determinar el historial de un documento o cuando se intenta incrustar otra información. PSPDFKit para iOS y Android admite la lectura y edición de metadatos.

Metadatos de objeto


Las secuencias de metadatos no se limitan a documentos; los metadatos también se pueden asignar a cualquier objeto en un documento. Por ejemplo, una secuencia con una imagen incrustada. Para complicar las cosas, los metadatos auxiliares también se pueden almacenar en la secuencia misma. Si vamos más allá, podemos incrustar PDF en los metadatos del flujo de imágenes , ¡logrando así una recursión infinita! Entonces, la próxima vez que verifique los metadatos para obtener información, recuerde que es posible que tenga que pasar por varios niveles para encontrar la información que está buscando.

Guardar / actualizar adicional


El estándar PDF tiene un concepto de guardado adicional que muchas aplicaciones, incluido PSPDFKit, implementan para acelerar el ahorro. En resumen, este método agrega información adicional al final del documento, y los objetos antiguos a los que ya no se hace referencia permanecerán colgados allí. Esto es excelente cuando cambia elementos de un documento sobre la marcha y no quiere esperar un proceso de guardado largo, o, por ejemplo, la función de guardado automático, donde el proceso se ejecuta en el hilo de fondo, y queremos usar un mínimo de recursos.

Como puede comprender, esto abre una caja completa de Pandora: el historial del documento muestra información confidencial o errónea que se eliminó de los ojos, pero que permaneció en el documento. En tales situaciones, se recomienda que guarde el documento por completo. Esto dará como resultado la eliminación de objetos antiguos o incluso "suavizado", de modo que los formularios no se pueden editar en el futuro.

Comentarios en PDF


Muchos lenguajes de programación proporcionan comentarios para que el compilador o el intérprete ignoren la cadena, la misma opción está en el PDF. El símbolo% se usa en el formato de diferentes maneras, pero una de ellas es una indicación de un comentario en el código. Por lo tanto, si el usuario abre el documento en un editor de texto, puede ver algunos mensajes secretos insertados por su procesador de PDF. Los procesadores de PDF ignorarán estas líneas de comentarios, por lo que el archivo se ve correcto y no muestra ningún comentario después de la representación.

¡Un gran diccionario!


¡Lo último a tener en cuenta es que el formato PDF es en realidad un gran diccionario! Técnicamente, cualquiera puede incrustar un documento y cambiar algo. No todos los cambios son tan fáciles como editar una sola línea, pero se puede hacer. Por esta razón, siempre debe recordar qué información puede estar oculta en el PDF. Además, si procesa información confidencial, definitivamente debe usar firmas digitales para asegurarse de que el documento no haya sido alterado por otra persona que no sea su autor, y que el autor es el que usted espera y no otra persona.

Conclusión


Este artículo enumera algunas formas en que los metadatos pueden ingresar un documento sin su conocimiento. Hay otros factores a considerar, como el soporte de JavaScript para PDF . Con JavaScript, las opciones son generalmente infinitas. Los objetos ocultos también se pueden almacenar en documentos, que generalmente se analizan pero no se muestran. Esta es una buena manera de inyectar algún tipo de información en el analizador. PDF es un estándar muy extenso, por lo que siempre debe saber qué tipo de software lector de PDF utiliza y confiar en él.

Source: https://habr.com/ru/post/es429138/


All Articles