none
Как отключить SECURITY FREEZE LOCK на жестком диске? RRS feed

  • Вопрос

  • Мне надо отключить SECURITY FREEZE LOCK на жестком диске, для того, чтобы я мог отправлять на жесткий команды SECURITY_SET_PASSWORD, SECURITY_DISABLE_PASSWORD, SECURITY_UNLOCK. Как я могу это сделать? 

    P.S. У меня ноутбук G750JX. Интересуют разные способы, кроме ФИЗИЧЕСКОЙ манипуляции с жестким и ноутбуком (подключение HDD во время работы ноутбука)

    P.S.S. Можно ли отключить через самописный драйвер?

    • Изменено nicoist 28 октября 2017 г. 11:03
    28 октября 2017 г. 9:09

Ответы

  • Windows начиная с Vista (а также XP SP3) посылает команду SECURITY FREEZE LOCK всем жестким дискам, работающим под стандартным ATA-драйвером. Сбросить команду можно только перезагрузкой диска, но естественно, если после перезагрузки грузятся те же дрова, это не решает проблему.

    На "Можно ли отключить через самописный драйвер" я полагаю, ответ - "да". Однако, более простым решением была бы разработка под более старую ОС или Windows 8 Preinstallation Environment, которые не посылают данную команду.

    • Помечено в качестве ответа nicoist 30 октября 2017 г. 13:02
    30 октября 2017 г. 3:50

Все ответы

  • Windows начиная с Vista (а также XP SP3) посылает команду SECURITY FREEZE LOCK всем жестким дискам, работающим под стандартным ATA-драйвером. Сбросить команду можно только перезагрузкой диска, но естественно, если после перезагрузки грузятся те же дрова, это не решает проблему.

    На "Можно ли отключить через самописный драйвер" я полагаю, ответ - "да". Однако, более простым решением была бы разработка под более старую ОС или Windows 8 Preinstallation Environment, которые не посылают данную команду.

    • Помечено в качестве ответа nicoist 30 октября 2017 г. 13:02
    30 октября 2017 г. 3:50
  • Спасибо за помощь!

    Подскажите еще, по поводу драйвера: какие использовать библиотеки/функции/классы использовать, чтобы реализовать такой драйвер?

    И по поводу WinPE: Как именно с ним работать? (ATA команды и Freeze lock)

    30 октября 2017 г. 13:02
  • "какие использовать библиотеки/функции/классы использовать, чтобы реализовать такой драйвер?"

    Драйвера пишутся на чистом Си и используют прямые вызовы к функциям ядра (ntoskrnl). См. этот раздел документации: https://msdn.microsoft.com/en-us/library/windows/hardware/ff557573(v=vs.85).aspx. Там же есть ссылка на скачивание Windows Driver Kit, который содержит необходимые заголовочные файлы, библиотеки и примеры. Однако для разработки своей замены стандартного ATA-драйвера только документации Microsoft будет недостаточно, нужно читать много специальной литературы. Которой боюсь и в свободном доступе и нет в полной мере (например, даже документ по ATA-коммандам, на который я вам давал ссылку в соседней теме - это по сути черновик стандарта, а полноценную версию нужно покупать.)

    "И по поводу WinPE: Как именно с ним работать? (ATA команды и Freeze lock)"

    WinPE это просто упрощенная версия Windows, запускающаяся с загрузочной флешки или диска. Под нее можно также как под обычную Windows, разрабатывать консольные или графические приложения и вызывать API-функции CreateFile и DeviceIoControl для отправки команд устройству.

    Ссылки:

    Среда предустановки Windows (WinPE)

    Windows ADK

    30 октября 2017 г. 16:57