HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
Как взломать пароль Windows
В этой статье мы узнаем, где в Windows хранится пароль пользователя, как извлечь данные для взлома пароля Windows, как раскрыть пароль пользователя и как их использовать даже без брут-форса.
Не каждый пользователь использует пароль на Windows — особенно редко пользователи устанавливают пароль на домашнем компьютере, за которым работает один человек. Но в условиях корпоративной сети или при использовании Windows в качестве сервера, пароль является обязательным. Ещё одно интересное свойство пароля пользователя Windows: если пользователь завёл онлайн учётную запись Microsoft, то хеш пароля всё равно хранится на локальном компьютере, но расшифрованный пароль подойдёт и для локального компьютера, и для онлайн сервисов Microsoft.
Где Windows хранит пароль входа пользователя?
Пароли пользователей Windows хранятся в кустах (hives) реестра Windows под названием SYSTEM и SAM в файлах:
- C:/Windows/System32/config/SAM
- C:/Windows/System32/config/SYSTEM
Вместо пароля в виде простого текста, Windows хранит хеши паролей. Эти хеши легко поддаются брут-форсу, но даже без взлома хеши паролей Windows можно использовать для сбора данных и выполнения атак.
Как получить хеши паролей Windows
Дамп хешей паролей Windows на работающем компьютере
На запущенной системе проблематично получить доступ к файлам C:/Windows/System32/config/SAM и C:/Windows/System32/config/SYSTEM, хотя это и возможно. Для сохранения копий этих файлов можно использовать утилиту reg, а именно следующие команды:
В некоторых инструкциях вместо SYSTEM сохраняют куст SECURITY — это ошибка, с кустами SECURITY и SAM восстановить хеш не удасться, нужны именно SYSTEM и SAM!
Хеш пароля также содержится в оперативной памяти, а именно в процессе Local Security Authority Process (lsass.exe). Этот процесс всегда запущен в работающей Windows и можно сделать его дамп (копию процесса в оперативной памяти сохранить на диск в виде файла). Для создания дампа можно использовать различные утилиты, в том числе две официальные:
Диспетчер задач уже имеется в каждой Windows, чтобы его открыть нажмите Win+r и наберите taskmgr, затем нажмите ENTER. Либо правой кнопкой мыши нажмите на панель задач (то есть на нижнюю полоску, где находятся часы, кнопка пуск и т. д.) и в контекстном меню выберите «Диспетчер задач».
В Диспетчере задач нажмите «Подробнее» и во вкладке «Процессы», в разделе «Процессы Windows» найдите Local Security Authority Process, нажмите на него правой кнопкой мыши и выберите в контекстном меню пункт «Создать файл дампа»:
Файл будет сохранён по пути C:\Users\ПОЛЬЗОВАТЕЛЬ\AppData\Local\Temp\lsass.DMP. У меня имя пользователя MiAl и путь до файла C:\Users\MiAl\AppData\Local\Temp\lsass.DMP.
Дамп хешей паролей Windows на выключенном компьютере
На выключенном компьютере для последующего извлечения пароля пользователя достаточно скопировать файлы:
- C:/Windows/System32/config/SAM
- C:/Windows/System32/config/SYSTEM
Эти же файлы можно найти в резервной копии Windows или в Shadow копии диска, либо скопировать загрузившись с Live системы.
Чем различаются хеши NTLM и NTLMv1/v2 и Net-NTLMv1/v2
Сейчас мы будем охотиться за хешем NTLM. В статье «Взлом сетевой аутентификации Windows» мы уже охотились за хешами NTLMv1 и NTLMv2, название которых довольно похоже.
На самом деле, NTLM и NTLMv1/v2 это довольно разные вещи. Хеш NTLM хранится и используется локально, а хеши NTLMv1/NTLMv2 используются для сетевой аутентификации и являются производными хеша NTLM. Используя любой из этих хешей можно расшифровать пароль пользователя Windows, но это разные алгоритмы шифрования/взлома.
Для атаки Pass-the-hash (мы рассмотрим её в этой статье) применим только хеш NTLM, а хеши NTLMv1/NTLMv2 не подходят.
Остался ещё один вопрос, что такое хеши Net-NTLMv1/v2. Хеши Net-NTLMv1/v2 это сокращённое название для хешей NTLMv1/v2, то есть NTLMv1/v2 и Net-NTLMv1/v2 это одно и то же. А NTLM это другое.
В этой статье мы будем извлекать, взламывать и эксплуатировать без взлома хеш NTLM.
Что такое mimikatz
Программа mimikatz хорошо известна за возможность извлекать пароли в виде простого текста, хеши, ПИН коды и тикеты kerberos из памяти. mimikatz также может выполнять атаки pass-the-hash, pass-the-ticket или строить Golden тикеты.
В этой инструкции мы рассмотрим только способность mimikatz извлекать хеши NTLM. Помните, у mimikatz есть и другие очень интересные функции — посмотрите, какая у неё обширная справка: https://kali.tools/?p=5342
Имеются реализации mimikatz в Meterpreter & Metasploit, DLL reflection в PowerShell и других продуктах. В принципе, mimikatz можно запускать в Wine на Linux, но не будут работать функции, связанные с извлечением данных непосредственно из Windows; функции извлечения хешей из дампов или расшифровки из файлов реестра должны работать в Linux.
Как установить mimikatz в Windows
mimikatz — это портативная утилита командной строки. То есть установка не требуется, но нужно уметь запустить, если вы не очень знакомы с командной строкой.
1. Перейдите на страницу https://github.com/gentilkiwi/mimikatz/releases, скачайте файл mimikatz_trunk.7z или mimikatz_trunk.zip. Распакуйте скаченный архив.
2. Откройте PowerShell (Win+x → Windows PowerShell (администратор)) или командную строку (Win+r → cmd).
3. В командной строке с помощью команды cd перейдите в папку с исполнимым файлом mimikatz.exe. К примеру, архив распакован в папку C:\Users\MiAl\Downloads, тогда исполнимый файл будет в папке C:\Users\MiAl\Downloads\mimikatz_trunk\x64\:
4. Запустите исполнимый файл.
Как извлечь хеш пароля пользователя NTLM из файлов реестра
Следующие команды нужно выполнять в консоли mimikatz.
Команда log включает запись всего вывода в ФАЙЛ:
К примеру, для запуска всего вывода в файл hash.txt:
Я скопировал с выключенного компьютера файлы SYSTEM и SAM, теперь для извлечения хеша мне нужно запустить команду вида:
Пример моей команды:
Вывод довольно обширный и много не до конца понятных данных. Интерес представляют последовательно идущие строки вида:
В моём примере интересные строки:
Также есть строки с именами пользователей:
Но после них нет строк с хешем NTLM, поскольку у этих пользователей не установлен пароль в системе.
Если вы хотите извлечь данные из файлов реестра текущей операционной системы, то выходим из mimikatz, для этого нажмите Ctrl+c.
Теперь сделаем дамп кустов реестра SYSTEM и SAM текущей системы:
Вновь запускаем mimikatz:
Включаем ведение журнала:
И выполняем команду с указанием файлов, в которые сохранены дампы кустов реестра, то есть SystemBkup.hiv и SamBkup.hiv:
Здесь найден только один пользователь с хешем:
На самом деле, для извлечения хешей NTLM из локальной системы необязательно было делать дамп кустов реестра. Другой вариант — повысить привилегии самой программы mimikatz и извлечь хеши непосредственно из системы. Для этого выполните команды:
Извлечение хеша NTLM из дампа lsass.DMP
По логике (и на практике) в дампе процесса Local Security Authority Process должен быть хеш только пользователя, выполнившего вход с паролем.
Вначале укажите путь до файла дампа командой вида:
Затем выполните команду:
Брут-форс хеша NTLM
Для взлома я возьму следующий хеш:
Загляним в справку Hashcat, чтобы узнать номер режима хеша NTLM:
То есть номер хеша NTLM равен 1000.
Чтобы запустить атаку по маске для взлома NTLM в Hashcat нужно выполнить команду вида:
Пример моей реальной команды:
- hashcat — имя исполнимого файла. В Windows это может быть hashcat64.exe.
- —force — игнорировать предупреждения
- —hwmon-temp-abort=100 — установка максимальной температуры, после которой будет прерван перебор, на 100 градусов Цельсия
- -m 1000 — тип хеша NTLM
- -D 1,2 — означает использовать для взлома и центральный процессор, и видеокарту
- -a 3 — означает атаку по маске
- -i — означает постепенно увеличивать количество символов в генерируемых паролях
- —increment-min 1 — означает начать с длины маски равной единице
- —increment-max 10 — означает закончить перебор при длине маске равный десяти
- -1 ?l?d — пользовательский набор символов номер 1, в него включены маленькие латинские буквы (?l) и цифры (?d)
- ca76a176340f0291e1cc8ea7277fc571 — хеш для взлома
- ?1?1?1?1?1?1?1?1?1 — маска из пользовательского набора символов
Взломаем ещё один хеш:
Команда (другой хеш и другой набор пользовательских символов):
Итак, в этой статье мы научились извлекать хеш NTLM и взламывать пароль Windows. А что делать, если не удалось взломать NTLM? Ответ на этот вопрос смотрите во второй части, которая называется «Использование NTLM без взлома пароля: атака Pass-the-hash».
Простой способ сброса пароля учётной записи любой версии Windows!
Если вы вдруг забыли пароль от своей учётной записи в Windows, то вам ничего не остаётся кроме как искать способ его сброса или же устанавливать новую операционную систему, что на мой взгляд полнейшее безумие в данном случае 🙂 Сейчас в интернете можно найти много различных способов сброса паролей для операционных систем Windows при помощи встроенных загрузочных средств самой Windows, а также при помощи сторонних специальных программ. Некоторые способы подходят для каких-то одних версий Windows, некоторые для других, а какие-то способы слишком сложны для новичков. Ранее в одной из статей я показывал один из способов сбросить пароль при помощи загрузочной консольной программы, построенной на базе Linux, однако все действия там необходимо выполнять в виде команд на чёрном экране и для новичков это может оказаться сложным.
В данной статье я покажу наипростейший вариант сброса пароля учётной записи в любой версии Windows (пробовал даже на Windows 10) при помощи загрузочной программы Reset Windows Password. Процесс сброса укладывается всего в 4 шага!
Сразу хочу предупредить, что еcли на компьютере вы использовали для входа учётную запись Microsoft, а не стандартную локальную, то ни одна из программ сбросить её пароль не сможет, поскольку пароль учётной записи Microsoft можно поменять только на сайте компании. Поэтому данный способ как и все аналогичные работает только если вы забыли пароль от стандартной локальной учётной записи Windows!
Программа является загрузочной, т. е. её нельзя просто установить на компьютер как это обычно делается. Запуск программы будет происходить с диска или флешки на этапе загрузки компьютера. Т.е. программу потребуется предварительно записать на диск или флешку!
Создание загрузочного диска / флешки с программой Reset Windows Password и её запуск
Программу вы можете скачать по ссылке:
После того как программа скачается необходимо записать её на диск или флешку. Инструкция по записи программы в виде файла ISO на CD/DVD диск находится вот здесь, а по записи программы в ISO на флешку — вот здесь.
Поскольку современные ноутбуки можно частенько встретить без дисковода для чтения дисков, то, думаю, большинству подойдёт способ записи программы на флешку, тем более она есть, пожалуй, у каждого владельца компьютера.
После того как вы запишите программу на диск или флешку, её необходимо запустить. Для этого следует перезагрузить компьютер и настроить ваш BIOS, чтобы компьютер грузился не как обычно с жёсткого диска, а с записанной флешки или CD/DVD диска.
В отдельной статье я давал инструкцию по настройке BIOS на загрузку компьютера с диска или флешки, прочтите её если испытываете трудности с загрузкой программы:
У каждого компьютера может быть своя особенность настройки загрузки с определённого устройства, поэтому чётких рекомендаций дать не получится. Но статья по ссылке выше должна помочь большинству.
Когда программа начнёт запускаться, вы увидите окно, похожее на загрузку обычной Windows 7:
Работа с программой
Когда загрузочная программа Reset Windows Password запустится, в первом окне необходимо будет настроить программу.
В первую очередь выбираем русский язык (1), затем в разделе «Режим работы» выбираем пункт «SAM – работа с обычными учётными записями» (2) и в конце под надписью «Что вы хотите сделать?» выбираем «Сбросить или изменить пароль пользователя» (3). Когда всё настроили, нажимаем «Далее» (4) внизу окна.
Программа будет выполнять именно сброс пароля (т. е. его стирание, обнуление), а не замену старого пароля на какой-то новый!
В следующем окне мы можем выбрать путь к папкам «SAM» и «SYSTEM» для сброса пароля.
Если вы пользуетесь стандартной Windows, где ничего глобально не переделано, то пути менять не нужно и они уже будут заданы правильно:
На этапе №3 выбираем в окне ту учётную запись Windows, для которой хотим сбросить пароль (1) и нажимаем «Далее» (2).
На последнем 4-м этапе нажимаем кнопку «Сбросить / Изменить»:
Появится предложение сделать файл отката. При помощи этого файла можно вернуть работать способность системы в случае её «поломки» после работы программы.
Вообще программа не лезет туда куда не нужно и не делает никаких серьёзных изменений в Windows, поэтому файл отката проще не создавать, нажав «No» в данном окне.
Появится уведомление о том, что учётная запись была изменена (пароль сброшен) и можно закрывать программу и проверять изменения. Просто нажимаем «ОК» (1) в окне уведомления и затем «Выход» (2) в самой программе.
Теперь вытащите диск / флешку c программой из компьютера и перезагрузите его. Windows должна загрузиться сразу не спрашивая пароля!
Как видите данный способ для сброса пароля учетных записей Windows очень прост и трудности могут возникнуть, пожалуй, лишь на этапе загрузки программы с флешки или диска. Но среди всех способов сброса пароля я не нашёл ни одного, позволяющего сбросить пароль не загружаясь со специального загрузочного диска. Поэтому без этого всё равно не обойтись и уж проще разобраться со сбросом пароля, чем Windows переустанавливать :))
Хорошего Вам дня и отличного настроения! До встречи в следующих статьях 😉
Сделай репост – выиграй ноутбук!
Каждый месяц 1 числа iBook.pro разыгрывает подарки.
- Нажми на одну из кнопок соц. сетей
- Получи персональный купон
- Выиграй ноутбук LENOVO или HP
—> LENOVO или HP от 40-50 т.р., 8-16ГБ DDR4, SSD, экран 15.6″, Windows 10