Mostrando entradas con la etiqueta ODF. Mostrar todas las entradas
Mostrando entradas con la etiqueta ODF. Mostrar todas las entradas

jueves, julio 25, 2013

Limpiar metadatos en Microsoft Office 2011 para Mac

En la versión de Microsoft Office 2013 para Windows existe una opción muy útil para evitar problemas con metadatos, información oculta y datos perdidos. Esa opción, que se llama Inspeccionar Documento y está dentro del menú Preparar, avisa de absolutamente cualquier dato que pueda irse junto con tu documento, además de dar la posibilidad de eliminarlos con un solo clic.

Figura 1: Opción de Inspeccionar Documento en Microsoft Office 2007 para Windows

Por el contrario, en Microsoft Office 2011 para Mac ese menú no está disponible, y lo único que existe es una opción en las Preferencias / Seguridad de cada aplicación - en este caso Word - para que se eliminen los datos personales al guardar el documento.

Figura 2: Opciones de Privacidad en Microsoft Office 2011 para Mac

Al ver esto, rápidamente me acordé de que esta era exactamente la misma opción que había en OpenOffice.org y que tan mal funcionaba, razón por la que acabamos creando el proyecto Open Source de OOMetaExtractor para limpiar correctamente este tipo de documentos ODF.

Figura 3: OOMetaExctrator para limpiar metadatos en documentos ODF

Para probar el funcionamiento de esta opción en Microsoft Office 2011 para Mac decidí utilizar el famoso documento de Tony Blair que tantos quebraderos de cabeza le propinó por culpa de los metadatos. En esta primera imagen se puede ver el documento original Blair.doc analizado por MetaShield Forensics - la antigua Forensic FOCA - con sus respectivos metadatos, información oculta y datos perdidos.

Figura 4: Documento Blair.doc original analizado con MetaShield Forensics

Ahora se hace una copia de este documento, y se guarda con Microsoft Office para Mac 2011 con la opción de eliminar datos personales al guardar.

Figura 5: Guardamos con Microsoft Office 2011 para Mac para limpiar la información oculta

Y de nuevo volvemos a pasarlo por MetaShield Forensics donde se puede observar que no todos los metadatos han sido eliminados. Entre la lista de datos aparece - en este caso - la plantilla que se está utilizando, la versión de software con que se manipuló el documento, y la fecha de impresión original, que como veis es anterior a la fecha de creación del documento dejando una muestra clara de esta manipulación realizada.

Figura 6: Documento Blair.doc limpiado con Microsoft Office 2011 para Mac

Para comprobar como debería funcionar esta opción correctamente, en este tercer caso utilizamos MetaShield Client, una versión para los sistemas operativos Windows que permite eliminar todos los metadatos de cualquier documento ofimático (PDF, Microsoft Office binarios, OOXML, ODF, etcétera) utilizando las opciones del botón derecho.

Figura 7: Limpiando el documento Blair.doc con MetaShield Client

Una vez limpio con MetaShield Client, utilizamos la herramienta MetaShield Forensics para ver qué información aparece, y como podéis ver sale limpio como la patena.

Figura 8: Análisis de Blair.doc con MetaShield Forensics tras ser limpiado con MetaShield Client

Al final, los metadatos pueden revelar mucha información, y en cualquier Análisis Forense Digital pueden resultar cruciales para responder a algunas preguntas. En el caso de Microsoft Office 2011 para Mac no parece tener mucho sentido que estando esta opción de Inspeccionar documento de serie desde Microsoft Office 2007 para Windows, no la hayan incorporado para solucionar el problema de raíz también en sus versiones para Mac OS X.

Saludos Malignos!

miércoles, noviembre 02, 2011

Metadatos e información oculta en Apple iWork (2 de 4)

************************************************************************************************
************************************************************************************************

Antes de comenzar a ver un poco los ficheros que forman un documento de Apple iWork, es necesario comprender que estos tienen similitudes y diferencias, basadas sobre todo, en como se ha ido construyendo el paquete.

El primero de los programas que apareció fue Apple Keynote en el año 2003, de forma independiente. No fue hasta el año 2005 que apareció la primera versión de Apple iWork'05, con solo dos aplicaciones: Apple Keynote versión 2.0 y Apple Pages versión 1.0. No fue hasta Apple iWork'08 que no se incluyó en el paquete la primera versión de Apple Numbers, la hoja de cálculo.

Figura 5: Historial de versiones de Apple iWork en Wikipedia

La versión de Apple iWork'08 es la primera que vino ya con el formato de documento que vamos a analizar. Anteriormente Apple Keynote y Apple Pages utilizaban un formato binario, pero con la llegada de ODF y OOXML, Apple decidió seguir un formato basado en un archivo XML con documentos vinculados y todos comprimidos en un único fichero. No hay que olvidar que Apple estuvo en el comité de OOXML y desde el principio mostró su apoyo también a ODF.... aunque al final tirase por la vía del medio y crease su propio formato de documento - cosas de Apple, supongo -.

Fuera de este artículo queda el análisis de los ficheros de Apple iWork 1.5 para iPad, que ya veremos en otro, y los ficheros binarios previos a Apple iWork'08.

El fichero BuildVersionHistory.plist

Uno de los ficheros que se encuentra en todos los documentos de Apple iWork'08 y 09 el BuildVersionHitory.plist. Este fichero está codificado en el formato Property List (.plist) tan común en los entornos Apple. Para hacerlo visible es necesario descargarse una utilidad para Windows como Plist Editor para Windows - gratuita - o utilizar en Mac OS X la herramienta que viene con el entorno de desarrollo /Developer/Applications/Utilities/Property List Editor.app

Figura 6: Plist Editor para Windows

En sistemas Mac OS X, para visualizar el contenido no es necesario utilizar ninguna herramienta, ya que la visualización de ficheros .plist está integrada en Finder, con lo que basta con seleccionarlo y ver en la previsualización del mismo el contenido.

Figura 7: BuildVersionHistory.plist visto en la previsualización de Finder en Mac OS X

Como puede verse en la imagen, el contenido de este fichero es una lista de versiones y fechas de edición del documento lo nos da una línea temporal para ubicar este documento.

