Uma brecha no sistema operacional Mac OS X, da Apple, permite interceptar dados de conexões a sites seguros, aqueles em que um cadeado aparece na barra de endereços. A falha foi descoberta após o mesmo problema ser corrigido no iOS, sistema usado em iPhones, iPads e iPods, na sexta-feira (21).
Os sites seguros usam o protocolo "https" e são protegidos por criptografia contra a interceptação de tráfego da rede. Apenas o servidor do site pode decodificar os dados enviados, de modo que, mesmo que alguém capture esses dados, eles estarão embaralhados. A brecha permite que um hacker falsifique o cadeado, podendo criar, por exemplo, um site falso de banco que esteja no endereço real da instituição.
Um programa para explorar a falha foi divulgado nesta terça-feira (25) pelo especialista Aldo Cortesi. "A Apple devia ter pelo menos atualizado ambos [iOS e OS X] simultaneamente", disse Cortesi ao site "ZDNet". Ele afirmou que levou um dia para adaptar seu programa de interceptação para que ele explorasse a vulnerabilidade no OS X.
O maior risco está em sistemas de atualização de software. Como eles normalmente fazem uso do "https" para identificar o servidor de atualização legítimo, um hacker poderia falsificar uma atualização, fazendo com que o sistema baixe e instale um software fornecido pelo hacker. Dados de softwares da Apple, como iCloud, também estão vulneráveis.
Os navegadores Firefox e Chrome para OS X, no entantõ, não são afetados pelo problema, pois não usam o código da Apple para verificar a autenticidade dos certificados.
Usuários estão sujeitos à interceptação ao usar conexões Wi-Fi ou outras redes não confiáveis, onde um indivíduo mal intencionado pode aplicar um software para ler o tráfego da rede. Na prática, qualquer pessoa com acesso a uma rede intermediária, como um provedor de acesso, também poderia fazer uso do problema para interceptar os dados de sites seguros. Isso, no entanto, não é muito comum, deixando as redes Wi-Fi como a forma mais simples para tirar proveito do problema.
Programadores deram apelido: 'ir para falha'
O código da Apple em que aparece a vulnerabilidade é aberto e pode ser visto no próprio site da companhia. A brecha foi criada por uma declaração "goto fail" ("ir para falha", em traduçao) fora de lugar. Essa declaração encerra a rotina de verificação quando uma falha é encontrada na verificação do site seguro.
No entanto, o código tem dois "goto fail" repetidos, em sequência. O primeiro está em uma condição de falha, mas o segundo, não. Como ele encerra a verificação fora de um âmbito de falha, parte da verificação simplesmente não é executada.
A brecha pode ser explorada usando dados de um certificado de segurança legítimo e trocando-os pelo falso a partir do momento em que as verificações não são mais realizadas pelo código. O ponto de falha é tal que os dados legítimos que são verificados são públicos, podendo ser facilmente obtidos do site que está sendo interceptado.
A falha, por isso, recebeu o apelido de "goto fail" ou "ir para falha".