Ring0 для WinNT

Тема в разделе "WASM.BEGINNERS", создана пользователем lomerok, 9 апр 2011.

  1. lomerok

    lomerok New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2008
    Сообщения:
    60
    ребят ,поделитесь сабжем...а именно исходничком рабочим для перехода в нулевое кольцо и исполнения там каких либо функций или команд ... ато весь инет перерыл и нефига найти немогу даже тут в маннах ниче не нашел

    мне нужен пример исходника который выполняет месадж бокс из нулевого кольца...если есть у кого ,дайте плиз...
     
  2. intel_x128

    intel_x128 New Member

    Публикаций:
    0
    Регистрация:
    17 май 2009
    Сообщения:
    345
    Тут то что тебе нужно.
    Так же почитай мануалы FOUR-F для разработки простейших драйверов.
     
  3. lomerok

    lomerok New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2008
    Сообщения:
    60
    чет уменя некомпилится драйвер как указано по ссылке , тобишь мэйк файлом , вот что консоль выдаёт

    Код (Text):
    1. C:\Users\Ankh\Desktop\MyDriver>C:\Windows\system32\cmd.exe /c "cd C:\WinDDK\7600
    2. .16385.1\bin\&&setenv.bat C:\WinDDK\7600.16385.1\&&cd C:\Users\Ankh\Desktop\MyDr
    3. iver\&&build -ceZ&&pause"
    4. OACR monitor running already
    5. BUILD: Compile and Link for x86
    6. BUILD: Start time: Sat Apr 09 03:54:18 2011
    7. BUILD: Finish time: Sat Apr 09 03:54:18 2011
    8. BUILD: Done
    9.  
    10. Для продолжения нажмите любую клавишу . . .
     
  4. intel_x128

    intel_x128 New Member

    Публикаций:
    0
    Регистрация:
    17 май 2009
    Сообщения:
    345
  5. lomerok

    lomerok New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2008
    Сообщения:
    60
    я вообщето уже о другом спрашиваю
     
  6. intel_x128

    intel_x128 New Member

    Публикаций:
    0
    Регистрация:
    17 май 2009
    Сообщения:
    345
    Я вам вообще-то уже другое и показываю.
    Прочитайте сперва FAQ как собирать драйвера, а потом спрашивайте, что именно из того материала вам непонятно.
    Если очень горит - напишите ПМ со своими вопросами человеку с ником spa
    Он ответит и поможет.
     
  7. lomerok

    lomerok New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2008
    Сообщения:
    60
    в моём винддк нет и половины таких дирректорий как тут, ребята что делать?
     
  8. ohne

    ohne New Member

    Публикаций:
    0
    Регистрация:
    28 фев 2009
    Сообщения:
    431
    $(DDK) = C:\WinDDK\<Version>

    AdditionalIncludeDirectories="$(DDK)\inc\ddk;$(DDK)\inc\api;$(DDK)\inc\crt"
    AdditionalLibraryDirectories="$(DDK)\lib\wxp\i386"
     
  9. lomerok

    lomerok New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2008
    Сообщения:
    60
    блин я так запутался что ваще желание отпадать стало,ребята объясните как компилить через консолько свой проект в новой 7ой версии вин ддк,или дайте готовую папку со всеми простыми сырками и мэйк файлом,умоляю,иначе мне неосилить эти мануалы,уменя среда VC6 + MS Windows Driver Kit 7.1.0

    помераю ужо мозги кипят запутался половину из того что пишут в статьях этих уменя нет либо не появляется либо я непонимаю где в какое время делать хоть и делаю попорядку

    и еще помимо всего ,уменя неоткрываются чужие проекты почемуто....

    ниужели никто не собирал вот этот драйвер в 7 версии ДДК
     
  10. Indy_Rnd_001

    Indy_Rnd_001 New Member

    Публикаций:
    0
    Регистрация:
    9 апр 2011
    Сообщения:
    7
    Теория гласит: смена окружения требует соответствующие поправки. Для выполнения свича U-mode -> K-mode необходимо формирование T-фрейма. Инде использует автоматическую генерацию кода посредством морфинга одного из системных шлюзов, при этом задаётся условие, которое ограничивает описание ISR, это облегчается тем, что те макро(ENTER_INTERRUPT, ENTER_SYSCALL) имеют общую точку выхода, таким образом формируется ветвь однозначно завершающаяся в графе(сходящаяся на одной инструкции). И этот код переносится в памяти(морфинг). После этого расширение(Body, тоесть нагрузка) также парсится. Затем выполняется слияние графов, таким образом код, формирующие T-фрейм интегрируется в тело.
     
  11. ohne

    ohne New Member

    Публикаций:
    0
    Регистрация:
    28 фев 2009
    Сообщения:
    431
    Indy_Rnd_001
    "_Rnd_001" - это GPE теперь такое генерирует?
     
  12. lomerok

    lomerok New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2008
    Сообщения:
    60
    всё настроил вроде всё верно но и тут подкралась темнота

    Код (Text):
    1. --------------------Configuration: MyEbanyDriver - Win32 Debug--------------------
    2. Compiling...
    3. main.cpp
    4. C:\WinDDK\7600.16385.1\inc\ddk\ntddk.h(28) : fatal error C1189: #error :  Compiler version not supported by Windows DDK
    5. Error executing cl.exe.
    6.  
    7. main.obj - 1 error(s), 0 warning(s)
    пробовал закоментить эти ероры в хидерах тогда вылазила куча других ошибок
     
  13. lomerok

    lomerok New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2008
    Сообщения:
    60
    еще у меня такой вопрос,для чего обычно руткиты используют ринг0 ,и какие возможности он даёт ... только без гугла плиз,если можно в трёх славах ответьте...
     
  14. intel_x128

    intel_x128 New Member

    Публикаций:
    0
    Регистрация:
    17 май 2009
    Сообщения:
    345
    для выполнения тех действий, которые в ринг4 недоступны, например выгрузить всю защиту антивируса или передать некоторую информацию в сеть минуя файерволы, сетевые мониторы и сниферы.
     
  15. h0t

    h0t Member

    Публикаций:
    0
    Регистрация:
    3 апр 2011
    Сообщения:
    735
    ответ в 3х словах: дает любые возможности.
     
  16. lomerok

    lomerok New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2008
    Сообщения:
    60
    вылетает вот такая ошибка
    Код (Text):
    1. 1>------ Build started: Project: TheDriver, Configuration: Release Win32 ------
    2. 1>Compiling...
    3. 1>TheDriver.cpp
    4. 1>C:\WinDDK\7600.16385.1\inc\ddk\wdm.h(23532) : error C3861: 'KeInitializeDpc': identifier not found
    5. 1>C:\WinDDK\7600.16385.1\inc\ddk\ntddk.h(15486) : error C3861: 'RtlCompareMemory': identifier not found
    6. 1>C:\WinDDK\7600.16385.1\inc\ddk\ntddk.h(15895) : error C3861: 'RtlCompareMemory': identifier not found
    7. 1>StdAfx.cpp
    8. 1>Generating Code...
    9. 1>Build log was saved at "file://c:\Documents and Settings\Ankh\Рабочий стол\TheDriver\Release\BuildLog.htm"
    10. 1>TheDriver - 3 error(s), 0 warning(s)
    11. ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
    а вот мой драйвер

    Код (Text):
    1. #include <ntddk.h>
    2.  
    3.  
    4. #define DEBUG
    5.  
    6. /*
    7. Создаем макрос для вывода отладочных сообщений
    8. в случае компиляции с директивой DEBUG
    9. */
    10.  
    11. #ifdef DEBUG
    12.   #define DPRINT DbgPrint
    13. #else
    14.   #define DPRINT
    15. #endif
    16.  
    17.  
    18. VOID DriverUnload(IN PDRIVER_OBJECT DriverObject)
    19. {
    20.     DPRINT("Driver unloaded");
    21.     return;
    22. }
    23.  
    24. NTSTATUS DriverEntry(IN PDRIVER_OBJECT DriverObject,
    25.                      IN PUNICODE_STRING RegistryPath)
    26. {
    27.     DPRINT("Driver loaded");
    28.  
    29.     return STATUS_SUCCESS;
    30. }
     
  17. disasm

    disasm New Member

    Публикаций:
    0
    Регистрация:
    7 июн 2011
    Сообщения:
    35
    лол. порвало :lol:
     
  18. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    lomerok
    Ну что ты хочешь? Какой StdAfx в драйвере. У тебя явно система не настроена. Что-то лишнее в PATH, INCLUDE.
    DDK требует аккуратности. Читай внимательно как правильно с ним работать.
     
  19. lomerok

    lomerok New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2008
    Сообщения:
    60
    убрал , и всеравно эти ошибки

    Код (Text):
    1. 1>------ Build started: Project: TheDriver, Configuration: Release Win32 ------
    2. 1>Compiling...
    3. 1>TheDriver.cpp
    4. 1>C:\WinDDK\7600.16385.1\inc\ddk\wdm.h(23532) : error C3861: 'KeInitializeDpc': identifier not found
    5. 1>C:\WinDDK\7600.16385.1\inc\ddk\ntddk.h(15486) : error C3861: 'RtlCompareMemory': identifier not found
    6. 1>C:\WinDDK\7600.16385.1\inc\ddk\ntddk.h(15895) : error C3861: 'RtlCompareMemory': identifier not found
    7. 1>Build log was saved at "file://c:\Documents and Settings\Ankh\Рабочий стол\TheDriver\Release\BuildLog.htm"
    8. 1>TheDriver - 3 error(s), 0 warning(s)
    9. ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
     
  20. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    lomerok
    Тут по другой теме прочел статью про драйвера. Но там же драйвер собирают через make. И есть еще один инклюд driver.h Наверно можно и в Студии через проект собрать драйвер, но тогда ищи указивку что и как...
    Например в своей Студии 2005 я что-то не заметил шаблона для сборки драйвера...