Vista previa en la carpeta QuickLook: Preview.pdf y Thumbnail.jpg

Con el objeto de obtener un vistazo rápido del contenido de un documento, por ejemplo cuando se visualiza con Finder en un sistema Mac OS X, cada archivo de Apple iWork contiene, dentro de la carpeta QuickLook los ficheros de previsualización del documento. Es decir, el contenido sería equivalente al thumbnail que se guarda en los metadatos Exif de una fotografía. Esa previsualización está almacenada en un un archivo llamado Thumbnail.jpg que muestra la primera página del documento.

Sin embargo, si el fichero es un de tipo .pages, en esta carpeta por, defecto, encontraremos también una previsualización del documento pero en formato PDF de lo mismo. Esto, va a traernos cosas bastantes curiosas, especialmente en el fichero PDF, ya que la previsualización se realiza con el driver de creación de documentos PDF y la configuración por defecto del mismo que tenga la máquina en la que se está trabajando. Así, tal y como se puede ver en la figura siguiente, puede aparecer información muy jugosa como el usuario del sistema, el software utilizado para crear el documento, y, en este caso, la versión en concreto del sistema operativo: Mac OS X 10.6.4 Snow Leopard

Figura 8: Metadatos en el fichero Preview.pdf dentro de la carpeta QuickLook de un documento Pages

Como se puede ver, tenemos en este caso un documento creado el 25 de Enero de 2011 actualizado a Mac OS X 10.6.4 Snow Leopard, con lo que sabemos que esa máquina no tiene instaladas los parches de seguridad de Mac OS X 10.6.5 que salieron el 11 de Noviembre de 2010 y Mac OS X 10.6.6 que salieron el 6 de Enero de 2011, y que entre ambos suman una buena cantidad de fallos de seguridad.

En el archivo Thumbnail.jpg se obtiene poca información relativa a metadatos, pero sí que hay una cosa bastante curiosa a tener en cuenta que puede dar información muy útil para completar la información de la máquina desde la que se creó este documento, pero lo veremos en la parte siguiente del artículo.


************************************************************************************************
************************************************************************************************

martes, noviembre 01, 2011

Metadatos e información oculta en Apple iWork (1 de 4)

************************************************************************************************
************************************************************************************************

Ya hace tiempo le dediqué varias entradas a unos artículos realizados con mi amigo Enrique Rando sobre Metadatos e Información Oculta en documentos Microsoft Office y Metadatos e Información Oculta en Documentos OpenOffice. Toda esa información se convirtió en conocimiento que metimos en las primeras versiones de FOCA.

Ahora, con la salida de la FOCA 3, hemos ido atesorando una serie de ideas y nuevas funciones a introducir en próximas versiones, y en especial en la versión de la FOCA que saldrá creada para analistas forenses, en lugar de para pentesters. Entre las cosas que hemos hablado, por supuesto, están las de añadir nuevos formatos de documentos soportados por el módulo de metadatos y, entre ellos se encuentran los que vienen en los ficheros de datos del paquete ofimático iWork de Apple, que es de lo que trata este artículo.

Figura 1: Apple iWork

El paquete Apple iWork está formado por tres aplicaciones principales, que son Pages, Numbers y Keynote, o lo que es lo mismo, un procesador de textos, una hoja de cálculo y un editor de presentaciones. Es capaz de trabajar con otros formatos de datos para realizar funciones concretas, pero en este artículo se van a tratar solo los formatos principales.

Las extensiones de los ficheros y los buscadores

Los documentos de estas tres aplicaciones tienen unas extensiones muy fácilmente reconocibles. El editor de textos, Pages, utiliza la extensión .pages para sus ficheros. Numbers, que es la hoja de cálculo, trabaja con ficheros con extensión .numbers, mientras que el editor de presentaciones, Keynote, utiliza ficheros terminados en .key.

Para realizar las pruebas era necesario disponer de ficheros públicos creados con diferentes versiones de este paquete, y desde equipos distintos con distintas configuraciones, así que lo más socorrido es tirar de los buscadores. Encontrar estos ficheros a través de los buscadores no es fácil del todo, ya que la extensión .pages se utiliza en muchas páginas web en Internet y, por ejemplo, la extensión .key es muy utilizada en la distribución de claves públicas PGP, por lo que es difícil reconocerlos a a la primera a través de los buscadores.

La solución fue tirar un poco de Hacking con Buscadores, y sacar partido al conocimiento que de cómo funcionan estos tenemos.

Encontrando ficheros iWork a través de Google y Bing

Los formatos de fichero que utiliza Apple iWork están basados en una estructura similar a ODF y OOXML, es decir, una estructura de carpetas y archivos comprimidos en un único fichero. Esta compresión se realiza con compresión PK, por lo que, como ya vimos en el artículo de "Cuatro Cosas que BING hace mejor que Google", este último, es decir, salvo que tenga implementado un indexador como hace con ODF u OOXML, como Google no descomprime ficheros PK, no será capaz de ver el contenido de estos ficheros.

Tras varias pruebas, es fácil comprobar que Google directamente ignora el contenido generado con Apple iWork, así que si una web espera que sean indexados por las palabras que aparecen en sus documentos Pages, Numbers o Keynote se llevará un chasco. Si eres el responsable SEO de una empresa, no publiques contenido en Apple iWork.

Conociendo esto, descubrir ficheros en Google de estos formatos es más sencillo, solo hay que buscar documentos con estas extensiones, es decir, .pages, .numbers y .key que no cuenten con ninguna descripción en los resultados, es decir, que no hayan sido indexados. No todos serán los ficheros que buscan, pero si son ficheros de Apple iWork cumplirán esta regla.

Figura 2: Archivo Apple iWork Numbers visto en Google

En el caso de Bing sucede algo igual y algo distinto. Sucede igual que Bing ignora el formato de estos ficheros, es decir, que no indexa el resultado de los ficheros Apple iWork porque no implementa un filtro que interpretación del documento, pero se comporta distinto a Google porque éste sí es capaz de indexar el contenido de ficheros comprimidos con PK, por lo que basta con buscar archivos comprimidos que tengan algún fichero estándar en todos los documentos Apple iWork, como por ejemplo archivos .plist y se obtendrá una buena cantidad de documentos de pruebas.

