Cómo detectar contenido sospechoso en un archivo de fuente TrueType Font (.ttf)

7

Tengo curiosidad sobre cómo escanear o evaluar el riesgo de un archivo de fuente en particular antes de implementarlo en los hosts. La primera línea de defensa, por supuesto, es asegurarse de que nuestros hosts estén parchados contra cualquier vulnerabilidad de fuente TrueType.

Leí la excelente investigación de Google Project Zero y parece que vale la pena entender los riesgos de las fuentes. También leí la respuesta de Tom Leek eso sugiere (muy sensiblemente) probar la fuente en Linux antes de intentarlo en Windows porque:

  

sería muy difícil crear una "fuente maliciosa" que pueda instalar un   virus en un sistema Windows, pero por lo demás funciona "correctamente" en un Linux   sistema

Finalmente, instalé una biblioteca de Python (FontTools) que permite la conversión de un archivo .ttf a un archivo .xml legible. En el archivo resultante, hay cientos de líneas de código de ensamblaje, ya que existe un "mecanismo de sugerencias" en cada archivo .ttf. Es en este código de ensamblaje que un atacante insertaría exploits.

Para una mayor investigación, me gustaría comparar un archivo .ttf mal conocido, como los que se usaron para explotar vulnerabilidades de manejo de fuentes, con un archivo .ttf bueno conocido. Imagino que sería difícil detectar las diferencias sin un conocimiento íntimo del montaje, pero me gustaría echarle un vistazo, o al menos escuchar a alguien aquí si es posible. Entonces, la pregunta es: ¿alguien sabe de una manera de analizar los archivos .ttf en busca de comandos sospechosos y alguien sabe dónde obtener un archivo .ttf para explotar las vulnerabilidades de manejo de fuentes?

    
pregunta mcgyver5 12.05.2016 - 22:55
fuente

1 respuesta

3

Esta es una pregunta interesante. Los archivos de fuentes son como otros archivos de medios que pueden ser abusados por malware o en intentos de explotación.

La detección de bloques maliciosos en dichos archivos multimedia seguiría un enfoque basado en firmas: usted o su software antivirus buscarán un patrón sospechoso.

No tengo conocimiento de una compilación pública de código malicioso en archivos de fuentes. Es posible que tenga que compilar su propia cuenta con la ayuda de bases de datos de vulnerabilidades públicas y explotar bases de datos.

La apertura de un archivo no confiable en otra plataforma podría detectar defectos sin exponer el entorno. Esto se debe a que el código de explotación generalmente apunta a una plataforma específica y no es posible tener éxito en otras. Un archivo de fuente que se comporte mal podría ser un indicador de un intento de ataque.

Convertir un archivo de fuente de un formato a otro es básicamente lo que haría un proxy (una puerta de enlace de la aplicación está haciendo esto con los protocolos). Una implementación estricta detectaría el mal comportamiento y fallaría la conversión. Una implementación menos estricta ignoraría las partes maliciosas y generaría un archivo válido sin peligros.

    
respondido por el Marc Ruef 03.06.2016 - 07:44
fuente

Lea otras preguntas en las etiquetas