
Conjunto de ferramentas de fuzzing para fontes TrueType e OpenType
BrokenType é um conjunto de ferramentas projetado para testar a robustez e segurança de software de rasterização de fontes, especialmente bases de código propensas a problemas de corrupção de memória (escritas em C/C++ e linguagens similares). Consiste nos seguintes componentes:
A descrição e instruções de uso dos utilitários podem ser encontradas em seus respectivos READMEs.
Os programas e scripts foram utilizados com sucesso entre 2015-2019 para descobrir e relatar 20 vulnerabilidades no código de rasterização de fontes presente no kernel do Windows (drivers win32k.sys e atmfd.dll), 19 falhas de segurança na biblioteca Microsoft Uniscribe em modo de usuário, bem como 9 bugs na biblioteca FontSub.dll e vários problemas no DirectWrite. Os esforços de fuzzing foram discutidos nos seguintes posts do blog Google Project Zero:
e na palestra "Reverse engineering and exploiting font rasterizers" (Engenharia reversa e exploração de rasterizadores de fontes) apresentada em Setembro de 2015 na conferência 44CON em Londres. As duas questões mais notáveis encontradas pela ferramenta foram CVE-2015-2426 e CVE-2015-2455 - uma colisão de bug OTF com um exploit encontrado no vazamento da Hacking Team, e uma colisão de bug TTF com o exploit da KeenTeam para o pwn2own 2015.
Este não é um produto oficial do Google.