Keylogger (Pronunciado: quíloger) o “Keystroke Logging” es un concepto de cualquier herramienta (sea por aplicación o utilizando un accesorio) el cual permite monitorear y almacenar el historial de toda actividad generada mediante el ingreso de comandos por el teclado. Este identifica cual fue el ingreso del usuario y crea una bitácora de cada tecla oprimida en el proceso. Esta bitácora se puede almacenar tanto en un archivo dentro de la misma computadora o enviado a otra computadora utilizando la red. Frecuentemente asociado con actividad de Hackers, estas herramientas pueden ser utilizadas para almacenar las contraseñas ingresadas por el usuario.
Muchos de los keyloggers trabajan en la computadora emulando un servicio, lo que los hacen prácticamente invisible para el usuario. Muchos anti-virus detectan y eliminan estos tipos de programas e implementaciones como el UAC (User Account Control) de Windows no permiten que estos corran automáticamente en la PC sin previa autorización del usuario. Sin embargo, algunos de los keyloggers más eficientes engañan al usuario haciéndose pasar por otro tipo de aplicación o solución.
Otros keyloggers más avanzados analizan la acústica o los campos electromagnéticos para determinar que teclas se oprimieron. Está de más decir que estos mecanismos son utilizados con menos frecuencia por su complejidad.
Ejemplo de una bitácora creada por el keylogger conocido como PyKeyLogger:
Algunas variaciones de estas herramientas son:
- Screen Logging: Captura una imagen de la pantalla.
- Clipboard Logging: Captura toda data que en un momento fue copiada al “clipboard” de la aplicación monitoreada.
- Application Logging: Captura información enviada entre aplicaciones.
- IM Logging: Captura data transmitida por aplicaciones de mensajería tales como MSN y ICQ.
Nota: Gracias a MasterChiefYOYO por las aclaraciones.