Buenas estoy desarrollando un keylogger con hooks
que es mas eficiente:
- implementar un timer y cada cierto intervalo de segundos guardar la cadena de caracteres
- o comprobar la longitud de caracteres y si es > x guardar la cadena de caracteres.
Se admiten sugerencias. Un saludo!
sugerencias de que? :P
hook es bueno
Guardar caracteres por bloques de 100 es una buena idea... por supuesto en caso de cierre guardar los caracteres restantes!
no habia entendido :P
tambien que guarde cada cierta accion que suceda y si hay cierre, guardar :)
Cita de: Karcrack en 27 Diciembre 2011, 22:16 PM
Guardar caracteres por bloques de 100 es una buena idea... por supuesto en caso de cierre guardar los caracteres restantes!
Tienes un manual muy bueno con VB6 para desarrollar keylogger con hook, lo estuve mirando, el caso es que como controlas desde la misma aplicación que se a cerrado por un error o por que " alguien" ha matado el proceso.
Con un timer que recoge cada 10 segundos el string funciona de maravilla tb.
Cita de: RHL en 27 Diciembre 2011, 23:08 PM
no habia entendido :P
tambien que guarde cada cierta accion que suceda y si hay cierre, guardar :)
¿A que acciones te refieres? ¿Hacer click con el raton?( estuve pensando algunas acciones pero solo se me ocurrian cuando el usuario aprieta el ENTER o TAB...)
Estoy pensando en realizar el keylogger en ring0,aunque hay poca documentación y me tendre que mirar ASM...
realmente un keylogger en ring 0 es un driver virtual que controla las pulsaciones?¿ o me equivoco? Un saludo compañeros!
Leete este paper, es imprescindible. Enumera todos los metodos de keyloggers conocidos:
http://www.securelist.com/en/analysis/204791931/Keyloggers_How_they_work_and_how_to_detect_them_Part_1
http://www.securelist.com/en/analysis/204792178/Keyloggers_Implementing_keyloggers_in_Windows_Part_Two
Solo podrías saber cuando tu aplicación se cierra por el mensaje WM_QUIT... el mismo que te advierte VB6 en su evento unload... cualquier otro cierre forzoso no podrías interceptarlo.
la del raton seria demasiado creo :S
estaria bien cada vez que presione enter... pero si nunca llegase a presionar enter :P
o tambien que digamos cada vez cambie el foco a otra ventana diferente... eso es mucho mas seguro
Cita de: Karcrack en 28 Diciembre 2011, 09:50 AM
Leete este paper, es imprescindible.
y que lo digas.... :rolleyes:
TNKX
hola
bueno te diré que para la parte de saber si alguien ha matado el proceso e impedirlo,te recomiendo hookear la apis TerminateProcess,donde verificas si el PID del proceso a matar es el tuyo,en caso de ser verdadero no lo matas,si quieres profundizar un poco mas puedes ver como hookear a su semejante ZwTerminateProcess,pero esto ya es un poco mas complicado......
saludos.
Cita de: wachi en 1 Febrero 2012, 05:30 AM
hola
bueno te diré que para la parte de saber si alguien ha matado el proceso e impedirlo,te recomiendo hookear la apis TerminateProcess,donde verificas si el PID del proceso a matar es el tuyo,en caso de ser verdadero no lo matas,si quieres profundizar un poco mas puedes ver como hookear a su semejante ZwTerminateProcess,pero esto ya es un poco mas complicado......
saludos.
Lo de "hookear las APIS" siempre me ha llamado la atención. cuando tenga tiempo me lo miro,y ya casi me hago un rootkit ^^.
:p
ok,bueno me imagino que si estas haciendo un rootkit entonces sabes programar drivers ??? dime si es asi que tengo algunas dudas ...
saludos....
Estoy acabando el keylogger con hooks, cuando acabe intentare hacerlo en ring0 y despues hacer un rootkit sera algo similar. Cuando empiece el proyecto te aviso. Un saludo
Un rootkit no quiere decir que necesariamente esté en ring0... :rolleyes: