Вопрос: Расположение файла пароля администратора


Я знаю, что Mac хранит хэш (SHA) пароля в файле, но я не помню, как кто-то может мне помочь?


4
2018-03-15 22:42


Источник


Зачем вам нужно знать местоположение файла с помощью хэшей? Чего вы пытаетесь достичь? - That Brazilian Guy


Ответы:


В последних версиях OS X (я забыл, изменилось ли это в 10.6 или 10.7), теневые хэши были перемещены из / var / db / shadow / hash / <generateduid> в основную базу данных пользователя в качестве атрибута в / var / db / dslocal / узлы / Default / пользователи / <AccountName> .plist. Вы можете получить их непосредственно из .plist (например, с помощью defaults команда), но, вероятно, лучше всего перейти через службы каталогов с помощью dscl потому что это также может сообщить вам, в каком формате он находится (SALTED-SHA512-PBKDF2 в этом примере):

$ sudo dscl . read /Users/joeuser AuthenticationAuthority
AuthenticationAuthority: ;ShadowHash;HASHLIST:<SALTED-SHA512-PBKDF2> ;Kerberosv5
;;joeuser@LKDC:SHA1.35AA07E97624F005350C5DC08A0633E9AFE17A14;LKDC:SHA1.35AA07E97
624F005350C5DC08A0633E9AFE17A14
$ sudo dscl . read /Users/joeuser dsAttrTypeNative:ShadowHashData
dsAttrTypeNative:ShadowHashData:
 62706c69 73743030 d101025f 10145341 4c544544 2d534841 3531322d 50424b44 4632d30
3 04050607 0857656e 74726f70 79547361 6c745a69 74657261 74696f6e 734f1080 4a52f1
ce a8cbadda 6c0e5483 9e7c3663 4d3c3327 d6dc6ad9 eb6ae851 d5837201 e15d8a58 641cf
ab0 46fc7b18 4bfafab7 8b44a6a6 424a241e 239ee429 12a7c304 2de27551 218257a7 a26e
f16d ceeac49f 5e3161c3 b63cab11 f6d92601 85cc134a 4e8ca7ad 7bd826be fc08606e eb1
2c642 5ec370e8 95ffb534 42488365 61649a73 4f1020f7 54827b04 dd6f6c24 799a8cb8 d1
5243a6 42a3cef4 566100d3 177cfeec b251f211 6532080b 22293136 41c4e700 00000000 0
0010100 00000000 00000900 00000000 00000000 00000000 0000ea

4
2018-03-16 01:23





Хеши были в /var/db/shadow/hash/ в 10.6 и ранее, но они хранятся в /var/db/dslocal/nodes/Default/users/username.plist в 10.7 и 10.8.

Вы можете распечатать хэш-данные с помощью Дэйв Грол (sudo dave -s $USER) или что-то вроде этого:

sudo defaults read /var/db/dslocal/nodes/Default/users/$USER.plist ShadowHashData | tr -dc '0-9a-f ' | xxd -p -r | plutil -convert xml1 - -o -

Если включен автоматический вход в систему, пароль логического ключа для входа также сохраняется в /etc/kcpassword зашифрованный с помощью шифрования XOR.

sudo ruby -e 'key = [125, 137, 82, 35, 210, 188, 221, 234, 163, 185, 31]; IO.read("/etc/kcpassword").bytes.each_with_index { |b, i| break if key.include?(b); print [b ^ key[i % key.size]].pack("U*") }'


3
2018-03-16 11:15





Хэш должен располагаться по адресу /var/db/shadow/hash под GUID для пользователя.

GUID пользователя можно найти, выполнив:

dscl localhost -read /Search/Users/<username> | grep GeneratedUID | cut -c15-


2
2018-03-15 22:54



В «db» для меня нет директории с именем «shadow» - Rodd
Если у вас нет root, вам придется загрузиться в однопользовательский режим. Если вам просто нужно сбросить пароль root, следуйте инструкциям здесь: kashiv.com/2012/04/16/... - Josh


Немного иронии ... пароли, конечно, есть Mac OS)

Может быть, они могут даже увидеть в терминале:

security dump-keychain -d ~/Library/Keychains/login.keychain

Как восстановить пароль Mac OS X без диска установщика

Как сбросить пароль для Mac OS X 10.7 Lion

Сброс пароля, поиск файла изменений при сбросе пароля.


2
2018-03-15 23:16



этот файл выглядит как «главный файл» для Keychain Access. Но в Keychain Access нет пароля для входа ... - Rodd
@Rodd может быть сброшен пароль и изменить файл поиска во время сброса? - STTR


Как я знаю, Mac также основан на Linux (я могу ошибаться), можете ли вы проверить корневую папку для файла, который называется «pwd»?


0
2018-03-15 22:46



Mac OS X получен из BSD, основанного на (но не производном от) UNIX, так же, как Linux был основан на (но не полученном) Minix, который также был основан на (но не полученном) UNIX. - Aaron Jones
Ну, я никогда не использовал MacOS, но я думаю, что у него такая же файловая система с ПК на базе Linux. Поэтому в корневой папке должен быть файл pwd. - Hasan Hüseyin Çakır
Единственная «корневая» папка, которую я нашел, находится в / var / root, но не «pwd» .. - Rodd