2009-07-31 3 views
17

Есть ли способ скрыть программу C# из диспетчера задач Windows?Скрыть программу C# от диспетчера задач?

EDIT: Спасибо за подавляющий ответ! Ну, я не собирался делать что-то жуткий. Просто хотел выиграть пари с моим другом, что я могу сделать это, не заметив его. И я не выродка, чтобы писать руткит, поскольку кто-то предложил, хотя мне бы хотелось знать, как это сделать.

+13

Почему вы хотите сделать что-то подобное? –

+4

Я не знаю ответа, но если бы я это сделал, я был бы склонен спросить о ваших причинах для этого, прежде чем объяснять, как это сделать. –

+5

Да, есть: не начинайте – RaYell

ответ

28

Не то, чтобы я знал - и не должно быть. Точка диспетчера задач позволяет пользователям просматривать процессы и т. Д.

Если пользователь должен это сделать, они должны иметь возможность найти вашу программу. Если в диспетчере задач они не должны ковыряться, групповая политика должна помешать этому - не вашей программе.

+2

полностью согласен. Я не вижу причин, по которым должна достигаться программа. – Juri

+1

Да, программы с чрезмерным достижением просто так раздражают. –

+2

Они, разумеется, являются тем, что они «достигают» - это спам, стирание жесткого диска и т. Д. ... вполне разумно устанавливать ограничения на то, что могут делать программы. –

13

Вы можете сделать свою программу услугой, а затем она появится как «svchost». Это немного больше, чем это, но это должно дать вам намек, чтобы идти в правильном направлении.

6

Я не знаю, как скрыть его от диспетчера задач, но вы можете просто скрыть его, указав его как «svchost.exe». Он будет сосредоточен на всех остальных (их обычно несколько) и станет неразличимым.

+0

Не совсем - вы все равно можете увидеть путь к исполняемому файлу в диспетчере задач. – xyz

+1

@frou: Да, но если вы просто назовите его svchost.exe и опустите его где-нибудь под c:/Windows, большинство людей просто подумают, что это обычное приложение для Windows. –

+1

Blah - просто называть его svchost.exe - беспорядочная/менее эффективная версия того, что предлагает samoz :) – xyz

18

Не значит зомби это, но я думал, что я мог бы внести свой вклад некоторую полезную информацию

Если вы хотите, чтобы скрыть приложение там два метода (что я могу думать о атм).

Они оба имеют свои взлеты и падения

[1] SSDT Таблица закреплять - в основном вы должны установить лей из таблицы Writeable, перезаписать адрес NtQuerySystemInformation (IIRC) с адресом вашего функцию и вызвать ее функцию оригинала после фильтрации результатов.

Этот метод не очень подходит для ваших нужд, потому что функция подключения всегда должна быть в памяти и связана с написанием драйвера режима ядра. Его забавная вещь, но отладка - это боль, потому что исключение означает BSOD.

[2] Direct Kernel Object Manipulation (DKOM) - список процессов дважды связанный список, с драйвером режима ядра вы можете изменить указатели выше и ниже вашего процесса записи, чтобы указать вокруг вами. Это по-прежнему требует использования драйвера режима ядра, но есть руткиты, такие как FU, которые можно легко загрузить, которые содержат exe и службу. Exe может быть вызван изнутри вашего приложения в качестве дочернего процесса (в выпущенной версии FU, по крайней мере, той, которую я нашел, была ошибка, которую я должен был исправить там, где, если скрытое приложение вышло из компьютера, BSOD, это было тривиальное исправление).

Это, к счастью, поймал почти любые приличный антивирус, так что если вы пытаетесь сделать что-то подлое вам придется научиться получать вокруг этого (подсказки: они используют двоичную подпись)

Я не использовал метод 1, но метод 2 работал для меня из приложения VB.Net.

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

Надеюсь, я немного помог, мой совет заключается в том, что если вы заинтересованы в этом, чтобы научиться C++.

Смежные вопросы