Saltar para o conteúdoHisnLabs
← O seu sistema operativo, a sua primeira linha de defesa

Lição 3 de 4 · 8 min

Como o macOS verifica as apps que abre

Assinatura de código, Gatekeeper, notarização e XProtect: quatro verificações que correm antes e depois de abrir uma app.

Sempre que abre uma app pela primeira vez, o macOS corre uma pequena série de verificações antes de a deixar iniciar. Na maioria das vezes nunca as vê; só nota quando uma delas para alguma coisa. Esta lição segue o que realmente acontece, usando a própria descrição da Apple de cada passo.

Assinatura de código: provar quem a construiu

A documentação de segurança da Apple explica que, no macOS, "a assinatura de código é feita pelo programador usando o seu certificado Developer ID (emitido pela Apple). A verificação desta assinatura prova ao utilizador que o software de um programador não foi adulterado desde que o programador o construiu e assinou." Uma assinatura não diz que a app é segura; diz que a app é exatamente o ficheiro que esse programador produziu, não modificado desde então.

Notarização: a própria verificação da Apple

A notarização é um passo adicional e separado. A Apple explica que "pode ser feita por qualquer pessoa na cadeia de distribuição de software e prova que foi dada à Apple uma cópia do código para verificar [conteúdo prejudicial], e que não foi encontrado nenhum [software prejudicial conhecido]. O resultado da Notarização é um bilhete, guardado nos servidores da Apple e que pode opcionalmente ser agrafado à app." Desde o macOS Catalina, esta verificação aplica-se por defeito a quase tudo o que abre, seja qual for a forma como chegou ao seu Mac.

Gatekeeper: a verificação que corre quando abre uma app

O Gatekeeper é o que realmente aplica estes resultados no momento em que faz duplo clique em algo. A Apple descreve-o como concebido "para ajudar a garantir que só software de confiança corre no Mac de um utilizador. Quando um utilizador descarrega e abre uma app, um plug-in, ou um pacote instalador de fora da App Store, o Gatekeeper verifica que o software é de um programador identificado, foi notarizado pela Apple como estando livre de [conteúdo prejudicial conhecido], e não foi alterado. O Gatekeeper também pede a aprovação do utilizador antes de abrir software descarregado pela primeira vez, para garantir que o utilizador não foi enganado a correr código executável que acreditava ser simplesmente um ficheiro de dados." Esse é o alerta que vê da primeira vez que abre algo descarregado da internet.

  1. Descarrega uma app de fora da App Store e faz duplo clique nela.
  2. O Gatekeeper verifica a assinatura do programador e procura o bilhete de notarização da Apple para ela.
  3. Se as verificações passarem, o macOS ainda lhe pede para confirmar que a quer abrir da primeira vez.
  4. Se a Apple tiver revogado a app, ou nada corresponder, o macOS recusa-se a abri-la e diz-lhe porquê.

XProtect: a vigiar depois de a app ter corrido

A última camada funciona depois do facto. O guia da Apple descreve o XProtect como a tecnologia "antivírus incorporada do macOS para a deteção e remoção baseada em assinaturas de [software prejudicial conhecido]", que "verifica a presença de conteúdo [prejudicial] conhecido sempre que: uma app é aberta pela primeira vez, uma app foi alterada, [ou] as assinaturas do XProtect são atualizadas", com a Apple a atualizar essas assinaturas automaticamente, independentemente das atualizações completas do sistema. Se encontrar uma ameaça conhecida, a Apple explica que "bloqueia-a e move-a para o Lixo. Depois avisa o utilizador no Finder."

A reter

  • A assinatura de código prova que o ficheiro de uma app não mudou desde que o seu programador a construiu e assinou; não significa, por si só, que a app é segura.
  • A notarização é a Apple a verificar uma cópia do código da app antes de poder correr por defeito no macOS atual.
  • O Gatekeeper aplica ambas as verificações no momento em que abre uma app, e pede a sua aprovação da primeira vez.
  • O XProtect continua a verificar depois de a app ter corrido, usando assinaturas que a Apple atualiza automaticamente e independentemente das atualizações completas do sistema.
  • O macOS permite substituir estas verificações para uma app específica nas Definições, mas fazê-lo remove uma proteção real, por isso deve ser raro e deliberado.

Teste-se

  1. 1. O que prova realmente uma assinatura de código válida?

    • Que a app está livre de todos os problemas possíveis
    • Que o ficheiro da app não mudou desde que o programador a assinou — Certo.
    • Que a app foi revista por uma pessoa na Apple
    • Que a app não consegue aceder à internet

    A assinatura de código verifica a integridade e a identidade do programador, não que a app é de resto segura ou bem comportada.

  2. 2. O que significa a notarização, segundo a Apple?

    • A Apple escreveu a app
    • A Apple verificou uma cópia do código da app e não encontrou ameaças conhecidas — Certo.
    • A app foi comprada na App Store
    • A app foi traduzida para várias línguas

    A notarização prova que foi dada à Apple o código para verificar, e que nada conhecido como prejudicial foi encontrado nele.

  3. 3. Quando pede o Gatekeeper a sua aprovação para abrir uma app?

    • Sempre que abre qualquer app
    • Só da primeira vez que abre software descarregado — Certo.
    • Só para apps da App Store
    • Nunca, funciona silenciosamente

    O Gatekeeper pede aprovação da primeira vez que abre software descarregado, para que não possa ser enganado a correr algo inesperado.

  4. 4. Como atualiza o XProtect as suas assinaturas de deteção?

    • Só quando instala uma grande atualização do macOS
    • Automaticamente, independentemente das atualizações completas do sistema — Certo.
    • Só quando corre manualmente uma verificação
    • Nunca se atualiza depois de instalado

    A Apple atualiza as assinaturas do XProtect automaticamente e separadamente das atualizações completas do sistema, muitas vezes diariamente.

Praticar com o FireAI

Ponha esta lição em prática no seu próprio Mac.

Fontes

Ponha em prática no seu Mac

Experimente todas as funcionalidades grátis durante 17 dias, sem cartão.

Transferir para Mac Docs