No artigo de hoje, continuamos o assunto sobre camadas de proteção do OS X em relação a programas maliciosos, também conhecidos como malwares. Este é mais um artigo da nossa série “Segurança no mundo Apple”.
Quarentena de arquivos é a primeira linha de defesa contra programas maliciosos baixados de fontes externas. O recurso foi introduzido a partir da versão 10.5 (Leopard) do Mac OS X, e segue evoluindo ao longo do tempo. Mas como ele funciona?
Arquivos que não são reconhecidos pelo sistema como confiáveis, e que são baixados ou recebidos utilizando o Safari, Mail, iChat e alguns aplicativos de terceiros (Chrome, por exemplo), são colocados em “quarentena”. Ao abrir pela primeira vez um arquivo que está em quarentena, o sistema informará ao usuário qual foi o aplicativo que salvou aquele arquivo, em que dia e horário e de onde o download foi feito. Em seguida, fica a critério da pessoa checar a informação e decidir se o arquivo será executado.
Arquivos em “quarentena” possuem um atributo estendido (com.apple.quarantine
) adicionado pelo app responsável pelo download do arquivo. Isso possibilita que, antes da execução do aplicativo, o Launch Services identifique e informe ao usuário arquivos que estão em “quarentena”.
É muito comum a Apple utilizar metadados para armazenar informações sobre local de download, autor, tipo da aplicação, etc. É como se eu tivesse um arquivo de música e um segundo arquivo contendo informações sobre aquela música (nome, cantor, letra, capa…), no entanto o sistema de arquivo apresenta como se fosse um único com duas áreas, sendo uma de dados e outra de informações complementares. Essa área de armazenamento é possível em função do sistema de arquivos Mac OS Extended.
Caso você queira verificar se um arquivo contém o atributo com.apple.quarantine
, entre no Terminal e digite:
Para apagar este atributo (atenção: não recomendado), digite:
[code lang=”cpp”]xattr -d com.apple.quarantine arquivo[/code]Outra funcionalidade do recurso de arquivos em “quarentena” é analisar o arquivo e seu conteúdo na busca por programas maliciosos, conhecidos de acordo com uma base atualizada pela Apple. Se o malware é detectado, uma caixa de diálogo aparece com o nome da ameaça contida no arquivo. Ele adverte que o usuário mova o arquivo para a lixeira ou ejete a imagem, evitando danos ao sistema.
Essa base com informações sobre malwares é atualizada automaticamente e em segundo plano pela Apple. Para verificar a data da última atualização, mais uma vez via Terminal:
[code lang=”cpp”]defaults read /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/XProtect.meta.plist LastModification[/code]Caso você queira que o sistema verifique se existe uma atualização da base, logue-se como super-usuário (root) no Terminal — é a primeira linha abaixo, que deve ser seguida pela sua senha (contanto que você já esteja logado como administrador, é claro) — e digite:
[code lang=”cpp”]sudo su/usr/libexec/XProtectUpdater[/code]
Uma nova funcionalidade do recurso de arquivos em “quarentena” será o Gatekeeper*, o qual estará disponível no lançamento do OS X 10.8 (Mountain Lion).
(*) Infelizmente eu ainda não posso passar detalhes técnicos sobre esse recurso.