SoloCodigo
Programación General => C/C++ => Visual C++ => Mensaje iniciado por: Gex en Jueves 22 de Febrero de 2007, 03:41
-
Pues eso, es posible esconder un proceso del administrador de tareas por unos 10 segundos?
-
No, a menos que trates con un root kit o algo por el estilo y hasta donde se no es una tarea nada facil.
-
Podrías tratar de camuflarlo cambiándolo cada X segundos, es decir, creas otro proceso (obviamente con otro nombre) que continúe con la tarea y destruyes el actual.-
¿ :think: Qué intenciones perversas te traés :lightsabre: ?
-
o evitar q se agregue en la lista cambiandole el manejador de mensajes...
-
Teniendo en cuenta que el taskmgr.exe se ejecuta solo una vez lo mas facil seria que lo "atacaras" directamente. Creas una DLL que contenga el codigo para interceptar la funcion que use para enumerar los procesos y engañarlas. Para inyectar la DLL haces lo mismo que el taskmanager, enumerar los procesos, y en el momento de inyectar te quedas con un HANLDE abierto al mismo para esperar con un WaitForSingleObject a que muera. Desde ese momento tenes que seguir enumerando para encontrar una nueva instancia (no estan permitidas dos al mismo tiempo).
¿Cual es el sentido de hacer esto solo por 10 segundos?
-
Bueno, les comento:
Estoy haciendo un programa Anti-Cheat para el famoso juego Counter-Strike ( v1.6 )
y ya lo tengo casi terminado hasta que se me ocurrio eso de desaparecer el proceso por 10-15 segundos y despues de ese tiempo que vuelva a aparecer asi los programas llamados "cheats" no funcionarian ya que inyectarian tarde. :comp:
la mayoria necesitan inyectarse justo cuando el proceso del juego aparece para funcionar.
-
Estoy haciendo un programa Anti-Cheat para el famoso juego Counter-Strike ( v1.6 )
y ya lo tengo casi terminado hasta que se me ocurrio eso de desaparecer el proceso por 10-15 segundos y despues de ese tiempo que vuelva a aparecer asi los programas llamados "cheats" no funcionarian ya que inyectarian tarde.
Entonces la mencion del taskmanager solo sirve para confundir ya que no era ese programa tu objetivo.
Mucho peor entonces, o haces lo mismo para cada uno de esos "cheats" o creas una DLL generica que se tiene que inyectar en todos los procesos ... o un driver de modo Kernel.
Con esos pocos datos que das no te puedo decir nada mas.
-
otra pregunta:
se puede cambiar el nombre del proceso ya estando abierto o cuando este por crearse?
en VB se puede pero en C nose :huh:
-
No se como creeras que haces eso en VB pero CUALQUIER cosa que puedas hacer en VB la podes hacer en C.
-
Si es asi no te servira de nada ocultarte al taskmanager, ya ke con, por ejemplo, el tasklist verian tu proceso.
Lo que hacer es hookear las apis que listan los procesos y "falsearlas", es decir, modificar el resultado verdadero para ocultar tu proceso.
Te dare 2 textos bastante buenos que me e encontrado por internet sobre eso.
- API Hooking (http://mzrd.martes13.net/tutos/apihooking.pdf)
- Inyeccion DLL (http://mzrd.martes13.net/tutos/inyecciones.pdf)
- Codigo Inyeccion DLL (http://mzrd.martes13.net/Inyecciones.zip)
Escritos por MazarD.