понедельник, 2 мая 2011 г.

Секреты %SystemRoot%\system32: cipher

Следующая команда в списке редко вспоминается, пока не влетает пользователь с воплем “я сменил пароль и где теперь все мои зашифрованные данные!”. Знакомая ситуация? Мне не очень, но я слышал предостаточно ужастиков на эту тему. Резервное копирование ключей – ключ к спасению в данной ситуации (ну или агент восстановления). И с этим вполне может помочь наша команда. А еще с обновлением ключа шифрования на файлах. И с созданием ключа восстановления.

Про все это полно статей, однако, когда я решил взглянуть на утилиту поближе, я вдруг обнаружил для себя очередную новую функцию: добавив аргумент /W и имя какой-нибудь папки, мы уничтожим все данные, все еще содержащиеся в “пустом” месте на диске, содержащем эту папку (если папка это линк на другой диск, то будет зачищен этот самый “другой” диск). Что при этом происходит:

1) Создается папка EFSTMPWP:

2) В ней создается временный файли (или несколько)

image

3) Место в них заполняется нулями, потом единицами, а потом все это отполировывается случайными числами:

image

Каждый из этих шагов делается пока не заполнится все место на диске, потом все повторяется:

image

image

image

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

Да, кроме всего прочего, команда просит Вас закрыть все приложения, очевидно, чтобы затереть место и под временными файлами.

Что еще почитать:

cipher /?

http://technet.microsoft.com/en-us/library/cc771346(WS.10).aspx

http://support.microsoft.com/kb/295680

http://support.microsoft.com/kb/814599

2 комментария:

Xaegr комментирует...

Собственно запись случайных чисел и есть самый эффективный способ "шифрования с помощью случайного ключа без необходимости восстановления" :)

Alexander Trofimov комментирует...

Ну с точки зрения "по жизни больше и не надо" я с тобой согласен. А если позанудствовать, то есть необоснованное подозрение, что шифрование на случайном ключе даст меньше информации к анализу, чем просто запись случайными числами =)
Но доказать не могу, я всю эту фигню забыл уже так давно, что и не уверен, что знал когда-то =)