Figura 3: Archivos pages descubiertos con un poco de Bing Hacking usando filetype

La estructura de los ficheros de Apple iWork

Como ya se ha dicho antes, los tres tipos de ficheros de las aplicaciones Apple iWork, es decir, los documentos .pages, .numbers y .key, mantienen una misma estructura. Los tres son contenedores comprimidos que contiene los siguientes elementos comunes:

- Fichero Index: Es el documento maestro del archivo. Donde está el contenido. Cambia la extensión dependiendo de la aplicación. Se verá más adelante.

- Fichero BuildVersionHistory.plist: Historial de versiones del documento.

- Carpeta QuickLook: Contiene los archivos de pre-visualización.

- Carpeta thumbs: Miniaturas creadas por la aplicación de imagenes incrustadas.

- Archivos incrustados: Archivos originales incrustados sin modificar en el documento.

Figura 4: Visualización interna de un fichero .pages

No tienen exactamente la misma estructura de ficheros, y los ficheros utilizan esquemas XML distintos, pero esa visualización de la Figura 4 de un documento .pages es más o menos la misma en todos los archivos de Apple iWork. Y todos esos ficheros contenidos tienen información bastante como vamos a ir viendo por partes.

************************************************************************************************
************************************************************************************************

jueves, noviembre 05, 2009

Esquema Nacional de Seguridad: Metadatos

"La finalidad del Esquema Nacional de Seguridad es la creación de las condiciones necesarias de confianza en el uso de los medios electrónicos, a través de medidas para garantizar la seguridad de los sistemas, los datos, las comunicaciones, y los servicios electrónicos, que permita a los ciudadanos y a las Administraciones Públicas, el ejercicio de derechos y el cumplimiento de deberes a través de estos medios."

Así reza un párrafo en la primera hoja del borrador que se ha hecho público del primer borrador del Esquema de Seguridad Nacional.

Como se puede ver a lo largo de las 60 páginas que conforman el documento, está compuesto de un conjunto de normas y recomendaciones creadas para garantizar la seguridad de los usuarios en el ejercicio de su derecho a interactuar con la administración pública mediante el uso de mecanismos informáticos.

Actualmente es un borrador, pero a nosotros nos ha llamado la atención exactamente este párrafo en concreto del artículado:

"5.7.6 Limpieza de documentos

En el proceso de limpieza de documentos, se retirará de estos toda la información adicional contenida en campos ocultos, meta-datos, comentarios o revisiones anteriores, salvo cuando dicha información sea pertinente para el receptor del documento.

Esta medida es especialmente relevante cuando el documento se difunde ampliamente, como ocurre cuando se ofrece al público en un servidor web u otro tipo de repositorio de información.

El incumplimiento de esta medida puede perjudicar:

a) Al mantenimiento de la confidencialidad de información que no debería haberse revelado al receptor del documento.

b) Al mantenimiento de la confidencialidad de las fuentes u orígenes de la información, que no debe conocer el receptor del documento.

c) A la buena imagen de la organización que difunde el documento por cuanto demuestra un descuido en su buen hacer.
"

Como se puede ver, hace referencia al tema de meta-dados, información oculta y los datos perdidos, algo con lo que llevamos siendo pesados hace más de un año y que llevó a la creación de la FOCA, OOMetaextractor y, por supuesto, MetaShield Protector.

Al leer este párrafo, parece que hablan exactamente de esta herramienta, de MetaShield Protector, una herramienta que limpia, automáticamente, todos los metadatos e información oculta en documentos Microsoft Office, OpenOffice y PDF de los archivos publicados en la web antes de que estos sean entregados al usuario. ¿A que parece que lo he escrito yo?

Los más veteranos estaréis ya un poco cansados de este tema, pero para los más nuevos, os dejo las referencias a todos los artículos que hablan de este tema:

- Metadatos, Información Oculta y datos Perdidos en OpenOffice
- Metadatos, Información Oculta y datos Perdidos en Microsoft Office
- MetaShield Protector
- FOCA Manual de Usuario

Saludos Malignos!

lunes, julio 20, 2009

El Anti Foca en Demo

El anti Foca no es un programa malo, maloso que, al más puro estilo de documental denuncia, haga daño a esos lindos animalitos. No, para la realización de este programa no se ha dañado a ningún animal, que yo soy incapaz de matar a un insecto.

El anti Foca no es otro sino MetaShield Protector, la solución software para servidores web IIS 7 con Windows Server 2008 que limpia de metadatos, información oculta y datos perdidos todos los archivos antes de ser entregados al cliente. El software ya está casi listo para su salida a la venta, [sí, va a ser de pago], pero hay una versión demo disponible, totalmente funcional, para ficheros .doc.


Sobre el funcionamiento en detalle de MetaShield Protector os dejé un artículo completo que publiqué en la revista PCWorld sobre qué hace y cómo funciona el software. Lo tenéis disponible en:

- MetaShield Protector I de IV
- MetaShield Protector II de IV
- MetaShield Protector III de IV
- MetaShield Protector IV de IV

Además, hay una guía de instalación rápida en: Guía de Instalación MetaShield

Ahora, que llega el verano, podéis bajarlo y probar vosotros la versión demo del mismo, cuya única limitación es que sólo funciona para los documentos .doc. La versión está disponible en la siguiente URL: http://www.metashieldprotector.com/

Cualquier idea, sugerencia de mejora, comentario o fallo descubierto que nos enviéis por correo electrónico, será bien recibido, para ello se ha creado un buzón en support@metashield.es que está abierto desde ya.

Por último, si deseas una demo privada de la versión full, que te hagamos un piloto en tus instalaciones, o si deseas ser avisado cuando salga la versión final a la venta, puedes ponerte en contacto conmigo o en el mismo correo anterior, y buscamos un hueco para que veas y pruebes el producto.

Saludos Malignos!

miércoles, mayo 06, 2009

Los trastos en el sótano

Durante los últimos años, en el sótano, en la guarida, en las galeras de de i64, se han ido fraguando algunas utilerías que hemos ido utilizando para diversas cosas, el siguiente post es un recopilatorio de todas esas cosas que hemos ido poniendo disponibles, en plan “usa mis tijeras para cortar tu jardín”:

