Servicio Teclado

17/09/2004 - 12:54 por José | Informe spam
Hola a todos, tengo que hacer un servicio de Windows que funcione a modo de
anti-keylogger( evitar capturas de teclado), como no se como funcionan los
keyloggers os planteo unas hipótesis para ver si me podéis ayudar.

1.- Entiendo que utilizan alguna API para capturar cualquier pulsación del
teclado, además del programa que esta activo en ese momento, ya digo que no
se como lo hacen. Si alguien lo sabe me ayudaría para poder
contrarrestarlos.

2.- Mi idea es poder interceptar el teclado antes de que lo haga el
keylogger y en lugar de enviar sólo la tecla pulsada enviar 4 o 5 mas para
confundir, lo que no se si ese envío es posible o si al enviar esas
pulsaciones extra me volverá a interceptar y se crearía un bucle infinito.

Como resumen os comento que dado que es imposible conocer todos los
keyllogers y su funcionamiento concreto he pensado en interceptar el teclado
y enviar no solo la tecla pulsada sino muchas mas y no siempre en el mismo
orden y numero para confundir y que sea ilegible, evidentemente al programa
activo desde el que se ha pulsado la tecla debería enviar sólo la original y
no las demás, también necesito conocer que programa ha sido el que ha
pulsado la tecla y enviar a ese programa sólo la tecla original mientras que
al resto del sistema y al keylogger entiendo que le llegaran varias
pulsaciones cuando en realidad sólo ha sido pulsada una tecla.

No se si este planteamiento es posible, agradecería cualquier sugerencia.


Un saludo.

José

Preguntas similare

Leer las respuestas

#1 José
17/09/2004 - 12:57 | Informe spam
Se me olvidaba, es para un equipo con Windows XP Profesional SP1 y
proximamente SP2.

Un saludo.

José.
Respuesta Responder a este mensaje
#2 David Díaz
20/09/2004 - 09:27 | Informe spam
Hola a todos, tengo que hacer un servicio de Windows que funcione a modo
de
anti-keylogger( evitar capturas de teclado), como no se como funcionan los
keyloggers os planteo unas hipótesis para ver si me podéis ayudar.



Hola Jose:

Cuando Windows detecta una pulsación de teclado crea un mensaje y lo
transmite a una cadena de hooks, que son procesos que están esperando esos
mensajes. Cada proceso de este tipo recibe el mensaje, lo procesa y se lo
pasa al siguiente proceso. Por lo que yo he visto, estos programas crean un
hook para interceptar esos mensajes. Lo que tu planteas sería crear tu
propio proceso para interceptar el mensaje y distorionarlo, eso hará que el
keylogger no pueda hacer su función correctamente pero tampoco lo hará
ningún otro programa (WORD, VS, juegos, etc...) ya que SIEMPRE recibirán las
pulsaciones de teclas distorsionadas.

Lo único que se me ocurre es recorrer la cadena de hooks, intentar localizar
procesos "dudosos" y sacarlos de la cadena.

Aquí tienes un keylogger en VB que usa esta técnica. En él puedes ver todos
los pormenores en cuanto a la creación de hooks:
http://www.freevbcode.com/ShowCode.asp?IDr8

Y algo más de literatura sobre hooks:
http://www.vbaccelerator.com/home/V...rticle.asp

Suerte.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida