Sexta-feira, 27 de dezembro de 2024
Por Redação O Sul | 29 de agosto de 2019
O Facebook pagou uma recompensa de US$ 10 mil (cerca de R$ 41 mil) ao pesquisador de segurança Laxman Muthiyah pela descoberta de uma falha de segurança que facilitava a invasão de contas do Instagram.
O problema, que já foi corrigido, estava na maneira que o Instagram atribui e verifica os códigos de recuperação. A falha permitia a invasão em lotes de até um milhão de contas.
Muthiyah veio a público com os detalhes da falha na segunda-feira (26), após o Facebook corrigir o sistema. A vulnerabilidade foi relatada à rede social por meio do programa de recompensas, que exige que nenhuma informação seja publicada antes do problema ser solucionado.
Não há relatos de que invasões tenham acontecido por meio dessa vulnerabilidade.
Esta é a segunda falha na recuperação de senha do Instagram descoberta por Muthiyah. A primeira vulnerabilidade, pela qual ele recebeu US$ 30 mil (cerca de R$ 125 mil), apontou que o Instagram não limitava adequadamente o número de vezes que alguém podia tentar adivinhar o código de restauração de senha.
Quando alguém não lembra a senha do Instagram, o processo de troca de senha exige que o usuário digite uma série de 6 números que é gerada pelo serviço e enviada ao e-mail usado no cadastro da conta. Esse código é válido por dez minutos e envolve um milhão de possibilidades, de 000000 a 999999. Se o número correto for digitado, o Instagram autoriza a redefinição da senha da conta.
Como o Instagram não limitava o número de tentativas de forma adequada, um hacker poderia roubar qualquer conta se conseguisse tentar todas as combinações no prazo de 10 minutos — o que pode ser feito de forma automática, com computadores programados para submeter várias combinações ao mesmo tempo. Quando encontrasse o código correto, o hacker poderia redefinir a senha do perfil para roubá-lo.
O Instagram aumentou as restrições nas tentativas, mas Muthiyah descobriu outro problema: cada código gerado pela solicitação de troca de senha era associado a um “identificador de dispositivo”, e não apenas à conta do solicitante. Um hacker podia reciclar o mesmo identificador em ataques a várias contas do Instagram e, quando fosse tentar os códigos de recuperação, eles seriam validados contra todas as contas ao mesmo tempo.
Por exemplo, se uma conta recebesse o código de recuperação 444888 e outra conta recebesse a combinação 222444, qualquer um deles seria válido e o hacker teria acesso à conta correspondente ao código.
Quanto mais pedidos de recuperação de conta o hackear iniciasse, mais chances ele teria de acertar o código de um dos perfis na lista, diminuindo o número de tentativas necessárias.
Explorando essa vulnerabilidade ao máximo, um hacker poderia iniciar o processo de recuperação de senha em 1 milhão de contas a partir do mesmo identificador. A quantidade de combinações possíveis permitiria ao hacker invadir uma conta em quase todas as tentativas. O sistema limitador do Instagram não entraria em ação, já que o hacker não estava errando o código.
O único desafio, para o hacker, seria realizar todo o processo no prazo de 10 minutos. Como os códigos são descartados após esse período, o ataque teria de ser recomeçado do zero.
O Facebook possui uma página de orientações para quem teve sua conta do Instagram invadida, independentemente do método usado pelo intruso.