Як кешовані облікові дані Windows зберігаються на локальній машині?


26

Як кешовані облікові дані домену Active Directory зберігаються на клієнті Windows? Чи вони зберігаються в локальній базі даних SAM, тим самим роблячи їх сприйнятливими до тих самих атак на райдужну таблицю, до яких сприйнятливі облікові записи місцевих користувачів, або вони зберігаються по-іншому? Зауважте, що я розумію, що вони солоні та хешовані, щоб не зберігатись у простому тексті, але чи вони хешировані так само, як локальні акаунти та чи зберігаються вони в одному місці?

Я розумію, що як мінімум вони піддаються грубій атаці, але це набагато краща ситуація, ніж бути вразливими до веселкових столів у випадку викраденого автомата.

Відповіді:


17

"Кешовані дані"

Кешовані облікові дані для домену AD - насправді сольові подвійні хеши пароля та зберігаються в вулику HKLM \ Security. Розташування файлу вулика: %systemroot%\System32\config\SECURITY

Лише "системний" користувач має доступ до ключів реєстру:
HKLM\Security\Cache\NL$nде nіндекс 1 до максимальної кількості кешованих даних.

Сприйнятливість до нападів

WinNT до WinXP використовував хеши "Lan Manager" для локальних акаунтів, які легко розбиваються на сучасне обладнання. Зламування зазвичай займає декілька хвилин (я нещодавно зробив 3 паролі о 00:08:06) із просто "звичайним" настільним комп'ютером. Хеші Lan Manager не засолені, тому існують і загальнодоступні веселкові столи.

Vista та пізніше використовують хеш-файли NT для локальних облікових записів. Windows 2000 та новіші версії також використовують хеши NT для облікових записів доменів . Хеши NT - солоні хеші з подвійним MD4. Сіль за вхід не дозволяє використовувати таблиці веселки, але MD4 можна виконати дуже швидко на сучасному обладнанні: близько 6 обчислювальних років для 60-бітного пароля. При удачі та кластері 6 GPU, зломщик може зламати такий тип пароля за ~ 6 місяців. Якщо взяти це до хмари, приблизно 35 000 доларів на графічному процесорі Amazon EC2 - залежно від наявності, це може зайняти години.


Я думаю, більша частина мого запитання полягала в тому, чи підлягають ці збережені облікові дані до тих самих атак на основі райдужної таблиці, що й локальні акаунти, якщо вони
хешировані

Оновлено ... Vista + все те саме. Старіші версії були різними.
Кріс S

"NT-хеш пароля обчислюється за допомогою алгоритму хешавання несольового MD4." - Прямо з TechNet: technet.microsoft.com/en-us/library/hh994565(v=ws.10).aspx
thepip3r

Ця сторінка неправильна, хеши NT солоні. Дивіться відповідь Джо нижче за посиланням на КБ.
Chris S

4

Реєстраційні дані фактично не кешовані на локальній машині. Дивіться цей уривок з MS:

Захист даних кешованих даних

Термін кешованих облікових даних не точно описує, як Windows кешує інформацію про вхід для входу в домен. У Windows 2000 та пізніших версіях Windows ім'я користувача та пароль не кешуються. Натомість система зберігає зашифрований перевіряючий пароль. Цей верифікатор - це солоний хеш MD4, який обчислюється два рази. Подвійне обчислення ефективно робить верифікатор хеш хеша пароля користувача. Така поведінка на відміну від поведінки Microsoft Windows NT 4.0 та більш ранніх версій Windows NT.

http://support.microsoft.com/kb/913485


Правильно, я розумію, що самі облікові дані насправді не кешовані, але моє запитання було скоріше "чи є отримані хеші, що зберігаються в локальній базі даних SAM, таким же чином, як і локальні облікові записи, таким чином, роблячи їх нестабільними для тих же атак. " Я відредагую це за хвилину, щоб бути трохи більш зрозумілим.
MDMarra

1
Мех .. для мене це слова, що перебувають у розрізі. характер "хешування" - це односторонній процес, який створює в основному затуманене значення пароля за допомогою криптографічно захищеного алгоритму. Проблема полягає в тому, що MD4, можливо, був криптографічно захищений 10-15 років тому, але навіть вже не є близьким (а також MD5 або SHA1 з точки зору криптографу). Отже, якщо у вас є сучасне обладнання, здатне швидко змусити клавіатурний простір алгоритму або виявити зіткнення, ви можете легко отримати пароль з хешу ...
thepip3r

Якщо облікові дані зберігаються будь-яким чином або у формі, щоб їх можна було перевірити в режимі офлайн - тоді вони для всіх намірів і цілей кешовані, незалежно від того, як виглядають дані в цьому кеші
NiKiZe

4

З ними обробляється менеджер довірених даних, для якого існує API менеджера даних. Солоні хеші зберігаються дещо безпечним способом на диску і доступ до них здійснюється через HKLM \ Security. (До якого LocalSystem може отримати доступ лише за замовчуванням, але його легко обійти, наприклад, за допомогою psexec -i -s regedit.exe.)

Однак у запущеній системі Windows ситуація є більш жахливою, оскільки нещодавно використані облікові дані можна отримати та легко повернути у звичайний текст, підключивши DLL до Lsass. (Див. Мімікац.)

Так що так, ви знайдете якийсь хеш (або хеш хеша, або "перевіряючий" або все, що ви хочете його назвати) в HKLM \ Security \ Cache на клієнті. Але я не думаю, що існує якийсь можливий спосіб атакувати хеш на диску. Це не той самий старий вид хешу NTLM, який можна приєднати.


Зламування пароля в режимі офлайн у SAM є зовсім іншим, ніж підключення LSASS до пам'яті, як це роблять Mimikatz та WCE. І залежно від складності пароля, розірвання пароля в режимі офлайн для SAM може бути дуже легким (див. Samdump2)
thepip3r
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.