Ayuda: Programar módulos para un AV-Killer

Iniciado por Mad Antrax, 14 Octubre 2007, 00:59 AM

0 Miembros y 1 Visitante están viendo este tema.

byebye

yo te puedo ayudar a hookear el kernel hendrix. de hecho hacer un solo driver para matar todos los avs no es mucho codigo y es menos que escribir un modulo por av.

digamos que el av este hookea X funciones, es facil saber que esta hookeando haciendo un dump con windbg. ahora ¿como se matan procesos desde un driver?

PsLookupProcessByProcessId
PspTerminateProcess

simplemente con estas dos funciones se pueden matar todos los procesos. la primera es para conseguir la EPROCESS requerida por la segunda.

push buffer_para_eprocess
push pid
call [PsLookupProcessByProcessId]

push 0
push buffer_para_eprocess
call [PspTerminateProcess]

con esto ya estaria, lo unico que se tiene es que pasar el pid desde la aplicacion en ring3 a la aplicacion en ring0.

saludos.

Hendrix

Eso mismo te hiba a decir, seria para matar aplicaciones que se peudan "localizar" desde Ring3....para finalizar drivers como se haria???Ya que con el driver del Kav funcionando seria inutil finalizar su proceso  ;)
"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

byebye

no creas que seria inutil, sabiendo que funciones hookea se restauran por ejemplo. despues yo creo que el proceso en ring3 se comunica con los drivers y estos trabajan si ese proceso no esta los drivers no hacen nada. todo es probar y ya veriamos como anularlos.

Hendrix

#23
Ok, por la noche me metere a probarlo... ;) ;)

Un Saludo  :)

Por cierto, como ejecutas los drivers sin tener que reiniciar??? :huh:
"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

byebye

los añado como servicio y despues pido que se inicien. a la hora de estar escribiendolos por comodidad uso osrloader.

nhaalclkiemr

Weno yo en este tema ya no me meto k no se mucho pero parece k va a ser la única solución, es cuestión de probar...a ver k sale :xD

Saludos ;)
StasFodidoCrypter 1.0 - 100% (old)
StasFodidoCrypter 2.0 - 85% (deserted)
Fire AV/FW-Killer - 97% (deserted)
R-WlanXDecrypter 1.0- 100%

Hendrix

Cita de: ̿̿̿̿̿̿̿̿̿ en 16 Octubre 2007, 14:26 PM
los añado como servicio y despues pido que se inicien. a la hora de estar escribiendolos por comodidad uso osrloader.

OSRLoader u OSLoader??? si es la primera, puedes pasarme link???ya que no encuentro nada en google... :-\
"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

byebye

#27
aqui te lo dejo. en service start deja demand pq si tiene algun fallo el driver y te da pantallazo te lo dara despues cuando reinicies.

Hendrix

An final lo encontre, pero gracias de todos modos....una cosa, para deprar el driver me baje el Windbg, pero me dice que para depurarlo tienes que estar en otro PC y conectarse a ese PC para depurarlo, no hay otro modo??? :-\ :-\

Muchas gracais  :)
"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

byebye

Citarpero me dice que para depurarlo tienes que estar en otro PC y conectarse a ese PC para depurarlo, no hay otro modo???

No, esta es la unica forma que hay. lo puedes hacer de otra forma, para saber si los resultados que esperas son los correctos. bajas dbgview y usas DbgPrint para tu ver que todo esta correcto. por ejemplo yo uso esto:


     push eax
     push msg3
     call [DbgPrint]


msg3    db 'NTOSKRNL: %Xh',0

para ver si realmente encuentro la base de ntoskrnl, si te fijas DbgPrint es como printf le puedes especificar el formato. te dejo una imagen y veras que aunque no lo depures puedes saber perfectamente que esta pasando.


tb es bueno que configures win para que en caso de darte un pantallazo vuelque toda   la memoria asi despues podras depurar eso y sabras dnd a fallado.

saludos.