DPAPI - Extracting Passwords
Last updated
Last updated
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
RootedCON є найважливішою подією в галузі кібербезпеки в Іспанії та однією з найважливіших в Європі. З метою просування технічних знань, цей конгрес є гарячою точкою зустрічі для професіоналів у сфері технологій та кібербезпеки в усіх дисциплінах.
API захисту даних (DPAPI) в основному використовується в операційній системі Windows для симетричного шифрування асиметричних приватних ключів, використовуючи або секрети користувача, або системні секрети як значне джерело ентропії. Цей підхід спрощує шифрування для розробників, дозволяючи їм шифрувати дані, використовуючи ключ, отриманий з секретів входу користувача або, для системного шифрування, секретів аутентифікації домену системи, таким чином усуваючи необхідність для розробників управляти захистом ключа шифрування самостійно.
Серед особистих даних, захищених DPAPI, є:
Паролі та дані автозаповнення Internet Explorer та Google Chrome
Паролі електронної пошти та внутрішніх FTP-акаунтів для таких програм, як Outlook та Windows Mail
Паролі для спільних папок, ресурсів, бездротових мереж та Windows Vault, включаючи ключі шифрування
Паролі для підключень до віддаленого робочого столу, .NET Passport та приватні ключі для різних цілей шифрування та аутентифікації
Мережеві паролі, керовані Credential Manager, та особисті дані в програмах, що використовують CryptProtectData, таких як Skype, MSN messenger та інші
Файли облікових даних, що захищені можуть бути розташовані в:
Отримайте інформацію про облікові дані за допомогою mimikatz dpapi::cred
, у відповіді ви можете знайти цікаву інформацію, таку як зашифровані дані та guidMasterKey.
Ви можете використовувати mimikatz module dpapi::cred
з відповідним /masterkey
для розшифрування:
Ключі DPAPI, що використовуються для шифрування RSA ключів користувача, зберігаються в каталозі %APPDATA%\Microsoft\Protect\{SID}
, де {SID} є Security Identifier цього користувача. Ключ DPAPI зберігається в тому ж файлі, що й майстер-ключ, який захищає приватні ключі користувача. Зазвичай це 64 байти випадкових даних. (Зверніть увагу, що цей каталог захищений, тому ви не можете перерахувати його за допомогою dir
з cmd, але ви можете перерахувати його з PS).
Це те, як виглядає купа майстер-ключів користувача:
Зазвичай кожен майстер-ключ є зашифрованим симетричним ключем, який може розшифровувати інший вміст. Тому екстракція зашифрованого майстер-ключа є цікавою для того, щоб розшифрувати пізніше той інший вміст, зашифрований з його допомогою.
Перегляньте пост https://www.ired.team/offensive-security/credential-access-and-credential-dumping/reading-dpapi-encrypted-secrets-with-mimikatz-and-c++ для прикладу того, як екстрактувати майстер-ключ і розшифрувати його.
SharpDPAPI є C# портом деякої функціональності DPAPI з проекту @gentilkiwi's Mimikatz.
HEKATOMB є інструментом, який автоматизує екстракцію всіх користувачів і комп'ютерів з LDAP-директорії та екстракцію резервного ключа контролера домену через RPC. Скрипт потім вирішить всі IP-адреси комп'ютерів і виконає smbclient на всіх комп'ютерах, щоб отримати всі DPAPI блоби всіх користувачів і розшифрувати все з резервним ключем домену.
python3 hekatomb.py -hashes :ed0052e5a66b1c8e942cc9481a50d56 DOMAIN.local/administrator@10.0.0.1 -debug -dnstcp
З екстрактованим списком комп'ютерів з LDAP ви можете знайти кожну підмережу, навіть якщо ви не знали про них!
"Тому що прав адміністратора домену недостатньо. Зламуйте їх усіх."
DonPAPI може автоматично вивантажувати секрети, захищені DPAPI.
RootedCON є найактуальнішою подією в галузі кібербезпеки в Іспанії та однією з найважливіших в Європі. З метою просування технічних знань, цей конгрес є гарячою точкою зустрічі для професіоналів у сфері технологій та кібербезпеки в кожній дисципліні.
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)