2009-07-31 48 views
17

¿Hay alguna manera de ocultar un programa C# desde el Administrador de tareas de Windows?¿Ocultar un programa C# del administrador de tareas?

EDIT: Gracias por la abrumadora respuesta! Bueno, no tenía intención de hacer algo espeluznante. Solo quería ganar una apuesta con mi amigo para poder hacerlo sin que él se diera cuenta. Y no soy un geek para poder escribir un rootkit, como alguien sugirió, aunque me encantaría saber cómo hacerlo.

+13

¿Por qué le gustaría hacer algo como esto? –

+4

No sé la respuesta, pero si lo hiciera, me inclinaría a preguntar acerca de sus razones para hacerlo antes de explicar cómo hacerlo. –

+5

sí, existe: no lo inicie – RaYell

Respuesta

28

No es que yo sepa, y no debería haberlo. El objetivo del administrador de tareas es permitir que los usuarios examinen procesos, etc.

Si el usuario pudiera hacer eso, debería poder encontrar su programa. Si no deberían estar hurgando en el Administrador de tareas, la política de grupo debería evitar eso, no su programa.

+2

totalmente de acuerdo. No veo ninguna razón por la cual un programa debería lograrlo. – Juri

+1

Sí, los programas de exceso de ejecución son simplemente tan molestos. –

+2

Ciertamente lo son si lo que "logran" es enviar correo no deseado, limpiar el disco duro, etc. ... es perfectamente razonable poner restricciones sobre lo que los programas pueden hacer. –

13

Podría hacer que su programa sea un servicio y luego aparecería como "svchost". Hay algo más que eso, pero eso debería darte una pista para ir en la dirección correcta.

6

No tengo conocimiento de ninguna forma de ocultarlo del administrador de tareas, pero podría disimularlo haciendo que se muestre como "svchost.exe". Se mezclará con todos los demás (generalmente hay varios) y se volverá indistinguible.

+0

No realmente, aún puede ver la ruta del ejecutable en el Administrador de tareas. – xyz

+1

@frou: Sí, pero si solo lo nombra svchost.exe y lo coloca en algún lugar debajo de c:/Windows, la mayoría de la gente pensaría que es una aplicación de Windows normal. –

+1

Blah - simplemente llamándolo svchost.exe es una versión más desordenada/menos efectiva de lo que samoz sugiere :) – xyz

18

no me refiero a este zombi, pero pensé que podría contribuir alguna información útil

Si desea ocultar una aplicación hay un dos métodos (que se me ocurre atm).

Ambos tienen sus altibajos

[1] SSDT Tabla enganchando - básicamente lo que tiene que establecer el MDL de la mesa para que permitan la escritura, sobrescribir la dirección de NtQuerySystemInformation (IIRC) con la dirección de su función y hacer que llame a la función original después de filtrar los resultados.

Este método no se adapta muy bien a sus necesidades porque la función de enganche siempre tendría que estar en la memoria e implicaría escribir un controlador de modo kernel. Es divertido, pero la depuración es un problema porque una excepción es un BSOD.

[2] directa del núcleo Manipulación de objetos (DKOM) - la lista de procesos es una lista doblemente enlazada, con un controlador en modo kernel que puede alterar los punteros de los registros encima y por debajo de su proceso de señalar la suya alrededor. Esto aún requiere el uso de un controlador de modo kernel, pero existen rootkits como FU que se pueden descargar fácilmente que contienen un exe y el servicio. El ejecutable se podía llamar desde el interior de la aplicación como un proceso secundario (en la versión de FU publicada, al menos la que encontré, había un error que tuve que corregir donde, si la aplicación oculta salía de la computadora, tenía BSOD, era una solución trivial).

Esto le afortunadamente ser capturado por casi cualquier antivirus decente así que si usted está tratando de hacer algo astuto que tendrá que aprender a conseguir alrededor de eso (pista: utilizan una firma binaria)

No he utilizado método 1 pero el método 2 me ha funcionado desde una aplicación VB.Net.

Una tercera opción posible es simplemente crear la aplicación como un servicio de Windows, esto aparecerá en el administrador de tareas por defecto, pero estoy dispuesto a apostar que hay una manera de decir que no aparezca allí ya que hay muchos otros servicios que no se muestran en el administrador de tareas.

Espero que haya ayudado un poco, mi consejo es que si usted está interesado en este tipo de cosas para aprender C++.

Cuestiones relacionadas