Muitos serviços que usamos diariamente revelam-se bastante problemáticos. Desta vez, nossa atenção foi atraída por uma vulnerabilidade no navegador Yandex, construído em Chromium, o que poderia ter permitido que invasores roubassem o histórico de navegação dos usuários, senhas, favoritos. Mais particularmente, a vulnerabilidade em questão é do tipo falsificação de solicitação entre sites. A falha foi descoberta por Ziyahan Albeniz, um pesquisador da Netsparker.
Em primeiro lugar, o que exatamente é uma falsificação de solicitação entre sites (Falha CSRF)?
Falsificação de solicitação entre sites, também conhecido como ataque de um clique ou equitação de sessão, CSRF ou XSRF para breve, é um tipo de exploração maliciosa de um site onde comandos não autorizados são transmitidos de um usuário em quem o site confia. Ao contrário do cross-site scripting (XSS), que explora a confiança de um usuário em um determinado site, CSRF explora a confiança que um site tem no navegador do usuário. (Através da Wikipedia)
Como um ataque CSRF é realizado
disse brevemente, para realizar um ataque bem-sucedido desse tipo, o agente malicioso terá que induzir o usuário a visitar um site comprometido que forçou de forma transparente o navegador do usuário a executar ações em uma página confiável. Esta é uma página onde o usuário está autenticado sem o seu conhecimento.
No caso do navegador Yandex, esse problema reside no formulário de login do navegador, onde o usuário insere um endereço de e-mail e senha para uma conta interna. Este é um recurso muito semelhante ao recurso de sincronização de dados do Chrome.
A vulnerabilidade CSRF foi encontrada na tela de login do Yandex Browser que é usado pelos usuários para fazer login em sua conta Yandex para sincronizar os dados do navegador (como senhas, favoritos, valores de formulário, história) entre os diferentes dispositivos que eles possuem, tais como smartphones, tablets e PCs. O navegador Google Chrome tem o mesmo recurso.
Como a falha CSRF pode ser explorada no navegador Yandex?
O pesquisador explica que tudo o que um invasor precisa fazer é forçar a vítima a fazer o login usando suas próprias credenciais. É assim que o agente malicioso obteria informações pessoais salvas no navegador, incluindo história, senhas, torneiras abertas e favoritos.
É difícil explorar a falha do CSRF? De modo nenhum!
O relatório de Albeniz indica que o bug é fácil de explorar. Tudo o que um invasor precisa fazer é convencer o usuário a acessar um site malicioso. O último conterá o código que criou um formulário de login de sincronização de dados do navegador Yandex e enviará os dados com as credenciais do hacker. A vulnerabilidade CSRF permitirá que esses dados iniciem uma operação de sincronização automática. O resultado final é uma cópia dos dados do usuário enviada ao invasor. Isso continuará ocorrendo, a menos que o usuário descubra e tome medidas. Em outras palavras, no caso de nenhuma contra-medida, informações como novas credenciais continuarão a ser sincronizadas sem o conhecimento do usuário.
Yandex foi notificado sobre o problema e foi corrigido em maio 2016. Contudo, o pesquisador compartilhou que divulgar o bug e se comunicar com a empresa não foi um processo fácil. Yandex não o informou que a vulnerabilidade foi corrigida.