O seu Mac realmente liga para a Apple cada vez que você inicia um aplicativo? Essa é a alegação que circula depois de 12 de outubro de 2020, quando um servidor da Apple tornou-se lento e os Macs modernos demoraram muito para abrir os aplicativos. Vamos explicar o que está acontecendo.
Info: isso se aplica ao macOS Big Sur e ao macOS Catalina . A desaceleração e as preocupações com a privacidade associadas não são novas no macOS Big Sur.
Índice
Por que os aplicativos Mac são assinados com certificados de desenvolvedor
Em um Mac, os aplicativos que você baixa – seja da Mac App Store ou da web – são assinados com um certificado de desenvolvedor. Sempre que você inicia um aplicativo, ele verifica se ele foi assinado por um desenvolvedor legítimo e se não foi adulterado. Isso ajuda a protegê-lo contra malware.
Por exemplo, quando o Mozilla cria o Firefox, ele compila um arquivo de aplicativo do Firefox e o assina com o certificado de desenvolvedor do Mozilla. Essa é a maneira da Mozilla de provar que o arquivo é legítimo e criado pela Mozilla. Se o arquivo do aplicativo for adulterado posteriormente, seu Mac notará a diferença.
Esses certificados são válidos apenas por um determinado intervalo de tempo – talvez alguns anos – mas podem ser “revogados” antecipadamente. Por exemplo, se a Apple descobrir que um desenvolvedor está usando seu certificado para assinar aplicativos maliciosos, a Apple revoga o certificado. Macs não carregam aplicativos com o certificado revogado.
OCSP explicou: Por que o seu Mac Phone fica em casa?
Mas espere – como o seu Mac sabe se a Apple revogou um certificado associado a um aplicativo no seu Mac? Para verificar, seu Mac usa algo chamado Protocolo de Status de Certificado Online ou OCSP; também é usado por navegadores da web para verificar os certificados do site enquanto você navega.
Quando você inicia um aplicativo, seu Mac envia informações sobre seu certificado para um servidor Apple em ocsp.apple.com. Seu Mac pergunta a este servidor Apple se o certificado foi revogado. Se não tiver, seu Mac iniciará o aplicativo. Se o certificado foi revogado, seu Mac não iniciará o aplicativo.
Isso acontece toda vez que você inicia um aplicativo?
Seu Mac se lembra dessas respostas por um período de tempo. Em 12 de novembro de 2020, as respostas foram armazenadas em cache por cinco minutos; em outras palavras, se você iniciar um aplicativo, fechá-lo e iniciá-lo novamente quatro minutos depois, seu Mac não terá que perguntar à Apple sobre o certificado uma segunda vez. No entanto, se você iniciar um aplicativo, fechá-lo e iniciá-lo seis minutos depois, seu Mac terá que solicitar aos servidores da Apple novamente.
Por algum motivo, talvez devido a mudanças no macOS Big Sur, o servidor da Apple ficou sobrecarregado e ficou muito lento em 12 de novembro de 2020. As respostas diminuíram consideravelmente e os aplicativos demoraram muito para carregar enquanto os Macs esperavam pacientemente por uma resposta da lentidão da Apple servidor.
Depois desse evento, o servidor OSCP da Apple agora diz aos Macs para lembrar as respostas de validade do certificado por 12 horas. Seu Mac ligará para casa e perguntará sobre um certificado sempre que você iniciar um aplicativo – a menos que você tenha recebido uma resposta nas últimas 12 horas, caso em que não será necessário. (As informações sobre os períodos de tempo aqui vêm do desenvolvedor de aplicativos independente Jeff Johnson .)
E se um Mac estiver offline?
A verificação OCSP foi projetada para falhar normalmente. Se você estiver offline, seu Mac ignorará silenciosamente a verificação e iniciará os aplicativos normalmente.
O mesmo é verdade se o seu Mac não puder acessar o servidor ocsp.apple.com – talvez porque o endereço do servidor tenha sido bloqueado em sua rede no nível do roteador . Se o seu Mac não conseguir entrar em contato com o servidor, ele ignora a verificação e inicia o aplicativo imediatamente.
O problema em 12 de novembro de 2020 era que, embora os Macs pudessem alcançar o servidor da Apple, o servidor em si era lento. Mas, em vez de falhar silenciosamente e iniciar o lançamento de um aplicativo, os Macs esperaram muito tempo por uma resposta. Se o servidor tivesse caído completamente, ninguém teria notado.
Qual é o risco de privacidade? O que a Apple aprende?
Existem várias questões de privacidade que as pessoas levantaram aqui. Eles são explicados na abordagem contundente do hacker e pesquisador de segurança Jeffrey Paul sobre a situação .
- Certificados são associados a aplicativos : quando seu Mac contata o servidor OCSP, ele pergunta sobre um certificado que provavelmente está associado a um aplicativo – ou, talvez, a um punhado de aplicativos. Tecnicamente, seu Mac não informa à Apple qual aplicativo você lançou. Por exemplo, se você iniciar o Firefox, a Apple ficará sabendo que você iniciou um aplicativo criado pelo Mozilla. Pode ser Firefox ou Thunderbird, mas a Apple não sabe qual. No entanto, se você iniciar um aplicativo assinado pelo Projeto Tor, a Apple pode ter uma boa ideia de que você abriu o navegador Tor .
- As solicitações estão associadas a endereços IP e horários : essas solicitações podem, é claro, ser associadas a uma data e hora e ao seu endereço IP . É assim que a internet funciona. Seu endereço IP está associado a uma determinada cidade e estado. Cada solicitação OCSP informa à Apple o desenvolvedor que criou o aplicativo que você está iniciando, sua localização geral e a data e hora em que você iniciou o aplicativo.
- A falta de criptografia significa que o Snooping é possível : o protocolo OCSP não está criptografado . A Apple não apenas obtém essas informações – qualquer pessoa no meio também pode ver essas informações. Seu provedor de serviços de Internet, administrador de rede no local de trabalho ou até mesmo uma agência de espionagem que monitora o tráfego da Internet pode espionar o tráfego OSCP entre você e a Apple e aprender todos esses detalhes. Essas solicitações também passam por uma rede de distribuição de conteúdo (CDN) de terceiros chamada Akamai. Isso os acelera – mas adiciona outro intermediário que pode espionar tecnicamente.
Informação: Seu Mac não está informando à Apple qual aplicativo você está iniciando. Em vez disso, seu Mac está apenas dizendo à Apple qual desenvolvedor criou o aplicativo que você está iniciando. Claro, muitos desenvolvedores apenas criam um aplicativo. Essa distinção técnica geralmente não significa muito.
(Lembre-se: com a mudança no comportamento de cache, o Mac não pergunta mais à Apple sempre que você inicia um aplicativo. Ele só faz isso a cada 12 horas em vez de a cada 5 minutos.)
Por que o seu Mac está fazendo isso?
Como você pode esperar, tudo se resume à segurança. O Mac é uma plataforma mais aberta do que o iPad e o iPhone. Você pode baixar aplicativos de qualquer lugar, mesmo fora da Mac App Store da Apple.
Para proteger o Mac contra malware – e sim, o malware do Mac se tornou mais comum – a Apple implementou esta verificação de segurança. Se um certificado usado para assinar um aplicativo for revogado, seu Mac pode imediatamente entrar em ação e se recusar a abrir esse aplicativo. Isso dá à Apple o poder de impedir que Macs iniciem aplicativos mal-intencionados conhecidos.
Você pode bloquear as verificações OCSP?
Essas verificações de OCSP são projetadas para falhar rápida e silenciosamente quando um Mac está offline ou não pode entrar em contato com o servidor ocsp.apple.com.
Isso os torna simples de bloquear: apenas evite que seu Mac se conecte a ocsp.apple.com. Por exemplo, você pode frequentemente bloquear este endereço em seu roteador, evitando que todos os dispositivos em sua rede se conectem a ele.
Infelizmente, parece que Big Sur não permite mais que firewalls de nível de software no Mac bloqueiem o processo trustd integrado do Mac de acessar servidores remotos como este.
Aviso: Se você bloquear o servidor ocsp.apple.com, seu Mac não notará quando a Apple revogou o certificado de desenvolvedor de um aplicativo. Você está optando por desativar um recurso de segurança e isso pode colocar o seu Mac em risco.
O que a Apple diz e promete mudar?
A Apple parece ter ouvido as críticas. Em 16 de novembro de 2020, a empresa adicionou informações sobre “proteções de privacidade” para o Gatekeeper em seu site.
Em primeiro lugar, a Apple diz que nunca combinou os dados desses certificados ou verificações de malware com quaisquer outros dados que a Apple conhece sobre você. A empresa promete não usar essas informações para rastrear quais aplicativos os indivíduos estão lançando em seus Macs.
Em segundo lugar, a Apple insiste que essas verificações de certificado não estão associadas ao seu ID Apple ou a qualquer informação específica do dispositivo além do seu endereço IP. A Apple diz que parou de registrar endereços IP associados a essas solicitações e irá removê-los dos registros da Apple.
Durante o próximo ano – em outras palavras, até o final de 2021 – a Apple diz que fará as seguintes mudanças:
- Substituir OCSP por um protocolo criptografado : a Apple diz que criará um novo protocolo criptografado para substituir o sistema OCSP não criptografado para verificação de certificados de desenvolvedor. Isso impedirá que qualquer pessoa no meio bisbilhote.
- Pare a desaceleração : a Apple também promete “fortes proteções contra falhas de servidor” – em outras palavras, os aplicativos não demoram para carregar porque um servidor ficou lento novamente.
- Ofereça escolha aos usuários : a Apple diz que os usuários do Mac poderão desligar essas proteções de segurança e impedir que o Mac verifique se há certificados de desenvolvedor revogados.
No geral, essas mudanças eliminarão vários problemas – terceiros não podem mais bisbilhotar no meio. Os Macs ainda enviarão informações à Apple que podem ser usadas para rastrear quais aplicativos você abre, mas a Apple promete não associar essas informações a você. As lentidões devem ser eliminadas, pois a Apple também corrige o problema de desempenho.
Qual será este protocolo melhor? Bem, a Apple ainda não disse com o que substituirá o OCSP. Como observa o pesquisador de segurança Scott Helme , algo como CRLite pode ajudar a enfiar a linha na agulha aqui. Imagine se o seu Mac pudesse baixar um único arquivo da Apple e atualizá-lo regularmente. O arquivo conteria uma lista compactada de todas as revogações de certificados. Sempre que você inicia um aplicativo, seu Mac pode verificar o arquivo, eliminando as verificações de rede e problemas de privacidade.
Às vezes, seu Mac envia hashes de aplicativos para a Apple
A propósito, o seu Mac às vezes envia hashes dos aplicativos que você abre para os servidores da Apple. Isso é diferente das verificações de assinatura OCSP. Em vez disso, tem a ver com reconhecimento de firma do Gatekeeper .
Os desenvolvedores podem fazer upload de aplicativos para a Apple, que os verifica em busca de malware e os “autentica” se parecerem seguros. Essas informações do tíquete de reconhecimento de firma podem ser “grampeadas” no aplicativo. Se um desenvolvedor não grampear as informações do tíquete no arquivo do aplicativo, seu Mac verificará os servidores da Apple na primeira vez que você iniciar o aplicativo.
Isso só acontece na primeira vez que você inicia uma determinada versão de um aplicativo – não sempre que ele é aberto. E a verificação online pode ser eliminada pelo desenvolvedor por meio de grampeamento.
Macs não são únicos aqui. Por exemplo, PCs com Windows 10 geralmente carregam dados sobre aplicativos que você baixa para o serviço SmartScreen da Microsoft para verificar a existência de malware. Programas antivírus e outros aplicativos de segurança também podem enviar informações sobre aplicativos de aparência suspeita para a empresa de segurança.