Скрыть процессы программы на С++

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by gold-goblin, 21 May 2007.

Thread Status:
Not open for further replies.
  1. gold-goblin

    gold-goblin Elder - Старейшина

    Joined:
    26 Mar 2007
    Messages:
    917
    Likes Received:
    174
    Reputations:
    3
    Задача бональна но решения у меня нет.

    Надо скрыть прогу на С++ из диспечера задач винды,
    Как это можно сделать?
     
  2. gevara

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

    Joined:
    29 Nov 2006
    Messages:
    47
    Likes Received:
    7
    Reputations:
    5
    Я бы предложил хук SDT - ZwQuerySystemInformation(ProcessAndThreadsInformation...)
    хм.. не знаю - подойдёт ли... вобщем ищем в процессах taskmgk.exe и вносим необходимые изменения там.. можно также перехватывать окошко диспетчера задач.

    В первом случае необходимо залезть в память ядра - т.е. написать дров. Во втором нужен инжект в другой процесс.
     
  3. slesh

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

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    А если юзаешь ProcessExplorerNT - то тяжко скрыть.
    тут тока или через ring0 замодить таблицу процессов или перехватом ядрёных функций.
     
  4. Ky3bMu4

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

    Joined:
    3 Feb 2007
    Messages:
    487
    Likes Received:
    284
    Reputations:
    42
    Проще инжекнуцо в процесс.
     
    1 person likes this.
  5. Visor

    Visor New Member

    Joined:
    4 Jun 2006
    Messages:
    26
    Likes Received:
    3
    Reputations:
    3
    известная проблема.
    для windows 9х подошёл бы вот такой код:
    Code:
    typedef DWORD (CALLBACK* TRegProc)(DWORD, DWORD);
    HINSTANCE		Kern;
    TRegProc		RegProc;
    Kern = LoadLibrary("KERNEL32.DLL");
    if(Kern)
    {
      RegProc = (TRegProc)GetProcAddress(Kern, "RegisterServiceProcess");
      if(RegProc)
        RegProc(GetCurrentProcessId(),1);
      FreeLibrary(Kern);
    }
    
    А вот под NT уже нет. сам пробовал :(
    Тоже искал решение такой проблемы. Нашёл кое-что (надеюсь, что поможет): ссылка на решение проблемы
     
    2 people like this.
  6. slesh

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

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    В принципе есть еще способ - это через hook DLL просто встречал исходник дельфяный одно дллки которая прятала запущенный процесс, но её уже давным давно палят авиры. Хотя переписать можно запросто. Но тоскать с собой dll'ку - ни есть гуд.
    Я помню когдатьо в своем трояна тоскал вообще драйвер для ring0 :)
     
  7. Joker-jar

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

    Joined:
    11 Mar 2007
    Messages:
    581
    Likes Received:
    205
    Reputations:
    37
    Есть серия отличных статей MS-Rem'a на тему "Перехват API функций в Windows NT". Точно не помню, но помойму на wasm'е есть.
     
  8. gold-goblin

    gold-goblin Elder - Старейшина

    Joined:
    26 Mar 2007
    Messages:
    917
    Likes Received:
    174
    Reputations:
    3
    Всем спасибо. Щя буду пытатся с инжектом в процесс а дальше посмотрим.
     
  9. sn0w

    sn0w Статус пользователя:

    Joined:
    26 Jul 2005
    Messages:
    1,023
    Likes Received:
    1,311
    Reputations:
    327
    баян. самая тема - разорвать записи в списках описателей процессов. такое например реализовано в FU Rootkit (исходники на rootkit.com), единственный минус тут - нужно писать драйвер. хотя можно вообщето и без него, но тогда задача усложняется на порядок.
     
  10. _Great_

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

    Joined:
    27 Dec 2005
    Messages:
    2,032
    Likes Received:
    1,119
    Reputations:
    1,139
    Вапсчета баян. закрыто
     
Loading...
Similar Threads - Скрыть процессы программы
  1. Peja
    Replies:
    0
    Views:
    2,626
Thread Status:
Not open for further replies.