В каком формате / алгоритме используется хешированный пароль в файлах ответов Windows 7?

2727
Centimane

Я создал файл ответов, используя Windows System Image Manager (SIM). Я сохранил пароль и установил его скрытым, что привело к некоторой форме хешированного пароля.

Кто-нибудь знает, в каком формате это происходит? Я надеюсь, что смогу сгенерировать пароль в пакетном скрипте и заменить значение, заполнив его во время установки на текущий установленный пароль, но это зависит от того, возможно ли его сгенерировать.

2

1 ответ на вопрос

2
qasdfdsaq

Пароль, хранящийся в XML-файле Sysprep , не хэшируется . Строка, которую вы видите, это просто строка в кодировке Unicode, закодированная в Base64, и ее можно легко декодировать с помощью любой веб-страницы или Powershell.

http://blog.compower.org/2013/08/05/recover-the-non-plain-password-from-your-unattend-xml/

(Пример скопирован со страницы, указанной выше)

Скопируйте строку после и вставьте ее, например, в файл (pwd.txt) и скопируйте на локальный компьютер с полной версией Windows и Powershell. Затем вы можете восстановить пароль, выполнив следующие действия:

PS>$encryptedpwd = get-content C:\temp\pwd.txt PS>$encryptedpwd VABoAGkAcwAgAG4AbwB0ACAAbQB5ACAAcgBlAGEAbAAgAFAAYQBzAHMAdwAwAHIAZAA= PS>[System.Text.Encoding]::Unicode.GetString([System.Convert]::FromBase64String($encryptedpwd)) This not my real Passw0rd 

На следующей странице (опять же из предыдущей ссылки) представлены дополнительные сведения о работе со строкой Base64 с использованием powershell, и ее можно использовать в качестве отправной точки для выяснения того, как непосредственно кодировать указанные пароли самостоятельно:

http://tfl09.blogspot.nl/2013/02/working-with-base64-strings-in.html

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

На самом деле меня интересует только генерация пароля, а не декодирование, чтобы мне не пришлось оставлять его в открытом тексте, но отсутствие выгоды от шифрования немного разочаровывает, почти так же хорошо оставить его открытым текстом, но за то, что некоторые не знают, как легко это декодировать. Centimane 9 лет назад 0
@ Дэйв, и как бы ты предложил сделать это иначе? Для того, чтобы зашифровать его, необходим секрет, который является единственным способом расшифровки шифра. Другими словами, это означает, что компьютер, пытающийся расшифровать шифр, должен иметь доступ к секрету, поэтому вам нужно будет найти способ передачи секрета на компьютер, обрабатывающий файл unattend.xml. Однако, когда файл unattend.xml обрабатывается, компьютер не имеет доступа к сети, а это значит, что секрет уже должен быть на компьютере в незашифрованном состоянии, так что ... ситуация с курицей и яйцом cogumel0 8 лет назад 0
Ну, на самом деле в моем случае машина имеет сеть при загрузке, потому что winPE загружается по сети, а затем выполняет некоторые сценарии, чтобы определить правильный unattended.xml для использования (в основном, окна загрузки PXE). Я искал что-то похожее на файлы Linux KS, которые позволяют использовать шифрование SHA для пароля, что-то более сложное для расшифровки, чем Unicode. Centimane 8 лет назад 0