Autorizzazioni per directory macOS Mojave


10

MacOS Mojave ha esteso gli effetti di SIP nelle directory home degli utenti. Per impostazione predefinita, l'accesso è negato a molte directory nella home directory di un utente. Seguono alcuni esempi di queste directory.

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

Per accedere a queste directory da un terminale, l'applicazione del terminale deve essere definita in Preferenze di Sistema> Sicurezza e Privacy> Privacy> Accesso completo al disco. La configurazione funziona, ad eccezione della seguente directory sul mio sistema. Lo stesso comportamento può esistere per altri dati nei contenitori - non sono sicuro.

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

Il comportamento intrigante è facile da riprodurre. La directory non è nemmeno visibile.

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

Uso rsyncper eseguire il mirroring della mia directory home su un disco rigido esterno; ma non posso più farlo perché si rsynclamenta "Errore di I / O - salto dell'eliminazione di file" che interrompe l'effetto di mirroring. Non trovo alcuna documentazione su questo problema. Il supporto Apple non ha idea. Perché questa directory è speciale e come possiamo accedervi senza disabilitare SIP?

Risultati di ulteriori indagini con SIP disabilitato

Secondo System Information, l'aggiornamento di Mojave è stato eseguito il 24 settembre 2018. Anche la directory è stata creata lo stesso giorno. Il mio utente possiede la directory e il gruppo staff è il proprietario del gruppo. Le sue autorizzazioni sono 0700. Ha attributi estesi come indicato dal @simbolo. Nessun ACL. Nessuna bandiera.

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)

Dopo aver disabilitato SIP, aver eliminato la directory e riattivato SIP, la directory riappare con le stesse autorizzazioni non appena viene aperta Mail. Mail (Versione 12.0 (3445.100.39)) non ha plugin.

Risultati di una nuova installazione il 16 ottobre 2018

La directory non esiste dopo la formattazione e la reinstallazione. Non ho ancora idea di come sia mai stato lì per iniziare.

Risultati di un aggiornamento del 29 marzo 2019

La directory è riapparsa coincidente con l'aggiornamento a Mojave 10.14.4 (18E226) e / o Mail versione 12.4 (3445.104.8).


La directory è protetta da un flag di file, ACL o attributo esteso. Ho notato che molti dei file e delle directory hanno acquisito l' com.apple.quarantineattributo dopo l'aggiornamento a Mojave, per esempio. Per i miei backup (usando resticda Homebrew), semplicemente ignoro questi bit ~/Librarypoiché nessuno di loro sembra interessarmi o cosa faccio di solito comunque. Ne ho 24 anche io.
Kusalananda

Siamo spiacenti, ho riletto la tua domanda e in effetti, dopo aver aggiunto iTerm2 (nel mio caso) alle app con "Accesso completo al disco", il backup ora viene eseguito senza problemi (grazie per quello!). Non posso dire altro sul tuo caso. Sulla mia macchina, posso vedere che particolare directory e contiene link simbolici ad alcune delle directory nella mia home directory (il "default" quelli come Documents, Movies, Musicetc.).
Kusalananda

Non posso dire altro. Non ho quella directory / symlink. Hai aggiornato o reinstallato? "DataVaults" suona un campanello relativo a qualsiasi applicazione o funzionalità che hai usato in precedenza?
Kusalananda

Risposte:


6

La directory DataVaults ha a che fare con i diritti . L'accesso è impedito a meno che il proprietario dell'autorizzazione non conceda l'accesso. I diritti per Mail.app possono essere elencati come segue e forniscono un plist XML.

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

Al momento, l'unico metodo rimanente per acquisire l'accesso alla directory è disattivare SIP. Per quanto riguarda il mio rsyncproblema, ho optato per mantenere attivo SIP e ho utilizzato l' rsysncopzione exclude, per ignorare la directory DataVaults, che, a proposito, è priva di contenuto.

Da un commento al blog di Eclectic Light Company , che offre ulteriori indizi:

/var/folders/t9/[long ID]/C/com.apple.QuickLook.thumbnailcache”è un DataVault, che è un nuovo tipo di contenitore per la privacy che Apple ha introdotto circa 10.13.4. Questi file / cartelle sono identificati dal flag del file "UF_DATAVAULT". Questi sono implementati tramite SIP (non tecnicamente sandboxing, ma la stessa sostanza). Le applicazioni necessitano di un diritto per creare o accedere a depositi di dati specifici o persino per stat () una cartella DataVault.

Questi dispositivi meritano un'indagine più approfondita. Apple non (e apparentemente non ha intenzione di) rilasciare questi diritti a terzi. Considera le implicazioni di ciò: Apple sta creando una piattaforma in cui solo i dati creati nelle applicazioni Apple ottengono il massimo livello di sicurezza.

Considera anche che tu (l'utente) non puoi vedere cosa c'è in questi DataVaults senza disattivare SIP. È difficile dire cosa Apple trattiene in questi, ma alcuni di loro sono un po 'allarmanti. Ecco solo alcuni depositi dati noti:

~/Library/VoiceTrigger/SAT

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

Il primo apparentemente ha "Trascrizioni audio Siri" - tutto ciò che tu abbia mai pronunciato su Siri sul tuo Mac.

Non ho trovato un flag ~/Library/Containers/com.apple.mail/Data/DataVaultse un'installazione pulita di Mojave ha fatto sì che la directory non apparisse più da allora.

È stata inoltre pubblicata una panoramica sommaria dei controlli di accesso.


Potresti anche considerare l'opzione rsync --ignore-errors.
Dave,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.