Как я могу получить доступ к зашифрованному значению пароля учетной записи локального пользователя в osx? Можно ли проверить его или даже скопировать на другую учетную запись?
Где хранятся пароли учетных записей пользователей Mac?
2 ответа
хэши были в /var/db/shadow/hash/
в 10.6 и ранее, но они хранятся в /var/db/dslocal/nodes/Default/users/username.plist
в 10.7 и 10.8.
вы можете распечатать хэш-данные с помощью DaveGrohl (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*") }'
я не так много знаю об этом, но из того, что я мог собрать, используя opensnoop
:
login
обращается к локальной службе каталогов (возможно, связанной с некоторыми материалами Kerberos - возможно, это базовая реализация для локального каталога, она читает /Library/Preferences/edu.mit.Kerberos
,/etc/krb5.conf
,/usr/etc/krb5.conf
etc.).
dscl
каталог сервис командной строки утилита, затем cd Local/Default/Users/yourusername
,read
раскрывает обычный счет связанных с unixy вещи, плюс: GeneratedUID: 1A5EF9B7-4DB6-4C01-919A-xxxxx
(не знаю последствий, поэтому я немного цензурировал) - вы также можете прочитать этот UUID через Accounts.prefPane
in System Preferences.app
.
соответствует имени файла в /private/var/db/shadow/hash/
также доступны login
!
я думаю, что ваш лучший выбор-переименовать / скопировать файлы с помощью GeneratedUID
name или измените ссылку в службе каталогов.
включены все мои "исследования", чтобы позволить вам проследить мои шаги и позволяют опровержения.
у меня нет времени, чтобы мусор и восстановить мой учетные записи пользователей, так что теперь вы сами по себе. Удача.
TLDR: открыть Accounts.prefPane
, проверьте, ваш UUID
(щелкните правой кнопкой мыши пользователя в списке) и найдите файл с таким именем в /private/var/db/shadow/hash/
. Не знаю, работает ли это на всех. Удача.
Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]