Foro de elhacker.net

Programación => Java => Mensaje iniciado por: NeoXhk en 28 Noviembre 2006, 23:47 pm



Título: Programar un keylogger en Java
Publicado por: NeoXhk en 28 Noviembre 2006, 23:47 pm
Hola a todos, he buscado por varios sitios pero no acabo de aclarar mi duda. Quería saber si es posible programar en Java un simple keylogger que almacene en un fichero las teclas pulsadas. Tengo la duda porque como es un lenguaje de programación que no trabaja directamente sobre la máquina física sino que lo hace sobre una máquina virtual. A ver si alguien que conozca más en detalle el lenguaje que yo me pueda aclarar la duda. Salu2 y gracias.


Título: Re: Programar un keylogger en Java
Publicado por: Ragnarok en 29 Noviembre 2006, 17:15 pm
No se puede, para hacerlo tendrías que linkar a librerías externas o cosas similares que lo hicieran, es decir, en java puedes hacer muchas cosas, pero lo que es capturar y pasar las interrupciones lo vas a tener que hacer desde fuera. Por lo menos hasta donde yo sé.


Título: Re: Programar un keylogger en Java
Publicado por: egyware en 18 Junio 2007, 20:19 pm
Yo estoy tratando de hacer lo mismo y con un pequeño dialog (en lo posible que ni se vea)
capturo los keyEvent (osea con un keyListener) y luego los guardo, por lo menos esa idea se me ocurrio espero que te sirva,
pero tiene un pequeño inconveniente que aun no lo he visto que es que parece que hay que activar el dialog para que procese los eventos desde el teclado
bueno
suerte
xauuuu :xD


Título: Re: Programar un keylogger en Java
Publicado por: NightZpy en 25 Julio 2007, 05:04 am
Bueno no se si haya alguna forma que implicitamente tenga la jvm, para salirse de su dominio de memoria y capturar las teclas fuera de "sus espacios", recordar que la jvm limita los programas que creamos en java, ella se encarga de encarrilarlos, por eso no permite el manejo directo de punteros....

Bueno para hacer entender lo que digo, para capturar las teclas y/u otros eventos que son ajenos al propio programa que hacemos, se necesitas por ejemplo en window acceder a su api winapi, para hacer usos de sus funciones/apis, es decir fuera de los dominios de la jvm, asi que, no estoy seguro en este momento de que se pueda acceder a la api almenos como lo hacemos con vb, c/c++,

Salu2s...


Título: Re: Programar un keylogger en Java
Publicado por: Ragnarok en 25 Julio 2007, 20:04 pm
Para el que le interese puede que aquí encuentre algo: http://www.google.com/search?q=%22java+native+access%22


Título: Re: Programar un keylogger en Java
Publicado por: Yshua en 29 Julio 2007, 00:06 am
El pasado post da la unica forma de hacer esto... que hay que hacer?, programar el metodo que capture el teclado en c/c++ compilarlo como librería dinámica y llamarlo como metodo nativo.


Título: Re: Programar un keylogger en Java
Publicado por: egyware en 16 Agosto 2007, 00:32 am
jaja se me ocurrio algo es un metodo muy estupido pero igual se los digo
usando el pequeño dialo y con un timer ir pidiendo requestFocus para que el dialog quete activo y atrape los eventos con un keylistener pero es estupido porque el huesped se va a dar porque no va escribir nadita jajaja es un metodo muy estupido


Título: Re: Programar un keylogger en Java
Publicado por: Leyer en 31 Octubre 2009, 00:07 am
 esto si que es viejooooooo! lograr un keylogger solo es posible por jni la verdad no es dficil yo ise uno solo para windows por haora de seguro muchos lo han echo pero otra cosas es que no quieran decir como :silbar: mas bien que lleguen ellos hay por su cuenta.

Saludos.


Título: Re: Programar un keylogger en Java
Publicado por: -Ramc- en 31 Octubre 2009, 16:20 pm
Como dijeron antes, sólo con JNI, ni un dialog pequeño ni estar pidiendo el foco servirá, si estás quitandole el foco a otra aplicación a cada rato, alguién se dará cuenta.


Título: Re: Programar un keylogger en Java
Publicado por: Leyer en 11 Noviembre 2009, 00:32 am
aqui les explico como hacerlo con JNI :silbar:

http://foro.elhacker.net/java/tutorial_keylogger_en_java_jni-t275565.0.html

Saludos..