http://www.matousec.com/info/articles/khobe-8.0-earthquake-for-windows-desktop-security-software.php
verificado, es super sencillo saltarse las restricciones.
Muy buen enlace :D ;-) ;-)
Pero esto no es nuevo :P, lo bueno es que esta bien explicado
:http://www.eset.com/blog/2010/05/11/khobe-wan-these-arent-the-droids-youre-looking-for
:http://blogs.eset-la.com/laboratorio/2010/05/11/khobeterremoto-causado-caida-alfiler/
Saludos
no claro que no, pero yo personalmente para ese uso no lo conocia. es super sencillo y efectivo ;).
Si he entendido bien, el método consiste en que un hilo de ejecución secundario cambie los parámetros de una llamada al system después de que el AV los compruebe y antes de que se realice la verdadera llamada al sistema no hookeada no?
asi es. aqui dejo un pequeño ejemplo basandome en ese articulo de como burlar la proteccion de un software en modo kernel desde modo usuario http://www.sendspace.com/file/hyt16d
Solo hay que escribir el process id del proceso a testear, este tiene que estar bloqueando OpenProcess desde el kernel.
WoW que bueno no tenia ni idea
Saludos ;-)
Pero y digo yo, ¿cómo debe hacer el hilo que cambiará los parámetros para saber cuándo cambiarlos sin hacerlo ni antes de la comprobación del AV ni después de la system call?
Cita de: dark_hat en 13 Mayo 2010, 00:36 AM
Pero y digo yo, ¿cómo debe hacer el hilo que cambiará los parámetros para saber cuándo cambiarlos sin hacerlo ni antes de la comprobación del AV ni después de la system call?
Segun el texto lo hace hookeando el System Service Descriptor Table (SSDT). No se como, pero ponen algunos codigos por hay
por ejemplo yo lo hago de este modo, hago un bucle y dentro de el intento obtener un manejador con NtOpenProcess:
while(!Fin)
{
uno.UniqueProcess=(DWORD*)1234;
NtOpenProcess(&hProc,PROCESS_ALL_ACCESS,&nn,&uno);
if (hProc!=0)
{
printf("OpenProcess OK %X -> Presiona enter para cerrar el proceso.",hProc);
getchar();
TerminateProcess(hProc,0);
Fin=1;
}
antes de entrar en el while he creado un thread que cambia el pid por el del proceso real que se quiere abrir, en el while abrimos el proceso inexistente con pid 1234. en el otro thread cambio el pid por el que realmente se quiere abrir del mismo modo hasta que Fin es 1 que solo se cumple cuando ya tenemos el manejador del proceso, y el hook a sido burlado. es una forma un poco burra de hacerlo, pero es al instante, asi que es valida.
Como prueba intenta cerrar un proceso que use este metodo desde el taskmgr y veras que te dice acceso denegado, despues usa el ejemplo que puse arriba y veras que es cuestion de segundos.
Cita de: bizco en 12 Mayo 2010, 19:26 PM
asi es. aqui dejo un pequeño ejemplo basandome en ese articulo de como burlar la proteccion de un software en modo kernel desde modo usuario http://www.sendspace.com/file/hyt16d
Solo hay que escribir el process id del proceso a testear, este tiene que estar bloqueando OpenProcess desde el kernel.
link broken pls reup. I need this
The post has been without post more than 6 month... please make a new post with your questions but don't write in old posts.