непонятки с ZwRequestWaitReplyPort

Тема в разделе "WASM.NT.KERNEL", создана пользователем red_mould, 28 авг 2011.

  1. red_mould

    red_mould New Member

    Публикаций:
    0
    Регистрация:
    9 янв 2010
    Сообщения:
    34
    В общем суть в чем. Хукнул ZwRequestWaitReplyPort. Ну и при вызове простенького консольного приложения которое пишет инфу на терминал, пытаюсь это все дело выловить и вывести что-то типа "Hello world". В мат части (например у тогоже Герри Неббета) написано что Data[] в PORT_MESSAGE это собственно данные сообщения корорые находятся сразу после структуры... Да вот только я в упор не вижу те данные которые выводятся на консоль. Уже перелопатил практически весь инет, и форум несколько раз, путного ничего не нашел... То что данные пересылает нужный процесс я уверен, потому как проверяю это все дело по хендлу (RequestMessage->ClientId.UniqueProcess). Подскажите плиз что не так? Бо мозг уже набекрень лезет...
     
  2. red_mould

    red_mould New Member

    Публикаций:
    0
    Регистрация:
    9 янв 2010
    Сообщения:
    34
    Неужели никто из обитающих тут гуру не сталкивался с таким вопросом?
     
  3. x64

    x64 New Member

    Публикаций:
    0
    Регистрация:
    29 июл 2008
    Сообщения:
    1.370
    Адрес:
    Россия
    Обитающие тут гуру придерживаются мнения, что не стоит использовать всякую недокументированную ересь. С другой стороны, они, наверное, не откажутся от некой мзды за исследование интересующего тебя вопроса, при условии, разумеется, что самостоятельно ты с этой проблемой справится не в состоянии. Такие дела.
     
  4. h0t

    h0t Member

    Публикаций:
    0
    Регистрация:
    3 апр 2011
    Сообщения:
    735
    Я кончено не гуру, но насколько я помню, хукая ZwRequestWaitReplyPort Вы можете прочитать то что ВВОДИТСЯ в консоль а не выводится!!!
     
  5. red_mould

    red_mould New Member

    Публикаций:
    0
    Регистрация:
    9 янв 2010
    Сообщения:
    34
    Хммм, ну на сколько подсказывает Ида, то при как при вводе так и при выводе в конечном этоге вызывается ZwRequestWaitReplyPort (ну если быть точнее например ReadConsole->CsrClientCallServer->ZwRequestWaitReplyPort и потом переход в ядро и т.д.). Только разные команды. Ну и так же передается буфер с данными. Вот уже не первый день морочусь с этим вопросом...
    Ну я тут находил очень много обсуждений "недокументированной ереси".