LISSA & LISSA 2004

En las versiones de MS ISA Server 2000 y MS ISA Server 2004, las conexiones Http-s venían restringidas a los puertos well-known de SSL. Esto nos generó bastantes problemas cuando muchos de los servicios de Hacienda en España se publicaron por puertos SSL no estándar. Para arreglar esto sólo había que modificar valores del registro con unos scripts, pero nos daba bastantes problemas, así que hicimos una herramienta que configuraba los puertos SSL para ISA server de forma gráfica y sencilla.

- Download LISSA para MS ISA Server 2000
- Download LISSA para MS ISA Server 2004

I64Pop3Connector

En una implantación necesitábamos una herramienta que recogiera correo de unos buzones por medio de POP-s y lo distribuyera a otros buzones. En aquel entonces no había nada que funcionara con SSL disponible así que hubo que programar con las librerías de OpenSSL este concentrador/redistribuidor de correo entre buzones. Lo pusimos freeware y es una de las herramientas que más se ha bajado la gente.

- Download I64Pop3Connector

SQL Faster Paste

Uno de los compañeros se programó este add-in para Visual Studio 2005/2008 para que le ayudara a tirar más rápidamente las queries en las aplicaciones. Automatiza el proceso de crear una consulta SQL segura en una aplicación web. Tienes más información en la siguiente URL: SQL Faster Paste

- Download SQL Faster Paste

LDAP Injector

Pequeña utilizad para automatizar las injecciones LDAP. La utilizamos para documentar y explicar las técnicas de LDAP Injection & Blind LDAP Injection en charlas. Se hizo expresamente para la Blackhat pero la utilizamos en todas las formaciones. Más información en la siguiente URL: LDAP Injector

- Download LDAP Injector

Thumbando

Thumbado es una herramienta en versión online para extraer las miniaturas de los ficheros thumbs.db utilizados en las versiones de Windows XP. Es cómoda, porque no tienes que descargarte ni el thumbs.db si se encuentra dentro de un servidor web. Tienes más información en la siguiente URL: Thumbando

- Usa Thumbando

WbFingerprinting

Esta es una prueba de concepto para demostrar que se puede hacer, por medio de Javascript, un fingerprinting del navegador que se está utilizando sin comprobar el valor que aparece en el campo USER-AGENT. Tienes más información de esta herramienta en la siguiente URL: Web Browsing Fingerprinting.

- Usa WBFingerprinting

Marathon Tool

Hacía falta una POC de la técnica Time-Based Blind SQL Injection using heavy queries. Se presentó en sociedad en la Defcon16. Tienes más información en las siguientes URLS: Marathon Tool & Reto Hacking I con Marathon Tool.

- Download Marathon Tool

OOMetaExtractor

Utilizad para extraer y eliminar los metadatos de documentos ODF en carpetas. Esta herramienta se creó como parte de un trabajo que se presentó en la OSWC. Tienes más información en la siguiente URL: OOMetaExtractor

- Download OOMetaExtractor

FOCA Online

Herramienta para extraer on-line los metadatos, información oculta y datos perdidos de un fichero. Tienes más información en la siguiente URL: La FOCA adquiere el tercer grado

- Usa la FOCA Online

FOCA

Herramienta para descargar ficheros ofimáticos de sitios web, extraer metadatos, información oculta y datos perdidos. Después cruza la información e intenta representar el mapa de la red. Se creó para la gira Up To Secure y Blackhat Europe 2009. Tienes más información en la siguiente URL: FOCA, Manual de usuario

- Download FOCA

Si alguna de ellas te sirve utilízala, si no… pues nada, que son DUPIS!

Saludos Malignos!

martes, abril 28, 2009

FOCA: Manual de Usuario [IV de IV]

*************************************************************************************************
- FOCA: Manual de Usuario [I de IV]
- FOCA: Manual de Usuario [II de IV]
- FOCA: Manual de Usuario [III de IV]
- FOCA: Manual de Usuario [IV de IV]
*************************************************************************************************

Análisis cruzado de datos

Una vez analizados todos los ficheros, se puede proceder a crear una imagen de la red de la organización a partir de la información extraída.


Mapa de red generado

En la imagen se puede ver que todos los documentos creados por el mismo autor en la misma máquina se agrupan para poder reconocer la máxima información de cada una de las máquinas.

Falsos positivos

Hay que tener en cuenta, que en una web se pueden dar varias situaciones:

1) Datos de terceros: Puede ser que se esté publicando documentos que no tengan nada que ver con la organización pues sea un fichero de otra organización que se publica en la web.

2) Datos muy antiguos: Puede que un fichero tenga información muy antigua y que ya no sea relevante para la construcción de la imagen de la red.

Para mitigar esos dos problemas en el caso de querer tener un dibujo lo más real posible de la web se recomienda:

1) Hacer tracking de los datos externos para marcar los ficheros que no han sido creados en la organización. Esto se puede hacer mediante un rápido análisis a las listas creadas buscando mails que no tienen nada que ver con la organización o usuarios que aparecen en otras empresas.

2) Una vez analizados los ficheros se pueden observar las fechas de creación con lo que es posible detectar aquellos más antiguos.


Ordenación por fechas de modificación

Si se considera oportuno, todos esos ficheros se pueden eliminar del proyecto para crear un análisis más acertado y con menos falsos positivos.

Descubrimiento de nuevos nombres

Si la aplicación está trabajando con el almacenamiento del proyecto en una base de datos, entonces utiliza el método descrito por Jhonny Long en “DNS Name prediction with Google” de utilizar Google Sets. La idea es que si se descubre un nombre de equipo y se conocen uno o varios dominios, entonces la herramienta intenta buscar palabras relacionadas utilizando Google Sets e intenta descubrir nuevos nombres de servidores mediante consultas al DNS.


Predicción de nombres en sun.com

Consideraciones finales

La herramienta soporta el uso de proxy, pero este es tomado de las opciones de configuración de Internet Explorer, así que hay que configurar allí la conexión a Internet si se desea utilizar.

La carpeta de creación del proyecto, donde se van a almacenar los documentos, debe existir previamente, la herramienta, de momento, no crea la carpeta.

