в каком файле хранится пароль windows 10
Хранение и шифрование паролей Microsoft Windows
Про взлом паролей windows было написано немало статей, но все они сводились к использованию какого-либо софта, либо поверхностно описывали способы шифрования LM и NT, и совсем поверхностно описывали syskey. Я попытаюсь исправить этот неодостаток, описав все подробности о том где находятся пароли, в каком виде, и как их преобразует утилита syskey.
Существует 2 возможности получения пароля — через реестр, или получив прямой доступ к файлам-кустам реестра. В любом случае нужны будут либо привелегии пользователя SYSTEM, либо хищение заветных файлов, например, загрузившись из другой ОС. Здесь я не буду описывать возможности получения доступа, но в целях исследования нагляднее будет выбрать первый вариант, это позволит не заострять внимание на структуре куста реестра. А запуститься от системы нам поможет утилита psExec от sysinternals. Конечно, для этих целей можно использовать уязвимости windows, но статья не об этом.
V-блок
Windows до версии Vista по умолчанию хранила пароль в двух разных хэшах — LM и NT. В висте и выше LM-хэш не хранится. Для начала посмотрим где искать эти хэши, а потом разберемся что из себя они представляют.
Пароли пользователей, а так же много другой полезной информации хранится в реестре по адресу HKLM\SAM\SAM\Domains\Account\users\[RID]\V
, известном как V-блок. Раздел SAM находится в соответствующем файле c:\Windows\System32\config\SAM. RID — уникальный идентификатор пользователя, его можно узнать, например заглянув в ветку HKLM\SAM\SAM\Domains\Account\users\names\ (параметр Default, поле — тип параметра). Например, RID учетной записи «Администратор» всегда 500 (0x1F4), а пользователя «Гость» — 501 (0x1f5). Доступ к разделу SAM по умолчанию возможен только пользователю SYSTEM, но если очень хочется посмотреть — запускаем regedit c правами системы:
Чтобы наблюдать V-блок в удобном виде можно, например, экспортировать его в текстовый файл (File-Export в Regedit).
Вот что мы там увидим: 
От 0x0 до 0xCC располагаются адреса всех данных, которые находятся в V-блоке, их размеры и некоторая дополнительная информация о данных. Чтобы получить реальный адрес надо к тому адресу, что найдем прибавить 0xCC. Адреса и размеры хранятся по принципу BIG ENDIAN, т.е понадобится инвертировать байты. На каждый параметр отводится по 4 байта, но фактически все параметры умещаются в одном-двух байтах. Вот где искать:
Адрес имени пользователя — 0xС
Длина имени пользователя — 0x10
Адрес LM-хэша — 0x9с
Длина LM-хэша — 0xa0
Адрес NT-хэша — 0xa8
длина NT-хэша — 0xac
В данном случае имя пользователя найдется по смещению 0xd4 + 0xcc и его длина будет 0xc байт.
NT-хэш будет располагаться по смещению 0x12c + 0xcc и его размер (всегда один и тот же) = 0x14.
Еще одна деталь, касающаяся хранения паролей — как к NT- так и к LM-хэшу всегда добавляются спереди 4 байта, назначение которых для меня загадка. Причем 4байта будут присутствовать даже если пароль отключен. В данном случае видно, что длина LM хэша =4 и если посмотреть на его адрес, можно эти 4 байта увидеть несмотря на то что никакого LM-хэша нет.
Поэтому при поиске смещений хэшей смело прибавляем 4 байта к адресу, а при учете размеров — вычитаем. Если удобнее читать код — вот примерно так будет выглядеть поиск адресов с учетом инверсии, лишних четырех байтов и прибавления стартового смещения 0xcc (код C#)
Алгоритмы
Теперь разберемся в алгоритмах шифрования.
Формирование NT-хэша:
1. Пароль пользователя преобразуется в Unicode-строку.
2. Генерируется MD4-хэш на основе данной строки.
3. Полученный хэш шифруется алгоритмом DES, ключ составляется на основе RID пользователя.
Формирование LM-хэша:
1. Пароль пользователя преобразуется в верхний регистр и дополняется нулями до длины 14 байт.
2. Полученная строка делится на две половинки по 7 байт и каждая из них по отдельности шифруется алгоритмом DES. В итоге получаем хэш длиной 16 байт (состоящий из двух независимых половинок длиной по 8 байт).
3. Полученный хэш шифруется алгоритмом DES, ключ составляется на основе RID пользователя.
4. В windows 2000 и выше оба полученых хэша дополнительно шифруются алоритмом RC4 с помощью ключа, известного как «системный ключ» или bootkey, сгенерированого утилитой syskey, и шифруются довольно хитрым образом.
Рассмотрим общую последовательность действий для получения исходного пароля и каждый шаг в отдельности
1. Получаем bootkey, генерируем на его основе ключи для RC4, расшифровываем хэши с помощью RC4
2. Получаем ключи для DES из RID’ов пользователей, расшифровываем хэши DES’ом
3. Полученые хэши атакуем перебором.
Bootkey
Системный ключ (bootkey) разбит на 4 части и лежит в следующих разделах реестра:
HKLM\System\CurrentControlSet\Control\Lsa\JD
HKLM\System\CurrentControlSet\Control\Lsa\Skew1
HKLM\System\CurrentControlSet\Control\Lsa\GBG
HKLM\System\CurrentControlSet\Control\Lsa\Data
Раздел system находится в файле c:\Windows\System32\config\system
Следует отметить, что раздел CurrentControlSet является ссылкой на один из разделов controlset и создается в момент загрузки системы. Это значит что не получится его найти в файле system, если система неактивна. Если вы решили искать ключ в файле — необходимо узнать значение ContolSet по умолчанию в HKLM\SYSTEM\Select\default.
например если HKLM\SYSTEM\Select\default = 1 — вместо HKLM\System\CurrentControlSet\ ищем в HKLM\System\controlset001\
У каждого ключа реестра есть некий скрытый атрибут, известный как «class». Regedit его так просто не покажет, однако его можно увидеть, например, если экспортировать эти ключи реестра в текстовые файлы. В winapi для получения этого атрибута есть функция RegQueryInfoKey.
Фрагменты хранятся в строковом представлении шестнадцатеричных чисел, причем по принципу BIG ENDIAN (т.е не строка задом наперед, а число).
Например мы обнаружили вот такие записи:
Key Name: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\JD
Class Name: 46003cdb = <0xdb,0x3c,0x00,0x46>
Key Name: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Skew1
Class Name: e0387d24 = <0x24,0x7d,0x38,0xe0>
Key Name: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\GBG
Class Name: 4d183449 = <0x49,0x34,0x18,0x4d>
Key Name: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Data
Class Name: 0419ed03 =
Собраный из четырех частей ключ будет массивом байт:
Далее элементы этого массива переставляются на основе некоторого константного массива p
key[i] = scrambled_key[p[i]];
В нашем примере получится массив:
этот массив и есть так называемый bootkey. Только в шифровании паролей будет учавствовать не он а некий хэш на основе bootkey, фрагментов f-блока и некоторых констант. Назовем его Hashed bootkey.
Hashed bootkey
для получения Hashed bootkey нам понадобятся 2 строковые константы (ASCII):
string aqwerty = «!@#$%^&*()qwertyUIOPAzxcvbnmQQQQQQQQQQQQ)(*@&%\0»;
string anum = «0123456789012345678901234567890123456789\0»;
Также понадобится F-блок пользователя (HKLM\SAM\SAM\Domains\Account\users\\F), а именно его 16 байт: F[0x70:0x80]
На основе этих значений, склееных в один большой массив формируем MD5 хэш, который будет являться ключем для шифрования RC4
rc4_key = MD5(F[0x70:0x80] + aqwerty + bootkey + anum).
Последним шагом для получения hashed bootkey будет rc4 шифрование( или дешифрование — в rc4 это одна и та же функция) полученым ключем фрагмента F-блока F[0x80:0xA0];
Hashed bootkey у нас в руках, осталось научиться с ним правильно обращаться.
Дешифруем пароли с помощью Hashed Bootkey
для паролей LM и NT нам понадобятся еще 2 строковые константы —
string almpassword = «LMPASSWORD»;
string antpassword = «NTPASSWORD»;
а так же RID пользователя в виде 4х байт (дополненый нулями) и первая половина Hashed Bootkey (hashedBootkey[0x0:0x10]);
Все это склеивается в один массив байт и считается MD5 по правилам:
rc4_key_lm = MD5(hbootkey[0x0:0x10] +RID + almpassword);
rc4_key_nt = MD5(hbootkey[0x0:0x10] +RID + antpassword);
полученый md5 хэш — ключ для rc4, которым зашифрованы LM и NT хэши в V-блоке пользователя
userLMpass = RC4(rc4_key_lm,userSyskeyLMpass);
userNTpass = RC4(rc4_key_lm,userSyskeyNTpass);
На этом этапе мы получили пароли пользователя в том виде в каком они хранились бы без шифрования syskey, можно сказать, что самое сложное позади. Переходим к следующему шагу
На основе четырех байт RID’а пользователя с помощью некоторых перестановок и побитовых операций создаем 2 ключа DES. Вот функции, которые осуществляют обфускацию (С#):
private byte[] str_to_key(byte[] str) <
byte[] key = new byte[8];
key[0] = (byte)(str[0] >> 1);
key[1] = (byte)(((str[0] & 0x01) > 2));
key[2] = (byte)(((str[1] & 0x03) > 3));
key[3] = (byte)(((str[2] & 0x07) > 4));
key[4] = (byte)(((str[3] & 0x0F) > 5));
key[5] = (byte)(((str[4] & 0x1F) > 6));
key[6] = (byte)(((str[5] & 0x3F) > 7));
key[7] = (byte)(str[6] & 0x7F);
for (int i = 0; i
Ну здесь особо комментировать нечего, кроме функции des_set_odd_parity(ref key) — это одна из функций библиотеки openssl, задача которой добавить некоторые «биты нечетности», используется для повышения стойкости ключа к атакам.
Исследование проведено на основе исходного кода ophcrack-3.3.1, а так же статьи Push the Red Button:SysKey and the SAM
Пароль Windows 10: поставить, изменить, убрать и сбросить
Пароль Windows 10 — это пароль учетной записи пользователя, который вводят при входе в Windows 10, является превентивной мерой защиты конфиденциальной информации или результатов работы пользователя. Существует множество ситуаций, при которых, на одном компьютере (ноутбуке) могут работать несколько человек. Windows 10 позволяет не только создавать дополнительные учётные записи, но и назначать им пароли.
Поставить, изменить или убрать/сбросить пароль учётной записи в Windows 10 можно двумя способами: используя пользовательский интерфейс или командную строку с правами администратора.
Вначале, рассмотрим создание, изменение и удаление пароля пользователя стандартными средствами интерфейса Windows 10. Продвинутый вариант работы с паролями через командную строку описан в конце статьи.
Как работать с паролями в Windows 10
Для работы с паролями в Windows 10, необходимо воспользоваться настройками «Варианты входа» в разделе «Учётные записи», который находится в основном меню «Параметры Windows». Попасть туда можно двумя способами:
1. Пройдите по цепочке: «Пуск» — «Параметры» — «Учётные записи» — «Варианты входа» — «Пароль».
2. Воспользуйтесь поиском в Windows 10: в строке поиска введите «Варианты входа», после чего кликните по соответствующей надписи в результатах поиска и выберите «Пароль» в правой части окна.
Как поставить пароль на Windows 10
Чтобы установить пароль на Windows 10, кликните по надписи «Пароль» и нажмите «Добавить».

В открывшемся окне «Создание пароля», заполните три поля: «Новый пароль», «Подтверждение пароля» и «Подсказка для пароля». Пароль необходимо указать два раза, чтобы удостовериться в правильности ввода кода. Придумайте подсказку, она будет отображаться при неправильном вводе пароля.
Если вы сомневаетесь в правильности пароля, можно воспользоваться специальной кнопкой, которая находится в правой части поля ввода.

После того как вы нажмёте «Далее», в новом окне система предупредит вас о том, что при следующем входе в Windows 10, необходимо будет ввести пароль. Для сохранения пароля и завершения процесса его создания, нажмите «Готово». Всё, пароль учётной записи Windows 10 установлен.
Не забудьте обновить контрольные вопросы к локальной учётной записи Windows 10, которые могут понадобиться для сброса пароля, на тот случай, если вы его забудете.
Контрольные вопросы Windows 10
Процесс обновления вопросов не займёт много времени. Для этого, нажмите «Пароль» и «Обновить контрольные вопросы». Windows 10 запросит текущий пароль пользователя. Далее, выберите контрольные вопросы и ответы на них. Сохраните результат — нажмите «Завершить».

Как изменить пароль Windows 10
Изменить пароль учётной записи пользователя Windows 10 очень просто, для этого кликните по надписи «Пароль» и нажмите «Изменить».

Для начала Windows 10 попросит подтвердить текущий пароль, после чего, перенаправит вас в окно «Изменение пароля». Здесь, так же, как и при создании пароля, потребуется ввести новый пароль, подтвердить его, и придумать новую подсказку. Чтобы сохранить изменения, нажмите «Далее», а в следующем окне «Готово». Пароль учётной записи Windows 10 — изменён.

Убрать пароль при входе в Windows 10
Чтобы отключить пароль в Windows 10, достаточно проделать следующие шаги:
Всё, пароль учётной записи пользователя Windows 10 отключен.



Сброс пароля Windows 10
Выполнить сброс пароля можно на этапе входа в Windows 10. Если вы не помните или потеряли доступы от учётной записи Windows 10, нажмите «Сбросить пароль».


Система предложит ответить на ряд контрольных вопросов. Если вы ответите правильно, Windows 10 отобразит поля для ввода нового пароля и его подтверждения. Укажите новый пароль и нажмите стрелку вправо, произойдёт успешный вход в систему.
Командная строка Windows 10: как поставить, изменить или сбросить пароль
Чтобы создать, изменить или удалить пароль учётной записи Windows 10 достаточно воспользоваться командной строкой с правами администратора. Для этого кликните правой кнопкой мыши «Пуск» и выберите «Командная строка (администратор)».
В Windows 10 существует специальная команда для работы с учётной записью пользователя, которая позволяет устанавливать, изменять или сбрасывать пароль:
Список команд:
Данные команды можно использовать, не только из-под своей учётной записи, но и при восстановлении доступа к Windows 10, в случае, если вы забыли пароль.
Забыт пароль Windows 10
Сбросить пароль учётной записи пользователя в Windows 10 можно при помощи установочной флешки и командной строки.
Этапы сброса пароля Windows 10:
Всё, пароль учётной записи пользователя Windows 10 сброшен.
Как Windows 10 хранит пароли?
Все пароли локальных учетных записей пользователей хранятся в окнах. Они расположены внутри C: windows system32 config SAM. Если компьютер используется для входа в домен, то это имя пользователя и пароль также сохраняются, поэтому можно войти в компьютер, когда он не подключен к домену.
Где Windows 10 хранит пароли?
Как найти сохраненные пароли в Windows 10?
Как запретить Windows 10 сохранять мои пароли?
В Microsoft Edge в Windows 10 нажмите меню> Настройки. Прокрутите вниз до нижней части панели настроек и нажмите кнопку «Просмотреть дополнительные настройки». Прокрутите вниз до раздела «Конфиденциальность и услуги» и установите для параметра «Предлагать сохранение паролей» значение «Выкл.».
Где мои пароли хранятся на моем компьютере?
Откройте Chrome. В правой части панели инструментов щелкните круглый Профиль, затем щелкните Пароли. Оттуда вы можете просматривать, удалять или экспортировать сохраненные пароли. Просмотр сохраненных паролей: щелкните значок глаза справа от каждого пароля, чтобы увидеть его.
В каком файле хранятся пароли в Windows 10?
Пароль Windows обычно «хешируется» и сохраняется в файле SAM Windows или в файле диспетчера учетных записей безопасности. Файл находится в вашей системе по этому конкретному пути к файлу: C: Windows System32 Config. Однако при нормальной загрузке операционной системы этот файл недоступен.
Где хранятся пароли WIFI в Windows 10?
Найти пароль Wi-Fi в Windows 10
Как мне найти свое имя пользователя и пароль для Windows 10?
Где хранятся пароли в Windows 10?
Как мне перестать запоминать свои пароли?
Чтобы удалить отдельные пароли:
Почему Edge не запоминает мои пароли?
Если диспетчер учетных данных Microsoft отключен, Windows 10 и Edge не смогут получить доступ к ранее сохраненным паролям. Чтобы решить эту проблему, вам необходимо убедиться, что диспетчер учетных данных запущен. Если он уже запущен, дважды щелкните по нему, отключите и снова включите.
Безопасно ли сохранять пароли на Microsoft Edge?
у браузеров, таких как Chrome или Edge, нет проблем с безопасностью паролей, даже если бы они сохраняли ваши пароли в виде обычного текста, это не было бы большой проблемой. В первую очередь вам следует беспокоиться о том, чтобы хакеры не смогли получить доступ к вашей системе.
Где мои пароли сохраняются в Chrome?
При синхронизации пароли можно использовать в Chrome на всех ваших устройствах и в некоторых приложениях на устройствах Android. Когда в Chrome включена синхронизация паролей, ваши пароли сохраняются в вашей учетной записи Google. В противном случае ваши пароли хранятся только в Chrome на вашем компьютере.
Как мне найти сохраненные пароли Google?
Просмотр, удаление или экспорт паролей
Где мои пароли?
Откройте Chrome на своем устройстве Android. Коснитесь кнопки меню (три вертикальные точки в правом верхнем углу) и коснитесь «Настройки». В появившемся окне (рис. A) нажмите «Пароли». Рисунок A: Меню Chrome на Android.
Где в Windows хранятся все пароли?
Все пароли локальных учетных записей пользователей хранятся в окнах. Они расположены внутри C: windows system32 config SAM. Если компьютер используется для входа в домен, то это имя пользователя и пароль также сохраняются, поэтому можно войти в компьютер, когда он не подключен к домену.
Как узнать пароль администратора Windows 10?
Windows 10 и Windows 8. x
Где я могу найти свое имя пользователя и пароль для Windows?
В каком файле хранятся пароли в Windows 10?
Все пароли локальных учетных записей пользователей хранятся в окнах. Они расположены внутри C: windows system32 config SAM. Если компьютер используется для входа в домен, то это имя пользователя и пароль также сохраняются, поэтому можно войти в компьютер, когда он не подключен к домену.
Где Windows 10 хранит пароли?
Как найти сохраненные пароли в Windows 10?
Где мои пароли хранятся на моем компьютере?
Откройте Chrome. В правой части панели инструментов щелкните круглый Профиль, затем щелкните Пароли. Оттуда вы можете просматривать, удалять или экспортировать сохраненные пароли. Просмотр сохраненных паролей: щелкните значок глаза справа от каждого пароля, чтобы увидеть его.
Где хранятся мои сохраненные пароли?
Выберите «Настройки» в нижней части всплывающего меню. Найдите и нажмите «Пароли» на полпути вниз по списку. В меню паролей вы можете просмотреть все сохраненные пароли.
Где хранятся пароли WIFI в Windows 10?
Найти пароль Wi-Fi в Windows 10
Где мои пароли хранятся в Chrome?
Коснитесь трех точек в правом верхнем углу приложения Chrome. Коснитесь Настройки. Выберите пароли. Появится список сохраненных паролей с указанием соответствующего веб-сайта и имени пользователя.
Как мне найти свои пароли?
Просмотр, удаление или экспорт паролей
Где мои пароли?
Откройте Chrome на своем устройстве Android. Коснитесь кнопки меню (три вертикальные точки в правом верхнем углу) и коснитесь «Настройки». В появившемся окне (рис. A) нажмите «Пароли». Рисунок A: Меню Chrome на Android.
Как мне получить свой пароль Windows?
На экране входа введите имя своей учетной записи Microsoft, если оно еще не отображается. Если на компьютере несколько учетных записей, выберите ту, которую хотите сбросить. Под текстовым полем пароля выберите Я забыл свой пароль. Следуйте инструкциям по сбросу пароля.
Вы можете показать мне все мои сохраненные пароли?
Чтобы просмотреть сохраненные пароли, перейдите на passwords.google.com. Там вы найдете список учетных записей с сохраненными паролями. Примечание. Если вы используете кодовую фразу для синхронизации, вы не сможете видеть свои пароли на этой странице, но вы можете увидеть свои пароли в настройках Chrome.
Где хранятся пароли Wi-Fi на Android?
Перейдите в System-> etc-> WiFi и откройте wpa_supplicant. conf файл. Если приложение диспетчера файлов спрашивает, как открыть выбранный файл конфигурации, выберите встроенный HTML или средство просмотра текстовых файлов. Открыв файл, вы сможете просмотреть все пароли подключенных сетей Wi-Fi с помощью телефона Android.
Где мои пароли хранятся на моем телефоне Samsung?
На странице настроек нажмите «Пароли». Теперь вы должны увидеть список всех ваших паролей. Да, мы можем видеть сохраненные пароли в веб-браузере Samsung на телефонах Android. … Чтобы увидеть пароль, вам нужно будет ввести код доступа вашего телефона. Затем вы можете просмотреть, скопировать или удалить пароль.
Где в реестре хранятся пароли Wi-Fi?
Спасибо @iglvzx за указание на это. Windows XP: беспроводные ключи хранятся в реестре под HKEY_LOCAL_MACHINE SOFTWARE Microsoft WZCSVC Parameters Interfaces [Interface Guid]. Расположение на 7 и вид должно быть одинаковым.
Как управлять сетями в Windows 10?
Начните с перехода в «Настройки»> «Сеть и Интернет»> «Wi-Fi», где вы можете найти и щелкнуть ссылку «Управление известными сетями», чтобы просмотреть список сохраненных беспроводных сетей. Щелкните любую запись в списке (1), чтобы открыть две кнопки. Нажмите «Забыть», чтобы удалить эту сеть из сохраненного списка.
Как я могу показать свой пароль от Wi-Fi?
См. Пароль Wi-Fi на Android
(Если вы в настоящее время не подключены, вам нужно нажать «Сохраненные сети», чтобы увидеть другие сети, к которым вы подключались в прошлом.) Затем нажмите кнопку «Поделиться», и пароль сети появится под QR-кодом.











