macOS Permissões do Diretório Mojave

7

O MacOS Mojave estendeu os efeitos do SIP para os diretórios home dos usuários. Por padrão, o acesso é negado a vários diretórios no diretório inicial de um usuário. Alguns exemplos desses diretórios seguem.

~/Library/Messages
~/Library/Mail
~/Library/Safari
[… etc.]

Para acessar esses diretórios de um terminal, o aplicativo do terminal deve estar definido em Preferências do sistema > Segurança & Privacidade > Privacidade > Acesso Completo ao Disco. A configuração funciona, exceto pelo seguinte diretório no meu sistema. O mesmo comportamento pode existir para outros dados em contêineres - não tenho certeza.

~/Library/Containers/com.apple.mail/Data/DataVaults

O comportamento intrigante é fácil de reproduzir. O diretório nem é visível.

cd ~/Library/Containers/com.apple.mail/Data
ls
ls: DataVaults: Operation not permitted

Eu uso rsync para espelhar meu diretório pessoal em um disco rígido externo; mas, eu não posso mais fazê-lo porque rsync reclama, "erro IO encontrado - ignorando a exclusão de arquivo", que quebra o efeito de espelhamento. Não encontro nenhuma documentação sobre esse problema. O suporte da Apple não faz ideia. Por que esse diretório é especial e como podemos obter acesso a ele sem desabilitar o SIP?

Resultados de investigação adicional com pessoas com deficiências de SIP

De acordo com a System Information, a atualização do Mojave foi realizada em 24 de setembro de 2018. O diretório também foi criado no mesmo dia. Meu usuário possui o diretório e o grupo de funcionários é o proprietário do grupo. Suas permissões são 0700. Ele possui atributos estendidos, conforme indicado pelo símbolo @ . Não há ACLs. Não há bandeiras.

xattr -l ~/Library/Containers/com.apple.mail/Data/DataVaults

com.apple.quarantine: 0082;00000000;Mail;
com.apple.rootless: Mail

ls -lO DataVaults
(no result; exit 0)

Após desabilitar o SIP, excluir o diretório e reativar o SIP, o diretório reaparecerá com as mesmas permissões assim que o Mail for aberto. Mail (versão 12.0 (3445.100.39)) não tem plugins.

Resultados de uma nova instalação em 16 de outubro de 2018

O diretório não existe após a formatação e a reinstalação. Eu ainda não tenho ideia de como ele estava lá para começar.

    
por Christopher 01.10.2018 / 15:21

1 resposta

3

O diretório DataVaults tem a ver com os direitos . O acesso é impedido, a menos que o proprietário do direito conceda o acesso. Os direitos para Mail.app podem ser listados como segue e fornece um plist de XML.

codesign -d --entitlements - /Applications/Mail.app/

Neste momento, o único método restante para adquirir acesso ao diretório é desativar o SIP. Em relação ao meu problema de rsync , optei por manter o SIP ativado e usei a opção rsysnc , exclude , para ignorar o diretório DataVaults, que, a propósito, é desprovido de conteúdo.

De um comentário, o blog em Eclectic Light Company , oferecendo mais pistas:

/var/folders/t9/[long ID]/C/com.apple.QuickLook.thumbnailcache” is a DataVault, which is a new type of privacy container that Apple introduced sometime around 10.13.4. These files/folders are identified by the “UF_DATAVAULT” file flag. These are implemented via SIP (not technically sandboxing, but the same gist). Applications need an entitlement to make or access specific data vaults, or even to stat() a DataVault folder.

These devices are worth some deeper investigation. Apple doesn’t (and apparently has no plans to) issue these entitlements to third-parties. Consider the implications of that – Apple is creating a platform where only data created in Apple applications gets the highest level of security.

Also consider that you (the user) can’t see what’s in these DataVaults without turning off SIP. It’s hard to tell what Apple is keeping in these, but some of them are a bit alarming. Here are just a few known data vaults:

~/Library/VoiceTrigger/SAT

~/Library/Containers/com.apple.mail/Data/DataVaults /private/var/folders/0z/fs4vdwmx6g31n69qt5v5ff580000gn/0/com.apple.nsurlsessiond

That first one apparently has “Siri Audio Transcripts” – everything you’ve ever uttered to Siri on your Mac.

Eu não encontrei um sinalizador em ~/Library/Containers/com.apple.mail/Data/DataVaults , e uma instalação limpa do Mojave fez com que o diretório não aparecesse novamente desde.

Um resumo geral dos controles de acesso também foi publicado.

    
por 05.10.2018 / 14:59