Подмена стандартного драйвера ?

Тема в разделе "WASM.RESEARCH", создана пользователем asmlamo, 13 сен 2004.

  1. asmlamo

    asmlamo Well-Known Member

    Публикаций:
    0
    Регистрация:
    18 май 2004
    Сообщения:
    1.734
    Патчил стандартные драйвера :



    kbdclass.sys (клавиатура)

    atapi.sys



    Потом корректировал контрольную сумму.



    Далее копировал их обратно на место system32/drivers

    Через несколько секунд винда(w2k) вываливает окошко:



    >> Служба защиты драйверов.

    >> В процессе работы произошло изменение драйверов на драйвера неизвестных производителей

    >> Для восстановления вставьте инсталяционный диск w2k

    >> Отменить Да - Нет



    Пару раз нажимаеш Нет - успокаивается.



    Можно ли это сделать без шуму и пыли ?

    По моему мнению не стоит так травмировать хрупкую психику пользователей :)





    Насколько я понял каждый драйвер в винде нынче подписанн циф. подписью вендора.



    Можно ли обойти эту проверку ? К примеру патчить библиотеку где она осуществляется ?
     
  2. Julius

    Julius New Member

    Публикаций:
    0
    Регистрация:
    31 окт 2003
    Сообщения:
    42
    Цифровая подпись тут не причем.

    Ты верно забыл про dllcash.

    Проподченные дрова нужно и туда перезаписать.

    Тогда система должна перестать ругаться.
     
  3. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine
    Пуск\Настройка\Панель управления\Система\Оборудование - "Подписывание драйверов"
     
  4. Four-F

    Four-F New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2002
    Сообщения:
    1.237
    "Finally, note that any time you change one of the standard files that exist in one of the system directories (such as %SystemRoot%\system32) Windows File Protection (WFP) will restore that file to its original state unless WFP is first disabled. If a debugger is attached to your system, you can temporarily disable Windows File Protection by changing the following registry value:



    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

    SFCDisable:REG_DWORD:2



    Setting SFCDisable to a value of 2 disables WFP for the next boot (only). A value of 0 (the default) enables WFP. For a description of the features of WFP, see the Platform SDK. For more information on the WFP registry settings, see Microsoft Knowledge Base Article Q222473 ( http://go.microsoft.com/fwlink/?linkid=3100&ID=222473&clcid=0x409 )."
     
  5. volodya

    volodya wasm.ru

    Публикаций:
    0
    Регистрация:
    22 апр 2003
    Сообщения:
    1.169
    Four-F



    Это уже давно не актуально. Поиск по слову "WFP" по форуму.
     
  6. Four-F

    Four-F New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2002
    Сообщения:
    1.237
    Да я всё знаю. Насчет актуальности не понял. Вроде, актуально ещё.
     
  7. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    Four-F

    Вроде ключик в реестре только до 2k(sp2) включительно действовал..
     
  8. volodya

    volodya wasm.ru

    Публикаций:
    0
    Регистрация:
    22 апр 2003
    Сообщения:
    1.169
    Задизаблить WFP ты уже не можешь. Я даже куски кода приводил... Да короче, ты и сам все это знаешь. Все эти ключики становятся до лампочки в SP4+.
     
  9. asmlamo

    asmlamo Well-Known Member

    Публикаций:
    0
    Регистрация:
    18 май 2004
    Сообщения:
    1.734
    Цифровая подпись тут не причем.



    Очень даже причем !



    Ты верно забыл про dllcash.

    Проподченные дрова нужно и туда перезаписать.



    Пробовал. Не помогает !



    Тогда система должна перестать ругаться.



    Дело именно в WFP и цифровых сертификатах !
     
  10. Zufyxe

    Zufyxe New Member

    Публикаций:
    0
    Регистрация:
    13 авг 2004
    Сообщения:
    137
    Адрес:
    Russia
    - разве??? Я борюсь с WFP следующим образом: вешаюсь на NtNotifyChangeDirectoryFile - в процессе Winlogon из SFC.DLL переодически вызывает эту func. Вкратце, смысл в том, чтобы при возникновении изменений в каталоге перехватить Notification, проверить FILE_NOTIFICATION_INFORMATION и если это я подменил/изменил файл - то WFP об этом событии просто не узнаёт :) Могу подробнее, если интересно...
     
  11. asmlamo

    asmlamo Well-Known Member

    Публикаций:
    0
    Регистрация:
    18 май 2004
    Сообщения:
    1.734
    А патчинг SFC.DLL уже не в моде ?
     
  12. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine
    А зачем патчить то ? Тем более из-за одного драйвера отключать всю систему безопасности :)



    Раз есть админ , то проще установить соотв. политику и всё :

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Driver Signing
     
  13. Julius

    Julius New Member

    Публикаций:
    0
    Регистрация:
    31 окт 2003
    Сообщения:
    42
    Небольшой эксперимент. Все ниже сказанное справедливо для WinXP SP1 и было проделано лично мною.

    Берем файлы atapi.sys и kbdclass.sys.

    Меняем в каждом из них по три бита, в инструкциях вида xor regX,regX (бит направления).

    Правим контрольную сумму. Пишем в dllcash и drivers, предворительно удалив базы драйверов из Driver Cash.

    Защита отсылает нас куда подальше, сообщая что какой то нехороший человек заменил системные файлы.

    ОК.

    Восстанавливаем файлы, перегружаем систему.

    Записываем измененные файлы в Driver Cash (driver.cab, sp1.cab), dllcash и drivers.

    Система молчит. Перегружаем систему. Система молчит.

    Восстанавливаем файлы и перегружаем систему.

    Все ОК.

    Проделываем первый эксперемент снова и снова получаем пару не ласковых слов от WFP.

    Вывод чихала Винда на цифровые подписи.

    Если я ошибаюсь поправте меня.
     
  14. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine




    По-твоему CRC это цифровая подпись ? Думаю тебе стоит посмотреть в \system32\CatRoot\..

    Там за семью сертификатами , за восемью печатями , храниться трижды пошифрованный , шестирежды завереный хеш от файла , возле которого лежала та подпись :)

    Причём в одном таком каталоге безопасности , храниться дух не одного файла , а от всего cab-архива из которого его выпустили . Есс-но архивы поставляються с этими файл-каталогами (есть утиль такая духозапечатывающая - makecat.exe) . Кстати админ-шаманы могут учуять запах этих духов и мельком взглянуть на содержимое кат-файлов . Главный систем-шаман на это быстренько закроет глаза , а потом будет снова ежеминутно перешифровывать контейнеры в которых храняться зашифрованные ключи для проверки подписи кат-файла и действительности тех тридцатитрёх демонов , которые заверили присутствие там правильных духов кровью своих сертификатов .



    Надеюсь никто не испугался :) Просто когда я не всё понимаю , мне это кажеться более таинственным и мрачным ;)

    Может это и бред , но кажеться скорее админ-шаман зачихает , чем винда .







    Ты гость-шаманом попробуй такое проделать . А админом то хоть свой ntldr ставь и перегружайся , тут вариантов мне кажеться уйма . И на сколько они будут проще зависит ещё от оси .
     
  15. Julius

    Julius New Member

    Публикаций:
    0
    Регистрация:
    31 окт 2003
    Сообщения:
    42
    А админом то хоть свой ntldr ставь и перегружайся , тут вариантов мне кажеться уйма .



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

    Дык она получается и не ругается.

    А, про CatRoot я знаю. Да там дествительно хранятся цифровые подписи и что с того.

    Если драйвера заменить в Driver Cash, dllcash и drivers, то система на эту замену не реагирует, во всяком случае открыто. Никаких сообщений не выдает. Ругаться она начинает если удалить базу драйверов из Driver Cash.

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

    PS Конечно с заявлением „Вывод чихала Винда на цифровые подписи.“ я немного погорячился.
     
  16. Julius

    Julius New Member

    Публикаций:
    0
    Регистрация:
    31 окт 2003
    Сообщения:
    42
    По-твоему CRC это цифровая подпись ?



    PPS Кстати про то, что CRC это цифровая подпись я и не заикался.
     
  17. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine




    Ну автор своим высказыванием
    , не определяет каких именно пользователей . И как это отключить из гостя я не представляю . А админом :











    Так всё-таки ругаеться ? Кстати можешь ещё заглянуть в журнал системы , там записи должны быть по-любому .

    Имхо в данном случае это лишнее . Самый , на мой взгляд , естественный способ я приводил . Кроме того нельзя забывать , что здесь нужно бороться с Driver Signing , а отключением Windows File Protection можно дествительно травмировать психику некоторых пользователей :)
     
  18. asmlamo

    asmlamo Well-Known Member

    Публикаций:
    0
    Регистрация:
    18 май 2004
    Сообщения:
    1.734
    Задача такая:



    Чел запускает прогу по пользователем (или опытным пользователем) которая патчит драйвера и при этом нужно что бы система молчала и не нужно было делать никаких дополнительных настроек !



    Интересно для систем W2k (SP4) и XP