Se está trabajando en mejorar la herramienta, así que todos los comentarios, errores o sugerencias de mejora que se reciban serán tomados en cuenta. El mail para enviarlos es amigosdelafoca@informatica64.com.

La herramienta se encuentra disponible para descarga en la siguiente URL: http://www.informatica64.com/FOCA.

*************************************************************************************************
- FOCA: Manual de Usuario [I de IV]
- FOCA: Manual de Usuario [II de IV]
- FOCA: Manual de Usuario [III de IV]
- FOCA: Manual de Usuario [IV de IV]
*************************************************************************************************

lunes, abril 27, 2009

FOCA: Manual de Usuario [III de IV]

*************************************************************************************************
- FOCA: Manual de Usuario [I de IV]
- FOCA: Manual de Usuario [II de IV]
- FOCA: Manual de Usuario [III de IV]
- FOCA: Manual de Usuario [IV de IV]
*************************************************************************************************

Una vez analizados todos los metadatos de todos los ficheros que conforman un proyecto es posible acceder a cinco listas de datos que se crean dinámicamente durante el análisis.

Lista de Usuarios

Estos usuarios son extraídos de los campos creator, editor, autor, etc… de los metadatos y la información oculta pero además también son extraídos de las rutas encontradas. En este caso sería información perdida que se va a encontrar en las rutas del tipo c:\users\chema\mis documentos, c:\Documents and settings\chema\desktop o /home/chema/docs. Todos estos usuarios aparecerán en la lsita.

Lista de Software

Este software aparece tanto en los metadatos como en la información EXIF de documentos gráficos. En los metadatos XMP de los ficheros PDF aparecerá en dos sitios, como aplicación creadora del pdf y como aplicación productora del programa. También se busca software en datos XMP borrados pero no eliminados del fichero.


Software utilizado

¿Podría descubrir software pirata en una empresa? y también descubrir tecnologías utilizadas y software vulnerable

Lista de Rutas

Estas rutas se sacan de todas las referencias a ficheros por ejemplo en rutas a plantillas, rutas en links a archivos locales o imágenes incrustadas. Además, se realiza una búsqueda desestructurada, es decir, con una búsqueda de strings que cumplan patrones, por lo que aparecerán rutas también contenidas en el texto, en links, en títulos, etc…


Lista de rutas

Puede servir para descubrir: Usuarios, servidores internos, direccionamiento, recursos compartidos, ACLs, etc...

Lista de impresoras

La información de las impresoras suele ser de gran utilidad pues permite descubrir direccionamiento interno, rutas a servidores y listas de control de acceso. Se sacan de los documentos ofimáticos que almacenan info de la impresora. No suelen aparecer en documentos PDF.


Lista de impresoras

Puede permitir descubir servidores internos, direccionamiento, recursos compartidos y ACLs.

Lista de mails

Al igual que en el caso de las rutas se realiza una búsqueda en campos de metadatos personalizados y una búsqueda desestructurada, es decir, que busca mails que aparezcan dentro del contenido de los ficheros.


Mails encontrados

Seguimiento de datos

Al final, toda esa información va a permitir hacer un mejor seguimiento de la historia y uso de los ficheros. Si se desea, se puede averiguar de qué ficheros proceden los datos haciendo botón derecho sobre el dato. Aparecerá una ventana contextual con todos los ficheros en que ha aparecido ese dato y se podrá ir directamente a cada uno de ellos.


tracking de datos

Exportación a fichero de texto

Por último, en el caso de querer hacer uso de esos datos en otras herramientas o para crear un diccionario que pueda ser utilizado como base de otro ataque, se puede realizar una exportación de la lista completa a un fichero de texto.


Exportación de usuarios a fichero

*************************************************************************************************
- FOCA: Manual de Usuario [I de IV]
- FOCA: Manual de Usuario [II de IV]
- FOCA: Manual de Usuario [III de IV]
- FOCA: Manual de Usuario [IV de IV]
*************************************************************************************************

lunes, abril 20, 2009

La firma de ODF en OpenOffice.org es insegura y el cifrado no protege contra inyección de malware


Entre las charlas que se impartieron en Blackhat Europe 2009 llamaba poderosamente la atención una charla doble sobe OpenOffice v.3.x security desing weaknesses. En ella el autor la presentaba con una frase lapidaria en la que afirmaba que hoy en día era más fácil hacer malware para documentos ODF que para documentos OOXML.

“At the present time, it seems far easier to develop sophisticated document malware for OpenOffice than for Microsoft Office”

Y vaya si lo demostró. El autor, para aquellos que confunden descripciones técnicas con fundamentalismo, comenzó su charla con una advertencia:


No me seas técnicoless

La charla que se impartió demostró lo sencillo que es hacer documentos con malware incrustado en documentos ODF que no están ni cifrados ni firmados, en los que están cifrados y en los que están firmados. En la presentación los autores realizaron un resumen de la historia de inseguridad en OpenOffice en el que recogieron tres papers técnicos publicados sobre la posibilidad de desarrollar virus para ODF que, como ellos afirman generaron: “A lot of «hot» reactions. Many stupid, ideologic comments but who did really read the papers?”

La version 3.x no vino acompañada de mejoras significativas de seguridad por lo que, en el White Paper de 70 páginas que publicaron durante la conferencia demuestran cómo es posible coger un documento firmado y encriptado e inyectarlo con malware sin que se genere ningún problema en la comprobación de la firma y el cifrado del mismo.

Manifest.xml no firmando ni cifrado

En el Whitepaper, cuya lectura es de lo más claro, los autores se basan en explotar varias debilidades. La primera de ella es el no cifrado ni firmado en ningún caso del fichero manifest.xml. Este fichero, dentro de la estructura de cualquier documento ODF, es la espina dorsal del documento pues es el que lista todos los archivos que componen el documento, incluidos los ficheros que puedan llevar el malware.

Documentsignatures.xml no firmado ni cifrado

Otra de las debilidades que aprovecha este trabajo de investigación es que el fichero que almacena las firmas de los ficheros no está firmado, es decir, documentsignatures.xml puede ser modificado porque no se comprueba su firma. Además, en caso de cifrarse el documento, de nuevo éste, al igual que manifest.xml, queda sin cifrar.

Firmado de macros

Otra de las características curiosas es el funcionamiento del firmado de macros. En OpenOffice 2.x los ficheros de macros no estaban firmados, por lo que era posible sustituir el contenido de un fichero de macro por otro y el documento permanecía perfectamente firmado. Para evitar ello se añade un firmado fuerte de macros en OpenOffice 3.x que hace que el fichero de la macro esté firmado él mismo. El whitepaper recalca que si el usuario confunde un firmado con otro entonces el fichero no está protegido para nada. No obstante, aunque el usuario acierte a firmar el documento con la firma del mismo, esa protección, es sólo aparente, pues se puede saltar con ataques de man in the middle.

Inyectando malware en ficheros cifrados

Supongamos que existe el fichero que lleva el contenido de la macro está cifrado y la referencia del cifrado se encuentra en manifest.xml. Sustituir esta macro firmada por una macro peligrosa sería tan sencillo como cambiar el contenido cifrado del fichero de la macro por un contenido sin cifrar de una macro-malware y eliminar la información del cifrado en manifest.xml. Tan simple, tan jodido.

Inyectando malware en ficheros firmados

La idea es tan simple que asusta. El problema es que OpenOffice no comprueba contra ningún certificado que la entidad que ha firmado el documento es una entidad de confianza. Es decir, cuando Alice manda un certificado a Bob firmado por la EntidadCertificadora, el programa de BOB debe comprobar que la el documento enviado por Alice ha sido firmado por EntidadCertificadora y no por otra. OpenOffice no lo hace, así que basta copiar los datos de la firma de Alice y crear una nueva falsa que OpenOffice no lo va a detectar, el resto es… trivial.

Conclusiones

El firmado de documentos es inseguro en cualquier situació e incluso ni el cifrado del mismo protege contra la inyección de malware en un documento firmado.

Saludos Malignos!

domingo, abril 19, 2009

FOCA: Manual de Usuario [II de IV]

*************************************************************************************************
- FOCA: Manual de Usuario [I de IV]
- FOCA: Manual de Usuario [II de IV]
- FOCA: Manual de Usuario [III de IV]]
- FOCA: Manual de Usuario [IV de IV]
*************************************************************************************************

Análisis de Metadatos de un fichero

Una vez que tenemos todos los documentos descargados podemos analizar los metadatos de uno, varios ficheros o todos a la vez. De cada fichero va buscar, en la última versión disponible, por la siguiente lista de características:

Ficheros DOC, XLS, PPT, PPS

Los ficheros antiguos de Microsoft Office suelen ofrecer bastante información, sobre todo sin han sido creados con versiones antiguas y editados con las nuevas versiones. De estos documentos se extrae:

- Datos de usuarios de creador, editor
- Historia de uso del documento
- Impresoras
- Plantillas
- Versiones de software
- PID
- Datos personalizados



Información en un DOC de David Litchield publicado en Blackhat.com

Ficheros PDF:

Los ficheros PDF no suelen tener informaicón sobre impresoras o plantillas, sin embargo suelen ofrecer mucha información de software. Además, muchos documentos tienen datos XMP borrados que símplemente han sido eliminados del árbol PDF pero que siguen persistiendo en el documento. Se extrae:

- URLs y rutas en el texto del documento
- URLS en los links
- Datos XMP del documento:
o Autor
o Email
o Software creador
o Aplicación
o Datos personalizados
- Datos XMP borrados en el documento



Información extraida de un PDF publicado

Ficheros OOXML, SWX y ODF

De los ficheros basados en XML se estrae la información del fichero, pero también de todas las versiones antiguas embebidas y los datos EXIF de las imágenes embebidas. Se extrae:

- Metadatos personalizados
- URLs en Links
- Historial de uso
- Rutas a impresoras
- Rutas a versiones
- Datos EXIF en imágenes



Información EXIF embebida en ODF

En este ejemplo se puede extraer información de una foto bajo copyright en una presentación de Novell.

Ficheros WPD

De los ficheros WordPerfect aun no se extráe toda la información que estos documentos tienen, pero de momento se extrae lo siguiente:

- Usuarios
- URLS en documentos
- Rutas a impresoras



Metadatos en fichero WPD


*************************************************************************************************
- FOCA: Manual de Usuario [I de IV]
- FOCA: Manual de Usuario [II de IV]
- FOCA: Manual de Usuario [III de IV]
- FOCA: Manual de Usuario [IV de IV]
*************************************************************************************************

martes, abril 14, 2009

FOCA: Manual de Usuario [I de IV]

*************************************************************************************************
- FOCA: Manual de Usuario [I de IV]
- FOCA: Manual de Usuario [II de IV]
- FOCA: Manual de Usuario [III de IV]
- FOCA: Manual de Usuario [IV de IV]
*************************************************************************************************

FOCA es una herramienta para ayudar en la recolección de ficheros publicados en websites, la extracción de metadatos y el análisis de los mismos. A lo largo de este artículo se va a ir viendo cómo funciona esta herramienta para ayudar en las labores de Footprinting y Fingerprinting a los auditores de seguridad.

Proyectos

FOCA trabaja en modo proyecto que implica que todos los documentos han sido o van a ser extraídos de una misma organización, con lo que se supone que la información que se obtenga podrá ser cruzada en un proceso de análisis. Para ello, la herramienta permite trabajar con una base de datos SQL Server para almacenar la información del proyecto. Esta información permitirá volver a trabajar con ese proyecto. No se almacena ningún fichero en el servidor de base de datos, simplemente se mantienen opciones de información del proyecto, como los dominios, la fecha de creación y el estado. La conexión a la base de datos se configura desde el menú Opciones, dónde además, como puede verse en la imagen, se pueden configurar el número de hilos concurrentes para los procesos de descarga.


Creación de un proyecto

La herramienta permite trabajar también si almacenamiento en base de datos, la única diferencia será que cuando se analicen los ficheros descargados no se podrá saber cuál es el dominio al que pertenecen.

Una vez decidido si se quiere trabajar con o sin base de datos, se puede crear un nuevo proyecto. Para ello hay que establecer el nombre del proyecto, el nombre del dominio base y la carpeta dónde se van a almacenar todos los documentos que se descarguen.

Proyecto Rápido

