1. Если вы только начинаете программировать на ассемблере и не знаете с чего начать, тогда попробуйте среду разработки ASM Visual IDE
    (c) на правах рекламы
    Скрыть объявление

kernel-mode перехват для антивируса

Тема в разделе "WASM.NT.KERNEL", создана пользователем whitequark, 24 фев 2008.

  1. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Какая версия ядра и его адрес загрузки ?
     
  2. 2FED

    2FED New Member

    Публикаций:
    0
    Регистрация:
    20 фев 2008
    Сообщения:
    1.002
    5.1.2600.2622

    804D7000
     
  3. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Этот дамп не SST, не SDT, не дамп секции данных ntos начиная с KeServiceDescriptorTable и не код, а какойто мусор, похоже на часть секции данных какогото модуля.
    Надо узнать где функция перехвачена. Надо видеть дамп ntos!ZwCreateKey, KiSystemService[Repeat], NtCreateKey.
    Если там ничего не изменено, то перехват гдето выше(SST, SDT), конечно если перехват не стоит гдето глубже (напр. ObOpenObjectByName).
     
  4. 2FED

    2FED New Member

    Публикаций:
    0
    Регистрация:
    20 фев 2008
    Сообщения:
    1.002
    Ну я не нашел чем сдампить и сдампил вот так
     
  5. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    8056E761 - адрес NtCreateKey.
    Зделай так:
    LOCAL buf[1024]:byte
    ....
    lea edi,buf
    mov ecx,1024/4
    mov esi,8056E761h
    cld
    rep movsd
    invoke ZwWriteFile, hFile, 0, NULL, NULL, addr iosb,addr buf, 1024,0, NULL
     
  6. 2FED

    2FED New Member

    Публикаций:
    0
    Регистрация:
    20 фев 2008
    Сообщения:
    1.002
    Сдампил, по мойму такой же мусор получился, хотя смотрел через софтайс этот адрес функции, там действительно NtCreateKey
     
  7. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Не мусор, а код. Функция не перехвачена сплайсингом. Для её вызова из ring0 надо найти оригинальную SST ntos и смещение в ней NtCreateKey, через номер сервиса(ето индекс) и вызвать её. Видимо функция перехвачена в SST.
     
  8. 2FED

    2FED New Member

    Публикаций:
    0
    Регистрация:
    20 фев 2008
    Сообщения:
    1.002
    Понял буду пробовать

    ps а чем ты перевёл дамп в код? у меня ида не хотела его переводить
     
  9. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Шутишь ?
    BINTODB.EXE->ml.exe->link.exe->ollydbg
     
  10. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    имхо идой гораздо проще. Спокойно открывает. Просто пользоватся инструментом надо уметь, хотя бы по минимуму.
    Не проще ли все это обсудить в аське, или в привате?
     
  11. 2FED

    2FED New Member

    Публикаций:
    0
    Регистрация:
    20 фев 2008
    Сообщения:
    1.002
    Да тему я думаю уже можно закрывать?
     
  12. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв