Página 1 de 1

[Driver]Protector de proceso

Publicado: 24 Ene 2013, 00:16
por orlando9427
Este es una modificación del código fuente de Hendrix donde explica como hookear ZwOpenProcess, lo publico a modo de aprendizaje. Queda bajo su responsabilidad su uso en maquinas reales, si bien lo probe en mi maquina real con W7 y en virtual con WXP no me hago responsable por BSOD's que puedan surgir.
Lo modifique para que proteja un solo proceso, ahora NADA y repito NADA podrá cerrar ese proceso pues lo estarán cuidando desde el otro lado :3

Para eso primero se necesita un "mensajero" es el que trabaja del lado del usuario se encarga de instalar, ejecutar, mandar el PID a proteger o desproteger, detener y eliminar el driver.

Codigo del driver:

Mostrar/Ocultar

Codigo del mensajero.

Mostrar/Ocultar

Unas capturas...
Imagen

Imagen

Imagen

Imagen

Imagen

Imagen


Descarga de binarios: [Enlace externo eliminado para invitados]

Cualquier duda o pregunta no duden en hacerla.
Saludos!

Re: [Driver]Protector de proceso

Publicado: 24 Ene 2013, 02:34
por jorge705
Wow esto sera de mucha ayuda muchas gracias :)

Re: [Driver]Protector de proceso

Publicado: 24 Ene 2013, 05:20
por KHC
Joya! +1 Gracias por compartirlo!

Re: [Driver]Protector de proceso

Publicado: 25 Ene 2013, 15:01
por orlando9427
Gracias por los comentarios.
Pronto terminare uno mas parecido a un rootkit...

Saludos!

Re: [Driver]Protector de proceso

Publicado: 25 Ene 2013, 17:56
por adwind
Te la jalaste loco :D.

Sabia lo harias :3


Re: [Driver]Protector de proceso

Publicado: 25 Ene 2013, 23:28
por strup
Menudo code tio esta de lujo, una curiosidad, en que lenguajes mas programas?, y por cierto la cancion de tu firma de youtube, es de mis favoritas ,saludos

Re: [Driver]Protector de proceso

Publicado: 26 Ene 2013, 01:15
por orlando9427
@Adwind y aun le falta, aun investigo como restaurar la SSDT para eliminar la poca protección que ofrece el AV en esta situación.

@strup gracias compañero, pues solía programar en VB6, programo respetablemente en Delphi y C, y un poco de plataformas web. Tambien es de mis favoritas, me gusta mucho la batalla de solos.

Saludos!

Re: [Driver]Protector de proceso

Publicado: 26 Ene 2013, 02:32
por strup
orlando9427 escribió:@Adwind y aun le falta, aun investigo como restaurar la SSDT para eliminar la poca protección que ofrece el AV en esta situación.

@strup gracias compañero, pues solía programar en VB6, programo respetablemente en Delphi y C, y un poco de plataformas web. Tambien es de mis favoritas, me gusta mucho la batalla de solos.

Saludos!
OSTIA PUTA! programas en mas lenguajes de lo que pense (en delphi me lo figure ya por un comentario tuyo y por el tema de la programacion de drivers en la seccion delphi)
un saludo

Re: [Driver]Protector de proceso

Publicado: 26 Ene 2013, 17:49
por adwind
Oralando es la Ostia :3.

Re: [Driver]Protector de proceso

Publicado: 27 Ene 2013, 02:56
por $DoC
Buen trabajo Orlando, todo un máquina, si señor


Re: [Driver]Protector de proceso

Publicado: 27 Ene 2013, 06:00
por orlando9427
Gracias aun le falta mucho a este code, pero se convertirá en un rootkit.

Saludos!
PD: Adwind ya tengo todo del WMF solo que aun no encuentro el patron en los XML para agregar la diapo =/

Re: [Driver]Protector de proceso

Publicado: 29 Ene 2013, 15:55
por s7evin
Jolines... no sabes la envidia que me das! :(
Enhorabuena por este magnifico código!!
(la mitad no lo entiendo, no se donde vienen algunas funciones y demás ya que mi nivel de C/C++/WinAPI no es para echar cohetes xD)

Solo (si quieres... jeje) aclárame un par de cosas:

Código: Seleccionar todo

#define SYSTEMSERVICE(_function) KeServiceDescriptorTable.ServiceTableBase[ *(PULONG)((PUCHAR)_funtion+1) ]
#define Block CTL_CODE(FILE_DEVICE_UNKNOWN, 0x00000001, METHOD_BUFFERED, FILE_READ_DATA | FILE_WRITE_DATA)
#define Unblock CTL_CODE(FILE_DEVICE_UNKNOWN, 0x00000002, METHOD_BUFFERED, FILE_READ_DATA | FILE_WRITE_DATA)
Porque se usar #define (macro) en vez de funciones directas? Es algo que nunca entendí xDD

Y después, con que está compilado? Lo intento en DevC++ y me está dando problemas

Saludos, gracias y de nuevo, enhorabuena!! :)

Re: [Driver]Protector de proceso

Publicado: 30 Ene 2013, 02:30
por orlando9427
El uso de macro, desde mi punto de vista, es para ahorrarte lineas de código, en el primer macro no valdría la pena hacer una función con las pocas lineas de código.
Las otras dos lineas son constantes para identificar el tipo de mensaje que se envía desde el modo usuario, en este caso se usará un método con buffers de lectura y escritura (envío y recepción).

Nunca vas a poder compilar un driver en Dev-C++, para eso necesitas descargarte la WDK te recomiendo la 2600 que es para WXP, WVista y W7, ya que la WDK para W8 excluye a WXP además de que los drivers deben de ir firmados digitalmente y bueno eso es un problema. Dentro de la WDK viene la MSDN para Drivers, con todas las estructuras, APIs, métodos legales, etc con su explicación, claro en inglés xD.

Saludos!

Re: [Driver]Protector de proceso

Publicado: 13 Abr 2013, 21:08
por n1kk0
Hola! Disculpen si revivo el post, pero esto funcionaria igual que el programa conocido Hidetoolz si no me equivoco no?
Gracias por el aporte!
HAsta luego.