Si se desea realizar un análisis rápido de documentos ya existentes en el sistema, se puede crear un proyecto sin nombre, sin dominio y sin carpeta. Se creará un proyecto vacío que puede ser utilizado para analizar documentos sueltos o carpetas pre existenes.

Búsquedas

Una vez creado el proyecto, FOCA puede buscar todos los links de los ficheros simplemente marcando las opciones de buscadores [Google o Live] y los tipos de ficheros a buscar. Además, por comodidad se han añadido opciones de parada de la búsqueda.

Si se quisiera crear un proyecto multidominio se pueden realizar múltiples búsquedas, es decir, una vez terminada la primera búsqueda se puede personalizar la cadena de búsqueda para que la herramienta añada una nueva lista de ficheros al servidor. Esto puede ser muy útil también para aquellos casos en los que se alcance el límite de resultados devuelto por un buscador y haya que segmentar la búsqueda.


Búsqueda de ficheros


Descargas

Una vez decididos todos los ficheros que se desean descargar se puede dar a la opción de descargar uno o todos. Esto arrancará la ejecución en paralelo de varios hilos de proceso, uno por cada fichero, y creará un fichero vacío en la carpeta por cada fichero que se va a descargar.

En el caso de que todos los hilos de ejecución se quedaran bloqueados por el servidor, se pueden añadir dinámicamente nuevos hilos de proceso desde el menú de opciones, esto liberará la herramienta y permitirá seguir descargando ficheros.
Si se han descargado otros archivos que formaran parte del mismo proyecto y se encuentran ya en el sistema se pueden añadir con la opción del menú contextual de añadir un fichero o simplemente arrastrándolos al proyecto.


FOCA descargando ficheros

Al final de esta parte, el sistema estará listo para empezar a analizar los ficheros.

*************************************************************************************************
- FOCA: Manual de Usuario [I de IV]
- FOCA: Manual de Usuario [II de IV]
- FOCA: Manual de Usuario [III de IV]
- FOCA: Manual de Usuario [IV de IV]
*************************************************************************************************

miércoles, abril 01, 2009

Magia Borrás con OpenOffice.org

El lunes bajé a Málaga en un viaje relámpago de ida y vuelta en el día para preparar las demos de la charla en Blackhat y preparamos esta demo que puedes probar tú en casa para hacer “Magia Borrás”.

Ingredientes

- Un documento ODT con información oculta sobre la impresora del equipo. Puedes probar cualquiera de ellos con la Foca Online. Yo voy a utilizar este bonito documento de Novell: OES_2_BPG_1.4.odt que tiene una impresora almacenada en él y un montón de cosas más.

- Un OpenOffice.

- Una Foca Online [yo lo voy a hacer con la FOCA “Full-edition”]

- Un OOMetaExtractor

- Tiempo de ejecución: 10 minutos

El documento tiene información Oculta

Lo primero que hay que hacer es comprobar que efectivamente este documento de Novell tiene información oculta. Para ello se lo enviamos a la FOCA Online y vemos los resultados. Yo se lo paso a la FOCA y obtenemos cosas que no se deben….


Imagen 1: Un documento completito de información

Como se puede apreciar en la imagen hay información sobre el usuario, sobre una impresora de red, la versión de OpenOffice, metadatos personalizados, un mail e información sobre el sistema operativo (estos chicos de Novell nunca terminarán la migración a Linux…)

Limpiando con OpenOffice

Una vez analizado lo abrimos con OpenOffice y configuramos las opciones de seguridad en el menú Herramientas/Opciones/OpenOffice.org/Seguridad. Seleccionamos las opciones para que nos avise si hay metadatos o información oculta y además para que elimine cualquier información personal.



Imagen 2: Opciones de seguridad

Si cerramos el documento y lo volvemos a analizar obtendremos que, este documento sigue como estaba y continúa guardando toda su información. Claro, no hemos grabado, así que no vale. Hay que grabarlo, para lo que accedemos al menú guardar como y lo grabamos con otro nombre o en otra ubicación. Volvemos a analizarlo.

¡Anda! ¡Mira tú que cosas!

Al volver a analizarlo vemos que es como en una boda, hay algo nuevo, algo viejo y algo de prestado.


Imagen 3: Nuevo conjunto de metadatos e información oculta

Lo nuevo, se ha borrado el nombre del usuario (debe ser la información personal); lo viejo, ha mantenido la información de correo electrónico (porque es parte del archivo) y metadatos personalizados del documento y lo de prestado, se ha actualizado la información de la impresora, el sistema operativo y la versión del producto con mi información (menos mal que no tengo una impresora de red que si no se hubiera grabado la ruta a mi servidor interno sin yo saberlo!).

Cucaerosol

Como esto no puede ser, hay que limpiarlo del tirón con el Cucaerosol, que los mata bien muertos, así que… le pasamos OOMetaExtractor al fichero y lo volvemos a analizar.


Imagen 4: Borrando los metadatos bien borrados

Y si volvemos a analizar el documento nos encontramos que todo está bien limpio, como debe de ser.


Imagen 5: ODT limpio de metadatos e información oculta

Conclusiones

OO no limpia bien los metadatos y lo que es peor, crea falsa sensación de seguridad al creer que los estás limpiando e incluso alguno malo podría utilizar esta característica de actualización de impresoras para enviarte un documento y sacar información de la red interna.

Saludos Malignos!

sábado, marzo 14, 2009

A ver cómo lo limpias

Tras ya muchos meses de desarrollo, el lunes que viene saldrá a la venta MetaShield Protector, la tool que hemos desarrollado en Informática64 para limpiar metadatos en los documentos ofimáticos que se entregan a los clientes de la web. MetaShield Protector saldrá con la capacidad de limpiar documentos en formatos binarios Microsoft Office, en formato OOXML (ECMA 376), en formato PDF y en formato ODF.

Sin embargo, con lo contento que estaba yo con esto, resulta que hay algunos metadatos que aun no hay forma de limpiar y me pasaba este video el otro día mi co-speaker en Blackhat.

