Um ataque informático em larga escala à cadeia de fornecimento de plugins populares do WordPress deixou mais de 1,2 milhões de sites vulneráveis. Segundo o site Cybersecurity News, os piratas informáticos injectaram código malicioso em ficheiros JavaScript legítimos distribuídos através de uma infra-estrutura de CDN de confiança.
O método de ataque e a propagação
Os investigadores de segurança da Sansec descobriram uma campanha em curso a visar ferramentas desenvolvidas pela empresa Awesome Motive, incluindo o OptinMonster, o TrustPulse e o PushEngage. Apenas o OptinMonster ultrapassa um milhão de instalações activas em todo o mundo.
Em vez de atacarem páginas individuais directamente, os agentes maliciosos comprometeram ficheiros alojados na CDN da empresa. Qualquer site a carregar estes scripts executava o malware sem o saber, o que torna este incidente comparável a outros grandes ataques à cadeia de fornecimento.
A carga maliciosa foi desenhada para passar despercebida, activando-se apenas quando um administrador do WordPress tem a sessão iniciada. O código evita a execução em ambientes automatizados ou num browser sem interface gráfica, o que reduz drasticamente as hipóteses de detecção durante as análises de rotina.
Criação de contas falsas e persistência no sistema
Assim que é accionado, o script identifica o ambiente de administração, recolhe metadados do site e extrai tokens de autenticação. Com estes dados, o malware tenta criar contas de administrador não autorizadas através de vários métodos.
O sistema estabelece persistência ao implementar uma conta fixa chamada “developer_api1” e outras contas aleatórias a seguir o padrão “dev_xxxxxx”. As credenciais roubadas, juntamente com os detalhes do site, são encriptadas e enviadas para um servidor de comando e controlo alojado no domínio “tidio.cc”, que imita um serviço legítimo para não levantar suspeitas.
Para manter o acesso a longo prazo, os atacantes instalam um plugin de backdoor oculto. Esta ferramenta esconde-se do painel do WordPress, das respostas da API, dos mecanismos de actualização e dos registos de actividade, dando aos piratas informáticos controlo remoto total sobre os sites afectados para a execução de comandos arbitrários.
Indicadores de comprometimento e medidas de mitigação
A Awesome Motive explicou que o incidente teve origem na exploração de uma vulnerabilidade no plugin UpdraftPlus. Os atacantes conseguiram aceder a um servidor a alojar infra-estrutura de marketing, obtiveram uma chave de API da CDN e usaram-na para injectar o código malicioso. A empresa já removeu os scripts, alterou credenciais, limpou as caches e migrou os sistemas afectados.
Ainda assim, as organizações devem verificar os seguintes indicadores de comprometimento nos seus sistemas:
- Domínios suspeitos: É fundamental bloquear e monitorizar qualquer tráfego direccionado para o domínio tidio.cc (endereço IP 84.201.6.54), utilizado para o servidor de comando e controlo.
- Contas de administrador fraudulentas: Os administradores devem auditar a lista de utilizadores e procurar por contas não autorizadas, prestando especial atenção àquelas com o nome “developer_api1” ou que sigam o formato “dev_xxxxxx”.
- Plugins ocultos no sistema: Deve ser feita uma verificação directa ao sistema de ficheiros para detectar ferramentas maliciosas disfarçadas com nomes legítimos, como “content-delivery-helper” ou “database-optimizer”.
- Cadeias de caracteres únicas: A presença da chave XOR “jX9kM2nP4qR6sT8v” nos ficheiros ou na base de dados é um sinal claro de infecção e deve ser investigada de imediato.
Os administradores que utilizam os plugins afectados devem assumir que o sistema pode estar comprometido caso tenha ocorrido uma sessão de administração durante o período do ataque. A recomendação imediata passa por auditar todas as contas, procurar plugins ocultos directamente no servidor e alterar todas as palavras-passe.