Отказ в завершении процесса.

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by slesh, 10 Sep 2007.

Thread Status:
Not open for further replies.
  1. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    Наверное многие видели такое, что нельзя завершить какой либо процесс. К примеру Outpost - стандартный такс менеджер и ProcessExplorerNT завершить не могут.
    Вот возник вопрос, как это можно реализовать в своей программе?
     
  2. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    Я никогда не мог прибить напрямую сервис аутпоста.
     
  3. Alexsize

    Alexsize Fail

    Joined:
    17 Sep 2005
    Messages:
    1,771
    Likes Received:
    1,215
    Reputations:
    704
    Зероринг тебе в руки.
     
  4. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    2 Alexsize - нуну. Не катит. НУжно всё легально делать :)
     
  5. Alexsize

    Alexsize Fail

    Joined:
    17 Sep 2005
    Messages:
    1,771
    Likes Received:
    1,215
    Reputations:
    704
    Легально терминировать аутпост нештатными средствами? Вы ничего не путаете??!
     
  6. Ni0x

    Ni0x Elder - Старейшина

    Joined:
    27 Aug 2006
    Messages:
    338
    Likes Received:
    157
    Reputations:
    37
    Ну вообщето у отупоста есть своя служба.
     
  7. Xserg

    Xserg Elder - Старейшина

    Joined:
    9 Dec 2006
    Messages:
    135
    Likes Received:
    127
    Reputations:
    53
    Легально
    sendmessage(wnd,WM_ENDSESSION,0,0);
    но он спросит - хотим остаться без защиты.

    Как вариант внедрить свой код , и выполнить там TerminateProcess.
     
  8. KEZ

    KEZ Ненасытный школьник

    Joined:
    18 May 2005
    Messages:
    1,604
    Likes Received:
    754
    Reputations:
    397
    Он перехватывает в SDT ZwOpenProcess. Как понять легальный метод? Хочешь через bat файл захватить мир?
     
  9. Xserg

    Xserg Elder - Старейшина

    Joined:
    9 Dec 2006
    Messages:
    135
    Likes Received:
    127
    Reputations:
    53
    А можно воспользоваться твоим Unhook API всех модулей
     
  10. Joker-jar

    Joker-jar Elder - Старейшина

    Joined:
    11 Mar 2007
    Messages:
    581
    Likes Received:
    205
    Reputations:
    37
    В любом случае, нужно опускаться на уровень ниже. На wasm'е есть отличные статейки, в частоности, уважаемого MS-Rem'а
     
  11. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    2 KEZ - вот именно это и нужно. То, что нужно перехватить эту фукнцию - это и ежу понятно. А вот как бы это сделать без ring0?
     
  12. W!z@rD

    W!z@rD Борец за русский язык

    Joined:
    12 Feb 2006
    Messages:
    973
    Likes Received:
    290
    Reputations:
    43
    sorry for Offtop

    не пробовали назвать процесс именем сервиса? (winlogon)

    у меня вопрос... там что проверяется имя сервиса!???
     
  13. _Great_

    _Great_ Elder - Старейшина

    Joined:
    27 Dec 2005
    Messages:
    2,032
    Likes Received:
    1,118
    Reputations:
    1,139
    никак, если хочешь защитить процесс нормально, нужно подружиться с ядром.
     
  14. _Great_

    _Great_ Elder - Старейшина

    Joined:
    27 Dec 2005
    Messages:
    2,032
    Likes Received:
    1,118
    Reputations:
    1,139
    ВОобще вопрос довольно стандартный, стандартный будет и ответ - хук ZwTerminateProcess.
    Хукать опен процесс лучше не надо, т.к. если будет открытый хендл до того, как хук установят - можно будет грохнуть.
    На васме обсуждений на эту тему было много. Читаем статьи и форум
    Закрыто ввиду пустого трепа людьми, не сведущими в теме
     
Thread Status:
Not open for further replies.