Muitos de nós já estiveram lá: você inicia o aplicativo Zoom enquanto corre para entrar em uma reunião para a qual já está atrasado e é atingido com um prompt para baixar atualizações. Se algo assim aconteceu com você, você está inscrito no recurso de atualização automática do Zoom.
Lançado em sua forma atual em novembro de 2021 para os aplicativos de desktop para Windows e Mac do Zoom, o recurso visa ajudar os usuários a acompanhar os patches de software. Você digita a senha do sistema quando configura o recurso inicialmente, concedendo permissão ao Zoom para instalar patches e nunca mais precisa digitá-la novamente. Fácil. Mas depois de perceber o recurso, o pesquisador de segurança de Mac de longa data Patrick Wardle se perguntou se era um pouco fácil demais.
Na conferência de segurança DefCon em Las Vegas hoje, Wardle apresentou duas vulnerabilidades que encontrou nas verificações de validação do recurso de atualização automática para as atualizações. Para um invasor que já tinha acesso a um Mac de destino, as vulnerabilidades podem ter sido encadeadas e exploradas para conceder ao invasor controle total da máquina da vítima. O Zoom já lançou correções para ambas as vulnerabilidades, mas no palco na sexta-feira, Wardle anunciou a descoberta de uma vulnerabilidade adicional, que ele ainda não divulgou ao Zoom, que reabre o vetor de ataque.
“Eu estava curioso sobre exatamente como eles estavam montando isso. E quando dei uma olhada, parecia à primeira vista que eles estavam fazendo as coisas com segurança – eles tinham as ideias certas”, disse Wardle à WIRED antes de sua palestra. “Mas quando olhei mais de perto, a qualidade do código era mais suspeita e parecia que ninguém estava auditando o suficiente.”
Para instalar atualizações automaticamente após o usuário entrar sua senha uma vez, o Zoom instala uma ferramenta auxiliar padrão do macOS que Wardle diz ser amplamente usada no desenvolvimento. A empresa montou o mecanismo para que apenas o aplicativo Zoom pudesse falar com o ajudante. Dessa forma, ninguém mais poderia se conectar e mexer com as coisas. O recurso também foi configurado para executar uma verificação de assinatura para confirmar a integridade das atualizações sendo entregues e verificou especificamente se o software era uma nova versão do Zoom, para que os hackers não pudessem lançar um “ataque de downgrade” enganando o aplicativo instalar uma versão antiga e vulnerável do Zoom.
A primeira vulnerabilidade que Wardle encontrou, porém, foi na verificação de assinatura criptográfica. (É uma espécie de verificação de selo de cera para confirmar a integridade e a proveniência do software.) Wardle sabia, por pesquisas anteriores e seu próprio desenvolvimento de software, que pode ser difícil validar assinaturas nos tipos de condições que o Zoom estabeleceu. Por fim, ele percebeu que o cheque de Zoom poderia ser derrotado. Imagine que você assine cuidadosamente um documento legal e, em seguida, coloque o pedaço de papel virado para baixo em uma mesa ao lado de um cartão de aniversário que você assinou mais casualmente para sua irmã. A verificação de assinatura de Zoom estava essencialmente olhando para tudo na mesa e aceitando a assinatura aleatória do cartão de aniversário, em vez de realmente verificar se a assinatura estava no lugar certo no documento certo. Em outras palavras, Wardle descobriu que poderia alterar o nome do software pelo qual estava tentando se infiltrar para conter os marcadores que o Zoom procurava amplamente e fazer com que o pacote malicioso passasse pela verificação de assinatura do Zoom.