
Regra YARA e script Python para detectar possíveis explorações da vulnerabilidade CVE-2026-21509 no MS Office
Este repositório contém uma regra YARA para detetar documentos RTF com uma potencial exploração para CVE-2026-21509,
e um script Python para verificar se ficheiros do MS Office contêm objetos OLE Shell.Explorer.1, que estão relacionados
com essa vulnerabilidade.
Consulte https://decalage.info/CVE-2026-21509/ para mais detalhes técnicos.
Esta regra corresponde a documentos RTF que contêm objetos OLE Shell.Explorer.1, que são usados para
explorar a vulnerabilidade CVE-2026-21509. Deteta todas as amostras carregadas no
MalwareBazaar: https://bazaar.abuse.ch/browse/tag/CVE-2026-21509/
Não existe uma boa razão para documentos legítimos incorporarem tal objeto OLE (que é usado para incorporar o motor do Internet Explorer noutras aplicações), pelo que deve haver muito poucos falsos positivos.
A regra YARA existe em duas versões:
CVE-2026-21509_RTF.yar que permite caracteres de espaço em branco entre cada caractere da string CLSID.
Esta é mais lenta, mas comporta-se como o analisador RTF do MS Word, que permite tais espaços em branco.CVE-2026-21509_RTF_nows.yar sem espaços em branco. Esta regra é mais rápida, mas pode falhar algumas
deteções se forem inseridos espaços em branco ou caracteres de nova linha na string CLSID.De acordo com o aviso da MS https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-21509
a vulnerabilidade CVE-2026-21509 está relacionada com o CLSID EAB22AC3-30C1-11CF-A7EB-0000C05BAE0B,
correspondente ao objeto COM "Shell.Explorer.1", que pode ser usado para abrir o motor
legado do Internet Explorer (também conhecido como Trident/MSHTML) a partir de qualquer aplicação.
Assim, para explorar o CVE-2026-21509 a partir de um documento do MS Office, seria possível usar um objeto OLE do tipo "Shell.Explorer.1", ou usar uma relação externa com um URL especial que acionasse o uso do motor do Internet Explorer, como foi o caso do CVE-2021-40444 com URLs "mhtml:".
Este script simplesmente tenta identificar ambos os casos.