boleto-bancario

O que é Bolware, como ele age e como você pode se proteger

O Laboratório de Análise de Malwares da PSafe explica como age a “Gangue do Boleto”, acusada de desviar R$ 8,2 bi, e faz uma análise do problema.

Laboratório de Análise de Malware da PSafe explica como age a “Gangue do Boleto” e faz análise do problema

Como o Bolware infecta o seu computador

A infecção acontece após o usuário baixar um arquivo ZIP contendo um arquivo chamado Receita Federal.cpl que, quando executado, faz o download de 2 novos arquivos: gbiehamz.cpl e resource.bck; e inicializa o processo gbiehamz.cpl, responsável por monitorar o uso dos navegadores e fazer a injeção do código malicioso que modifica a linha digitável do código de barras de boletos de pagamento.

O vírus passa a vigiar o usuário

Para monitorar o uso dos browsers, o malware utiliza um procedimento bem simples. Ele implementa dentro de um timer – componente da linguagem Delphi que executa determinado código a cada fração de segundo – a verificação da janela que está em uso pelo usuário, utilizando a função GetForegroundWindow(), conforme código abaixo:

Código que verifica o título da janela em uso

Após capturar o handle para a janela em uso, o Bolware utiliza as funções GetWindowText() e SendMessage() do Windows para identificar o título da janela e confirmar se o usuário está acessando um serviço monitorado pela Gangue do Boleto.

Caso o título esteja entre os vigiados pelos criminosos, o Bolware verifica se o browser utilizado é o Internet Explorer. Se o navegador for o Firefox ou Chrome, o malware fecha os programas, impedindo os seus usos para acessar o Internet Banking, forçando o usuário a utilizar o IE, que vem instalado por padrão em qualquer computador com Windows e não possui opção de desinstalação.

Código que fecha o processo do Firefox ou Chrome

Se ele não conseguir identificar o serviço pelo título, ele verifica a URL que está sendo acessada e compara com a lista de alvos do malware. Este método de captura de URLs só funciona no Internet Explorer, pois ele busca por elementos específicos do IE, até encontrar a barra de endereços, e então captura seu conteúdo.

Código que procura o campo da barra de endereços

O código acima procura pelo campo onde fica registrado o endereço visitado pelo usuário, obtém o handle para este campo e captura a informação. Veja abaixo a hierarquia dos campos pesquisados.

Hierarquia dos componentes do IE

Após ter acesso à informação e identificar que o usuário está navegando em um site alvo da gangue do boleto, ele inicia o processo de carregamento do outro módulo, já baixado pelo downloader, porém compactado no arquivo resource.bck.

Este arquivo compactado será carregado para a memória de maneira não convencional. E, para dificultar a sua detecção, o malware utiliza uma técnica conhecida como “Process Hollowing“.

Entenda o Process Hollowing

A técnica consiste em carregar um processo confiável para a memória, substituindo o código existente pelo código malicioso, escondendo a execução do processo malicioso.

No caso do Bolware, ele utiliza o Internet Explorer para esconder seu código, carregando o processo iexplore.exe para a memória em modo suspenso, utilizando a flag CREATE_SUSPENDED na chamada CreateProcessA, conforme podemos verificar na imagem abaixo:

Criação do processo em modo suspenso para hospedar o código malicioso

Com o processo carregado, o vírus captura o contexto da thread, copia o código do malware descompactado para o processo e inicia a thread que estava suspensa, fazendo com que o código do malware seja executado.

GetThreadContext e alocação de memória para receber o código do malware

Escrevendo o código na área alocada e resumindo a thread suspensa

Após este procedimento, o código malicioso estará sendo executado como iexplore.exe, dificultando, assim, a identificação do malware.

Bolware usa dois métodos para saber por onde você navega

O módulo carregado verifica se o usuário abriu algum site alvo de duas maneiras: a primeira, da mesma forma que o processo anterior, verificando se existe alguma janela do IE aberta com títulos específicos. A segunda, recebendo o evento OnDocumentComplete do IE, ou seja, toda vez que um site termina de ser carregado pelo browser, ele chama uma callback que tem, num dos argumentos, a URL carregada. Nesta callback, o malware verifica se a URL é referente a algum alvo controlado e ativa o monitoramento de geração de boletos.

Como o malware faz a troca dos dados do boleto bancário

Ao identificar uma URL relacionada a pagamento de boletos, o Bolware detecta a qual banco pertence e, então, adiciona um evento para o clique do botão “submit“, que será disparado após o usuário terminar de digitar o código do boleto e clicar para continuar o processo de pagamento.

Exemplo de formulário de pagamento de boleto, etapa em que ocorre a captura de dados

Ao receber este evento, o malware procura pelo campo onde está armazenado o boleto digitado, captura o conteúdo do campo e envia para o servidor, que irá gerar uma nova linha digitável, com a conta de destino alterada.

Código do boleto original capturado

Após substituir a linha digitável, a transação continua com o novo código, fazendo com que a transação seja concluída com sucesso, porém a conta destino será outra, desviando o seu dinheiro para a gangue do boleto e criando problemas para você com as empresas cedentes do boleto bancário.

Como proteger-se do Bolware

Com o PSafe Total para Windows, você está protegido contra o Bolware e assegura a saúde do seu computador por meio do seu completo sistema de proteção, que inclui as funções de Defesa Proativa, ativada imediatamente após a inicialização do sistema e que monitora toda atividade suspeita que pode danificar o equipamento, e Proteção às Compras Online, que endurece a segurança em transações financeiras online, similar a utilizada pelos bancos na atualidade.

Entenda mais sobre a Gangue do Boleto.