EFS (шифрованная файловая система): проблема безопасности: на жестком диске не хранятся хэши, связанные с паролями

Следующее видео на YouTube хорошо показывает, как работает EFS. Для тех, кто заинтересован в кратком изложении содержания таких окон, я прикрепил его ниже. Однако это оставляет меня с одним вопросом, касающимся безопасности:

  1. Когда пользователь входит в Windows, предположительно хеш вычисляется из пароля (или, альтернативно, из пароля плюс имя пользователя и, возможно, другие данные, такие как соль). Когда пользователь впервые создает пароль, такой хэш должен храниться где-то на жестком диске, если я не ошибаюсь. По крайней мере, старые системы Unix, используемые для такой работы (с такими, которые хранятся в /etc/passwd). Таким образом, когда пользователь входит в систему, хэш пароля вычисляется и сравнивается с тем, что хранится в таком файле, для аутентификации пользователя. Если хэши совпадают, пользователь входит в систему.

Все идет нормально. Если вышеупомянутый механизм используется (в современных системах Windows), это означает, что когда кто-то взламывает систему Windows, он может прочитать такой хэш пароля и, таким образом, используя специальный алгоритм симметричного шифрования Microsoft (как описано ниже), который хранится на жестком диске и, таким образом, может быть изучен хакером, хэш пароля плюс специальный симметричный алгоритм Microsoft плюс знание о том, где зашифрованный закрытый ключ хранится на жестком диске, позволяет хакеру расшифровать его и получить закрытый ключ. И, разумеется, как только закрытый ключ получен, хакер может расшифровать все данные, зашифрованные с использованием открытого ключа в сертификате.

Может кто-нибудь указать на недостатки в моих рассуждениях? Предположительно, недостаток связан с моим неправильным пониманием того, как выполняется проверка подлинности Windows.

Благодарю.

http://www.youtube.com/watch?v=YxgWsa-slOU

Краткое содержание содержимого приведенного выше видео: - EFS (доступно в файловой системе NTFS) предназначена для того, чтобы пользователи могли шифровать файлы и папки, чтобы никто, кроме человека, зашифровавшего такой файл или папку, не мог получить к нему доступ. Административные учетные записи на украденных машинах могут быть созданы с минимальными знаниями о хакерских операциях и, таким образом, могут получить доступ практически к любым файлам, содержащимся на жестком диске. Алгоритмы шифрования с симметричным ключом работают примерно в 100-1000 раз быстрее, чем алгоритмы шифрования с открытым ключом. щелкните правой кнопкой мыши -> Свойства -> Общие -> Дополнительно... -> Зашифровать содержимое для защиты данных и нажмите Применить, (затем вы можете выбрать между шифрованием только файла или шифрованием файла и его родительской папки, а затем нажмите кнопку ОК). Windows превратит файл в зеленый, и у нас все равно будет полный доступ к файлу. После этого кто-то, войдя в систему с учетной записью администратора, не сможет увидеть файл. В действительности вы можете получить доступ к диспетчеру сертификатов с помощью команды "certmgr", а оттуда вы можете просмотреть содержимое папки приложения Personal -> Certificates, которая может начинаться как пустая. Когда мы шифруем файл вышеуказанным способом, генерируется симметричный ключ, называемый ключом шифрования файла алгоритма DESX (FEK), а затем открытый ключ сертификата используется для шифрования FEK и сохранения его с зашифрованными данными. В сертификате, хранящемся в хранилище сертификатов, вы можете получить доступ к открытому ключу, но не к закрытому ключу (этот сертификат свидетельствует о том, что пользователь такой-то и есть, кем он является, и отображает открытый ключ пользователя). Сертификат также указывает на закрытый ключ, но такой закрытый ключ хранится в специальном месте на жестком диске и шифруется с использованием специального главного ключа, сгенерированного алгоритмом симметричного ключа Microsoft, где главный ключ генерируется с использованием хеш-компонента из имя пользователя и пароль пользователя каждый раз, когда пользователь входит в систему, и полученный симметричный ключ не сохраняется где-либо на жестком диске (то есть он должен храниться где-то в памяти).

2 ответа

Решение

Хеш-значение, которое используется для доступа к закрытому ключу, который разблокирует симметричный ключ, не совпадает с хеш-значением, которое хранится (используется для аутентификации). Оба хеша получены из пароля, но они не вычисляются одинаково. Они не являются обратимыми, и их нельзя использовать взаимозаменяемо.

Чтобы получить доступ к вашим файлам, им нужно, чтобы вы уже вошли в систему, или им нужен ваш пароль.

Также обратите внимание, что EFS обычно назначает администратора или администратора домена в качестве "агента восстановления". Когда закрытый ключ хранится, он также сохраняет копию, к которой может получить доступ администратор.

Как показано на рисунке 15.9, для шифрования с EFS требуется наличие как минимум двух сертификатов в хранилище сертификатов на локальном компьютере: один для пользователя (владельца файла) и один для учетной записи агента восстановления.

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

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

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

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

Однако, сказав это, похоже, что предыдущий ответ отвечает на вопрос. Хеши необратимы. Я думаю, что использовал слова "практически невозможно" для обратного инжиниринга… но на самом деле хэши используются потому, что их нельзя перевернуть, чтобы дать пароли. Программы для взлома паролей, насколько мне известно, начинаются с открытого текста из словаря, используют тот же алгоритм хеширования и пытаются создать тот же хеш, что и целевой хеш, который они пытаются расшифровать. Пока вы используете хороший пароль, вы не сможете взломать хеш. Плохие пароли являются единственным способом взлома паролей.

Легко настроить административную учетную запись, если у вас есть доступ к любому компьютеру, но любая новая настроенная учетная запись не будет иметь доступа к каким-либо закрытым ключам. Агент восстановления должен быть настроен ДО того, чтобы шифровать что-либо с помощью EFS, чтобы агент восстановления имел доступ к файлу пользователя. Но тогда и хэш личного ключа Агентов Восстановления, и хэш личного ключа целевого человека невозможно восстановить для новой учетной записи администратора.

Я думаю, что так оно и должно работать, или нет реальной безопасности.

Дэйв Крэбб

Другие вопросы по тегам