Počínaje Lionem má každý uživatel stínový soubor. Všechny jsou uloženy v /var/db/dslocal/nodes/Default/users
adresář a jsou přístupné pouze pro uživatele root. Například:
$ ls -lah /var/db/dslocal/nodes/Default/users/
total 296
drwx------ 77 root wheel 2.6K Jul 27 20:30 .
drw------- 12 root wheel 408B Jul 27 20:30 ..
-rw------- 1 root wheel 4.0K Jul 27 20:30 Guest.plist
-rw------- 1 root wheel 260B Jul 27 20:17 _amavisd.plist
-rw------- 1 root wheel 254B Jul 27 20:17 _appleevents.plist
-rw------- 1 root wheel 261B Jul 27 20:17 _appowner.plist
-rw------- 1 root wheel 276B Jul 27 20:17 _appserver.plist
Jsou to také binární soubory seznamu vlastností. Nejjednodušší způsob, jak je zobrazit, je pomocí plist
příkaz. Například:
$ plutil -p /var/db/dslocal/nodes/Default/users/root.plist
{
"smb_sid" => [
0 => "XXXX-XXXX"
]
"uid" => [
0 => "0"
]
"passwd" => [
0 => "XXYYXX"
]
}
Mac OS X nepoužívá standardní /etc/passwd a /etc/shadow. Místo toho používá databázi. Dříve existovalo GUI zvané NetInfo, ale to bylo nahrazeno dscl
(Příkazový řádek adresářových služeb).
$ dscl
> read /Local/Default/Users/David Password
Password: ********
Bohužel je to tak daleko, jak se s nástrojem mohu dostat. Místo hesla to vytisklo hvězdičky. Možná existuje způsob, jak to přimět, aby to hash vzdalo, ale nenašel jsem ho.
Její článek podrobně popisuje používání DSCL a prolamování hesel na počítačích Mac.