Uma nova metodologia de obfuscação em JavaScript, utilizando caracteres Unicode invisíveis para representar valores binários, está sendo ativamente utilizada em ataques de phishing direcionados a afiliados de um comitê de ação política (PAC) americano.
Os Laboratórios de Ameaças da Juniper, que identificaram o ataque, relatam que ele ocorreu no início de janeiro de 2025 e apresenta sinais de sofisticação, tais como o uso de:
- Informações personalizadas e não públicas para visar vítimas,
- Verificação de breakpoint do debugger e checagens de tempo para evitar detecção,
- Links de rastreamento do Postmark envoltos recursivamente para obscurecer os destinos finais do phishing.
O desenvolvedor de JavaScript Martin Kleppe foi o primeiro a divulgar a técnica de obfuscação em outubro de 2024, e sua rápida adoção em ataques reais destaca como novas pesquisas são rapidamente transformadas em armas.
A nova técnica de obfuscação explora caracteres Unicode invisíveis, especificamente os caracteres Hangul meia largura (U+FFA0) e Hangul largura completa (U+3164).
Cada caractere ASCII no payload do JavaScript é convertido para uma representação binária de 8 bits, e os valores binários (uns e zeros) são substituídos por caracteres Hangul invisíveis.
O código obfuscado é armazenado como uma propriedade em um objeto JavaScript, e, como os caracteres de preenchimento Hangul são renderizados como um espaço em branco, o payload no script parece vazio, conforme evidenciado pelo espaço em branco no final da imagem abaixo.
Um script de bootstrap simplificado recupera o payload oculto usando um 'get() trap' do JavaScript Proxy.
Quando a propriedade oculta é acessada, o Proxy converte os caracteres Hangul invisíveis de volta para binário e reconstrói o código JavaScript original.
Os analistas da Juniper relatam que os atacantes usam passos adicionais de ocultação além dos mencionados acima, como a codificação do script com base64 e checagens anti-debugging para evitar análises.
"Os ataques foram altamente personalizados, incluíam informações não públicas, e o JavaScript inicial tentaria invocar um breakpoint de debugger se estivesse sendo analisado, detectaria um atraso e então abortaria o ataque redirecionando para um website benigno", explica a Juniper.
Os ataques são difíceis de detectar, pois o espaço em branco reduz a probabilidade de até mesmo scanners de segurança sinalizarem o mesmo como malicioso.
Uma vez que o payload é apenas uma propriedade em um objeto, ele poderia ser injetado em scripts legítimos sem levantar suspeitas; além disso, todo o processo de codificação é fácil de implementar e não requer conhecimento avançado.
A Juniper afirma que dois dos domínios usados nesta campanha foram previamente ligados ao kit de phishing Tycoon 2FA.
Se for o caso, provavelmente veremos esse método de obfuscação invisível ser adotado por uma gama mais ampla de atacantes no futuro.
Publicidade
Mantenha seus dados longe de hackers e ameaças digitais com a NordVPN, uma das mais rápidas e seguras do mundo. Com tecnologia de criptografia avançada, você protege até 10 dispositivos e ainda conta com recursos poderosos como bloqueio de malware, monitoramento da dark web e backup criptografado. Aproveite até 70% de desconto e experimente com garantia de reembolso de 30 dias. Segurança digital nunca foi tão fácil e eficiente. Saiba mais...