Quando un utente persiste nella frase chiave del disco crittografato (o dell'immagine del disco) nel portachiavi (ad esempio tramite Utility Disco come mostrato qui, collegamento o durante l'impostazione di un backup di Time Machine crittografato, possibilmente su un dispositivo remoto), viene creata una voce nei portachiavi di accesso (tramite Utility Disco o Sistema (per Time Machine).
Esaminandotalevoceconsecurity
vengonofornitiiseguentidati:
$securityfind-generic-password-D"disk image password" -l "A65D7474-F452-51CB-9BCC-3D594C918978.sparsebundle"
keychain: "/Library/Keychains/System.keychain"
version: 256
class: "genp"
attributes:
0x00000007 <blob>="A65D7474-F452-51CB-9BCC-3D594C918978.sparsebundle"
0x00000008 <blob>=<NULL>
"acct"<blob>="17F24503-E0E2-45B9-86EA-C79D857BA2AC"
"cdat"<timedate>=0x32303137303131303132333130335A00 "20170110123103Zdscl /Search -list /Users GeneratedUID
0"
"crtr"<uint32>=<NULL>
"cusi"<sint32>=<NULL>
"desc"<blob>="disk image password"
"gena"<blob>=<NULL>
"icmt"<blob>=<NULL>
"invi"<sint32>=<NULL>
"mdat"<timedate>=0x32303137303131303132333130335A00 "20170110123103Zsudo security add-generic-password -a "$username" -w "${passphrase}" -D "disk image password" -s "${sparsebundle}" -T /System/Library/PrivateFrameworks/DiskImages.framework/Versions/A/Resources/diskimages-helper /Library/Keychains/System.keychain
0"
"nega"<sint32>=<NULL>
"prot"<blob>=<NULL>
"scrp"<sint32>=<NULL>
"svce"<blob>="A65D7474-F452-51CB-9BCC-3D594C918978.sparsebundle"
"type"<uint32>=<NULL>
Il GUID dell'account non corrisponde a nessuno degli utenti che possono essere trovati tramite:
$ security find-generic-password -D "disk image password" -l "A65D7474-F452-51CB-9BCC-3D594C918978.sparsebundle"
keychain: "/Library/Keychains/System.keychain"
version: 256
class: "genp"
attributes:
0x00000007 <blob>="A65D7474-F452-51CB-9BCC-3D594C918978.sparsebundle"
0x00000008 <blob>=<NULL>
"acct"<blob>="17F24503-E0E2-45B9-86EA-C79D857BA2AC"
"cdat"<timedate>=0x32303137303131303132333130335A00 "20170110123103Zdscl /Search -list /Users GeneratedUID
0"
"crtr"<uint32>=<NULL>
"cusi"<sint32>=<NULL>
"desc"<blob>="disk image password"
"gena"<blob>=<NULL>
"icmt"<blob>=<NULL>
"invi"<sint32>=<NULL>
"mdat"<timedate>=0x32303137303131303132333130335A00 "20170110123103Zsudo security add-generic-password -a "$username" -w "${passphrase}" -D "disk image password" -s "${sparsebundle}" -T /System/Library/PrivateFrameworks/DiskImages.framework/Versions/A/Resources/diskimages-helper /Library/Keychains/System.keychain
0"
"nega"<sint32>=<NULL>
"prot"<blob>=<NULL>
"scrp"<sint32>=<NULL>
"svce"<blob>="A65D7474-F452-51CB-9BCC-3D594C918978.sparsebundle"
"type"<uint32>=<NULL>
L'obiettivo finale è creare in modo non interattivo la voce necessaria nel Keychain per Time Machine per raccogliere la password e allegare un'immagine disco di sparsebundle crittografata, con dimensioni limitate, su Time Capsule, per cui questo è il pezzo mancante.
Purtroppo diskimages-helper
non è autorizzato a montarlo (osservato tramite Console.app
) quando si utilizza il seguente comando per creare la voce:
BTW questo è su Sierra.
Ulteriori riferimenti: