Uma nova técnica de phishing polimórfico foi identificada por analistas do Internet Storm Center, onde páginas maliciosas alteram seu código interno a cada visita de um usuário. Essa abordagem serve para dificultar o rastreamento e a detecção por ferramentas de segurança que dependem de assinaturas estáticas, como hashes de arquivo ou strings reconhecíveis em scripts. Apesar das mudanças constantes na estrutura, a página mantém sua aparência familiar e sua função maliciosa de coletar credenciais.
Mecanismo de polimorfismo e detecção
A análise revelou que o ataque começou com uma mensagem de phishing contendo um link web. Ao abrir o link, o navegador travava por cerca de 30 segundos, consumindo um núcleo do processador, sugerindo que o problema residia dentro da página e não no servidor de hospedagem. Ao retornar ao mesmo endereço, os pesquisadores notaram que solicitações posteriores carregavam normalmente. Ao buscar a página 50 vezes, cada amostra apresentava um hash SHA-256 diferente, 21 títulos de página distintos e código que rearranjava funções, renomeava variáveis e reescrevia valores numéricos através de cálculos diferentes.
As mudanças atingiam além da primeira camada de JavaScript. Após a decodificação, todas as 50 páginas HTML finais também eram diferentes, com nomes de formulários e inputs alterados, classes CSS, identificadores de elementos da página, parâmetros de imagem e caracteres invisíveis de largura zero inseridos dentro do texto visível. Para um visitante, o resultado parecia e funcionava da mesma maneira: uma página destinada a obter detalhes de login.
Análise do código e falha de implementação
A técnica de polimorfismo torna a fonte nova sem mudar seu propósito, complicando a correspondência estática usada para capturar infraestrutura de phishing repetida. No entanto, a implementação apresentava uma falha crítica. A primeira amostra falhou porque dois loops de decodificação usavam a mesma variável não declarada, k. Uma rotina auxiliar interna redefiniam repetidamente o contador usado pelo loop externo, prendendo-o entre os valores 48 e 49 e deixando o navegador ocupado em vez de permitir que a página maliciosa terminasse de carregar.
Após o analista fornecer à rotina interna seu próprio contador local, o decodificador foi concluído e o formulário de credenciais emergiu. Uma das 50 downloads scriptadas repetiu a mesma falha, enquanto 49 foram decodificadas com sucesso, indicando que a versão defeituosa não era meramente uma resposta danificada durante a entrega. Em cerca de 56 amostras, incluindo verificações manuais originais, duas páginas falharam. Isso mostra que o processo de geração de código pode minar seus operadores tanto quanto frustrar analistas e sistemas de varredura automatizados.
Implicações para defensores e SOC
Para defensores, a lição prática é evitar tratar uma página com aparência limpa ou um hash alterado como prova de segurança. O filtro de e-mail deve ser combinado com análise de URL e inspeção baseada em comportamento, enquanto os funcionários devem verificar prompts de entrada inesperados por meio de uma rota conhecida em vez de um link de mensagem. Organizações devem se preparar para o comprometimento de contas, assumindo que a redefinição de senha não encerra o risco.
Onde uma operação de phishing rouba sessões autenticadas, defensores podem precisar revogar sessões e tokens ativos, revisar a atividade de acesso e auditar mudanças de identidade suspeitas prontamente em contas afetadas. A técnica é especialmente relevante à medida que ataques de phishing liderados por navegador continuam a borrar a linha entre a atividade normal do aplicativo e a intrusão. Equipes de resposta a incidentes devem correlacionar atividade suspeita de documento com novas tarefas agendadas, interpretadores de script e conexões de webhook de saída.
Indicadores de comprometimento (IoCs)
Os indicadores identificados incluem domínios hospedando a página de phishing polimórfica e URLs específicas observadas na mensagem analisada. Os endereços são intencionalmente defanged para prevenir resolução acidental. A tabela abaixo resume os principais IoCs:
| Tipo | Indicador | Descrição |
|---|---|---|
| Domain | addresses[.]performs[.]vu |
Domínio hospedando a página de phishing polimórfica |
| URL | hxxps[:]//addresses[.]performs[.]vu/communications.html |
Link de phishing observado na mensagem analisada |
Perguntas frequentes
Por que o código muda a cada visita? Para evitar detecção por assinaturas estáticas e hashes de arquivo, tornando a análise forense mais difícil.
Como detectar esse tipo de ataque? Através de análise comportamental, inspeção de URL e monitoramento de padrões de hospedagem que persistem sob o código em mudança.