BrokenType es un conjunto de herramientas diseñadas para probar la solidez y seguridad del software de rasterización de fuentes, especialmente las bases de código propensas a problemas de corrupción de memoria (escritas en C/C++ y lenguajes similares). Consta de los siguientes componentes:
La descripción e instrucciones de uso de las utilidades se pueden encontrar en sus correspondientes README.
Los programas y scripts se utilizaron con éxito entre 2015 y 2019 para descubrir e informar 20 vulnerabilidades en el código de rasterización de fuentes presente en el kernel de Windows (controladores win32k.sys
y atmfd.dll
), 19 fallas de seguridad en la biblioteca Microsoft Uniscribe en modo de usuario, así como 9 errores en la biblioteca FontSub.dll
y varios problemas en DirectWrite. Los esfuerzos de difuminación se analizaron en las siguientes publicaciones del blog de Google Project Zero:
y la charla "Ingeniería inversa y explotación de rasterizadores de fuentes" impartida en septiembre de 2015 en la conferencia 44CON en Londres. Los dos problemas más notables encontrados por la herramienta fueron CVE-2015-2426 y CVE-2015-2455: una colisión de error OTF con un exploit encontrado en la filtración de Hacking Team y una colisión de error TTF con el exploit de KeenTeam para pwn2own 2015.
Este no es un producto oficial de Google.