Aproveitando o buzz sobre o problema do Orkut, resolvi fazer uma entrevista rápida com o Diogok, que junto com o RodLac, foram os primeiros a reportar e explorar o bug do Orkut.

O Bug atinge tanto a versão velha quanto a versão nova do Orkut, ao contrário do que muitos estão informando por ai…

Jonny Ken: Qual o bug do Orkut que foi explorado? Ele já existe faz tempo?
Diogok: Foi um bug que permitiu driblar as filtragens de códigos maliciosos, sendo assim, foi possível injetar HTML na página, possibilitando o ataque XSS. Não sei se já existe faz tempo, mas provavelmente foi com isso de “novo orkut”

Obviamente o Orkut tem um filtro anti XSS. Foi fácil burlar ou algo mirabolante? Outros usuários já estão usando esse bug para criar novas versões do script?
Foi até fácil demais, por isso possibilitou qualquer usuário com conhecimento mínimo em javascript criar códigos maliciosos. Esses usuários aproveitaram códigos prontos que possibilitavam o envio de recados em massa, e outros tipos de ações “virais” para poderem espalhar o worm.

Então a criação pode ter fugido do controle. Podem existir versões mais maliciosas e que envolvem roubo de cookies?
Sim, é possível. Apesar de orkut contar com um ótimo sistema de autenticação, informações podem ser capturadas via javascript. A versão do @RodLac foi possívelmente uma das primeiras de grande impacto, e nela os usuários só participavam de uma comunidade e espalhavam para seus amigos. Já em outra versão, os usuários faziam diversas ações, como por exemplo enviar recados, mudar o status, participar de comunidades, comentar em fotos de amigos, tudo isso com intenção de levar ao perfil e espalhar o worm. Nada garante que não possa surgir piores

Agora não dá para roubar comunidades pq precisa colocar a senha, não? Ou ainda é possível?
Não, não é possível roubar comunidades pois é preciso da senha. O script não consegue capturar senhas, atualmente só são usados pra encher comumidades e perfis mesmo.

Quanto tempo passou entre descobrir a falha, explorar a falha e avisar o Orkut/google? O que aconteceu primeiro – explorar a falha ou avisar o Orkut? Eles deram alguma resposta?
Foi bem rápido, quando a falha foi descoberta ninguém reportou, mas quando o Rodrigo resolveu colocar em prática, juntamente ele reportou e vários usuários que foram “infectados” resolveram reclamar também. Alguns usuários avançados, no forum de ajuda do orkut, recomendaram limpar os cookies e mudarem a senha, ação que não adianta.

Como está a situação agora (sábado, 25 de setembro de 2010, 13:41)? O Orkut já corrigiu a falha?
Vou ir testar pra dizer melhor.

Testando o bug na versão nova do Orkut. Falha permite inserção de códigos (maliciosos ou não) por um usuário.

(3 min depois)  Bom, parece que estão trabalhando nisso, um tópico que eu tinha feito uma postagem testando o funcionamento foi apagado, mas eu consegui usar um código diferente (variante) e funcionou. Testei no novo orkut e no velho.

Então a vulnerabilidade vale para as 2 versões (antigo e novo Orkut)? Tem alguns comentários dizendo que ele só funciona no novo…
Se isso acontece deve ser em partes, nas atualizações parece que não funciona mesmo no novo. Vou mandar o link do tópico que estou testando

(testei, e realmente abriu o alert javascript) Sim… verdade! Funcionou no velho e no novo Orkut!
O negócio é que parece que eles estão tentando sanar o bug filtrando algumas tags, outras não deixaram de funcionar… por isso a confusão de “acabou” “não acabou”

Como o Google / Orkut tratam os usuários que reportam bugs? Entram em contato confirmando? Agradecem? Reportam a correção? Ou simplesmente ignoram?
Geralmente eles respodem (demoram) que estão trabalhando pra corrigir o bug, mas isso demora MUITO pra um site desse porte (não é só com o orkut, a falha do twitter por exemplo deu na mesma), algumas vezes não temos reposta nenhuma, somos considerados perigosos e nos deletam imediatamente.

Ou seja, você reporta um bug e eles cancelam sua conta?
Na verdade, sempre que descobrimos bugs desse tipo procuramos reportar, mas com a demora, usuários mal-intencionados usam para roubar informações e fazem besteira com os perfis das pessoas (como por exemplo criar tópicos em todas comunidades em que a vitima participa, com notícias do tipo: fulano pelado e etc…). Sendo assim, criamos um grande tumulto, que na verdade não tem a intenção de prejudicar ninguém, mas sim alertar a equipe do site para que possamos navegar sem medo de dar de cara com recados do tipo citado.
(e por reportar desse modo, usando do bug, somos deletados de todo serviço existente na google)

É uma situação realmente complicada, principalmente quando o bug é descoberto com a ajuda de um grupo muito grande de colaboradores.

De acordo com a sua experiência, é realmente muito complexo alguém roubar os cookies do Orkut para acessar outros sites do Google, como por exemplo o Gmail? O Google Account é seguro nesse quesito, uma vez que é tudo interligado?
O orkut tem um sistema de autenticação digamos que razoável, mas não é nada que seja intocável. Sobre acessar outros sites do google, existe um problema, o mesmo cookie que usamos pra acessar o orkut, pode ser usado pra acessar outros serviços da google, ou seja: se alguém capturar seu cookie no orkut, pode ter acesso a diversos outros serviços google. Sendo assim, capturando os cookies de seu orkut, posso usar para acessar outros serviços google vinculadas a mesma conta. E vice-versa.

E caso o Cookie tenha sido roubado, não adianta nem apagar o Cookie, passar CClean ou trocar a senha, como estão sugerindo toda vez que acontece um ataque XSS (como aconteceu no twitter na semana passada), certo?
Medidas como todas essas que sites de segurança indicam devem ser analisadas minunciosamente para poder dizer que “não funcionam”, pois trocar a senha teoricamente não afetaria em um cookie, mas no twitter isso acontece. Eu no momento (não analisei profundamente o serviço de autenticação e sessões do orkut) digo que todo cuidado é pouco, não custa nada fazer os processos que são recomendados. Mais: alguns desses worms que se espalharam no orkut usaram o status para espalhar o suposto “vírus”, ou seja, você pode ver oque foi alterado no seu orkut e voltar pra o que era antes, lembrando que todo lugar que era possível usar HTML livremente no orkut ficou sujeito a esse worm.

Para terminar, o que você sugere para os programadores não criarem ferramentas com esse problema? Usar filtro em todo Post e Get ou existe algo mais seguro?
Eu sugiro oque eu faço sempre quando desenvolvo algo: manter em mente durante todo o processo que existem pessoas que só querem destruir coisas e ganhar com isso, e que o seu projeto não será perdoado. Sendo assim, FILTREM TUDO! Alias, existem muitos projetos de “filtragem” feitos com ótimas contribuições na internet, open source, se você não quer gastar muito tempo com isso, pode usar projetos como esses. O Negócio é estar sempre atualizado no quesito segurança, ler blogs que falam sobre isso e etc.