Как зашифровать драйвер?

Тема в разделе "WASM.NT.KERNEL", создана пользователем nitrotoluol, 24 янв 2007.

  1. nitrotoluol

    nitrotoluol New Member

    Публикаций:
    0
    Регистрация:
    5 сен 2006
    Сообщения:
    848
    lea esi, DriverStart
    mov edi,esi
    mov ecx,DriverSize
    shr ecx,2
    @@:
    lodsd
    xor eax,12345678
    stosd
    loop @B


    В ехе этот код работает.
    В драйвере вызывает БСОД
    Тут прочитал, что изменять память в драйвере нельзя, или нужны специльные меры по загрузке, выгрузке.

    Вообщем вопрос.
    Как наиболее просто зашифровать дайвер, чтобы после запуска, он сам себя расшифровывал?
     
  2. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    толку от такой шифровки :)
     
  3. koderr

    koderr New Member

    Публикаций:
    0
    Регистрация:
    29 сен 2006
    Сообщения:
    205
    nitrotoluol
    Может, если в стек расшифровывать код, и там выполнять, тогда получится? Я не знаю.
     
  4. Cr4sh

    Cr4sh New Member

    Публикаций:
    0
    Регистрация:
    17 апр 2006
    Сообщения:
    668
    насколько я помню, старфорс свои дарайвера шифрует
    >> Тут прочитал, что изменять память в драйвере нельзя, или нужны специльные меры по загрузке, выгрузке.
    может просто wp бит сбросить?
     
  5. nitrotoluol

    nitrotoluol New Member

    Публикаций:
    0
    Регистрация:
    5 сен 2006
    Сообщения:
    848
    Asterix
    Шифроалгоритм роли не играет. Сейчас интересует, почему БСОД

    Cr4sh
    Сбросил. Потом восстановил. Нифига. БСОД.
    Аттрибуты секций вроде выставлены. Под отладчиком - вроде нормально шифрует. Но как только выходим из отладчика - система падает.. Просто хочется на драйвер морфер поставить...

    koderr
    Хех... получилось... :))) Работает. Но геморроя много. Особенно с вызовом функций и выравниванием.
    Все-таки интересно, чтобы работать непосредственно с кодом, а не с его копией.
     
  6. infern0

    infern0 New Member

    Публикаций:
    0
    Регистрация:
    7 окт 2003
    Сообщения:
    811
    Адрес:
    Russia
    в длл попробуй - тоже ошибка будет. хинт - релоки...
     
  7. k3internal

    k3internal New Member

    Публикаций:
    0
    Регистрация:
    11 янв 2007
    Сообщения:
    607
    <nitrotoluol
    Может, если в стек расшифровывать код, и там выполнять, тогда получится? Я не знаю>

    DEP тебе в помощь =)
     
  8. nitrotoluol

    nitrotoluol New Member

    Публикаций:
    0
    Регистрация:
    5 сен 2006
    Сообщения:
    848
    infern0
    в драйверах нужна дельта??
     
  9. koderr

    koderr New Member

    Публикаций:
    0
    Регистрация:
    29 сен 2006
    Сообщения:
    205
    Тогда Nt[Allocate/Free]VirtualMemory, противный :)
    Или как там выделяется память в ядреном режиме?