En el vídeo se puede ver a Bill Detwiller en Tech Republic enseñandonos Como resetar passwords en máquinas con Windows sin cifrado de disco usando Offline NT Password and Registry Editor sobre una máquina, pero... cuando se acercan los 2 minutos y 25 segundos se puede ver que no, que no es cualquier máquina, es una máquina en la que aparece un metadato muy sospechoso:


C:\Documents and Settings\detwillerb\Desktop\cd080526.iso

¿Será la máquina de Bill Detwiller autentica? ¿Es ése su usuario? ¿Lleva la máquina sin cifrar? ¿Cómo coño vamos a limpiar estos metadatos con MetaShield Protector? ¿Hay metadatos por todas partes?

Saludos Malignos!

viernes, marzo 13, 2009

OpenOffice.org, echando cuentas

Cuando yo estudiaba informática de joven, con 12 años, escuchaba historias de ingenieros informáticos diseñando sistemas y veía películas como Superman III o Tron dónde los programadores eran personas especiales, respetadas y valoradas por hacer software. Eran creadores. Sin embargo, con la economía de la cancamusa aplicada al software a veces pasan cosas que no entraban en las historias que oía en mi juventud y hoy en día es fácil encontarse con estudiantes de informática que no quieren programar por una simple cuestión de estátus social o economía. Eso es lo que me he encontrado ya en bastantes universidades.

En este post vienen las quejas de un programador de OpenOffice.org que se queja de la falta de desarrolladores en el proyecto. A finales de año tuvimos la queja de los programadores de Compiz, dónde ponían de manifiesto la precaria situación en la que se encontraban ellos y el proyecto pero no eran los únicos que por esas fechas se encontraban así de mal y se quejaban.

A finales de año Michael Meeks, programador de OpenOffice y empleado de Novell, mostraba una lamentable foto de cómo se encontraba OpenOffice.org. Hay que recordar que OpenOffice.org nació de la liberación del código de StarOffice para que se produjera un cambio de papeles, es decir, para que StarOffice naciera de OpenOffice en subsiguientes versiones.

Sun ha sido una de las principales promotoras de OpenOffice.org desde ese momento pues el objetivo ha sido competir contra Microsoft Office intentando suplir la distancia entre ambos por medio de la comunidad. En su momento álgido, el proyecto OpenOffice consiguió alcanzar una cota de 70 programadores aportados por múltiples empresas entre las que, lógicamente, Sun Micrososystems era y es la que más desarrolladores ha aportado.


Líneas de código agrupadas por organizaciones

Sin embargo, como se puede ver en el gráfico de actividad que aporta Michael, el número de aportaciones por desarrolladores aportados por estas organizaciones ha ido decreciendo hasta quedarse en el número de 24 que se encontraban en el momento de la publicación. 24. No sólo no ha crecido sino que se han quedado menos de la mitad.

Esos movimientos de Sun pueden tener que ver con el lanzamiento de StarOffice 9, con la precaria situación económica de la compañía o simplemente con la crisis mundial pero, la situación en el lanzamiento de OpenOffice 3.0.0 no ha sido la mejor de la historia del proyecto.

Esto no sería un problema mayor como Michael reflexiona, si se hubiera conseguido atraer a suficiente número de programadores externos al proyecto que puntualmente trabajaran y aportaran código, innovación y evolución pero, como muestra el gráfico esto no ha sido así y el número de estas aportaciones ha decrecido.


Programadores activos

Con esta situación, el 13 de Octubre salía la versión final. La versión Ubuntu 8.10 que salió el 30 de Octubre, no llevó de serie dicha versión. Ubuntu tiene una cuota de mercado alta en Linux y a mucha gente le pareció extraño que no estuvieran un poco más coordinadas las versiones para que hubiera podido venir con la versión 3 de OpenOffice. Sin embargo, la versión 3 de OpenOffice fue a los repositorios para que la pudiera instalar quién quisiera. Aun así, debido a problemas tuvo que ser retirada temporalmente mientras que se arreglaba. Al final un lanzamiento a medias.

StarOffice 9, que se lanzó a finales de Noviembre del año pasado, por el contrario, con la cambiante política de Sun, apareción sin licencia de educación gratuita de StarOffice 9.

¿Está apoyando realmente Sun a OpenOffice.org? La respuesta es sí, con peros. Es decir, Sun apoya a OpenOffice pero no está consiguiendo el retorno de inversión que esperaba del proyecto y parece que está forzando un poco más la máquina apretando al proyecto.

Michael termina su disertación en el blog con un resumen:

“Crude as they are - the statistics show a picture of slow disengagement by Sun, combined with a spectacular lack of growth in the developer community. In a healthy project we would expect to see a large number of volunteer developers involved, in addition - we would expect to see a large number of peer companies contributing to the common code pool; we do not see this in OpenOffice.org. Indeed, quite the opposite we appear to have the lowest number of active developers on OO.o since records began: 24”

“Crudo como es – las estadísticas muestran una imagen de una lenta desconexión de Sun, combinada con una espectacular falta de crecimiento en la comunidad de desarrolladores. En un proyecto sano se esperaría ver un gran número de desarrolladores voluntarios implicados, además de esperarse ver un gran número de compañías contribuyendo al repositorio de código; No vemos esto en OpenOffice.org. Por el contrario parecemos tener el menor número de programadores activos en OpenOffice.org desde que se cuentan: 24"

Y la realidad en estado puro:

“Why is my bug not fixed ? why is the UI still so unpleasant ? why is performance still poor ? why does it consume more memory than necessary ? why is it getting slower to start ? why ? why ? - the answer lies with developers: Will you help us make OpenOffice.org better ?”

“¿Por qué no está mi bug arreglado? ¿Por qué el interfaz grafico es aun tan incómodo? ¿Por qué el rendimiento es aún tan malo? ¿Por qué consume más memoria de la necesaria? ¿Por qué es tan lento en arrancar? ¿Por qué? ¿Por qué? – La respuesta la tienen los desarrolladores: ¿Nos ayudarás a hacer OpenOffice.org mejor?”

Sin palabras me deja.

Saludos Malignos!

Entrada destacada

+300 referencias a papers, posts y talks de Hacking & Security con Inteligencia Artificial

Hace un mes comencé a recuperar en un post mi interés en los últimos años, donde he publicado muchos artículos en este blog , y he dejado mu...

Entradas populares