Acción de registrar las teclas pulsadas en un teclado
El registro de pulsaciones de teclas , a menudo denominado keylogging o captura de teclado , es la acción de registrar (escribir) las teclas pulsadas en un teclado , [1] [2] normalmente de forma encubierta, de modo que una persona que usa el teclado no se da cuenta de que sus acciones están siendo monitoreadas. La persona que opera el programa de registro puede recuperar los datos. Un registrador de pulsaciones de teclas o keylogger puede ser software o hardware .
Si bien los programas en sí son legales, [3] y muchos están diseñados para permitir a los empleadores supervisar el uso de sus computadoras, los keyloggers se utilizan con mayor frecuencia para robar contraseñas y otra información confidencial . [4] [5] El registro de pulsaciones de teclas también se puede utilizar para monitorear las actividades de los niños en las escuelas o en el hogar y por parte de los funcionarios encargados de hacer cumplir la ley para investigar el uso malicioso. [6]
A mediados de la década de 1970, la Unión Soviética desarrolló e implementó un keylogger de hardware dirigido a las máquinas de escribir . Denominado "error selectric", medía los movimientos del cabezal de impresión de las máquinas de escribir IBM Selectric a través de influencias sutiles en el campo magnético regional causado por la rotación y los movimientos del cabezal de impresión. [8] Perry Kivolowitz escribió uno de los primeros keyloggers y lo publicó en el grupo de noticias de Usenet net.unix-wizards, net.sources el 17 de noviembre de 1983. [9] La publicación parece ser un factor motivador para restringir el acceso a /dev/kmemlos sistemas Unix . El programa en modo usuario funcionaba localizando y volcando listas de caracteres (clientes) a medida que se ensamblaban en el núcleo de Unix.
Las embajadas soviéticas utilizaban máquinas de escribir manuales, en lugar de eléctricas, para la información clasificada , aparentemente porque son inmunes a esos errores. [12]
En 2013, los servicios especiales rusos todavía utilizan máquinas de escribir. [11] [13] [14]
Aplicación del keylogger
Keyloggers basados en software
Un keylogger basado en software es un programa informático diseñado para registrar cualquier entrada del teclado. [15] Los keyloggers se utilizan en organizaciones de TI para solucionar problemas técnicos con computadoras y redes comerciales. Las familias y los empresarios utilizan keyloggers legalmente para monitorear el uso de la red sin el conocimiento directo de sus usuarios. Microsoft declaró públicamente que Windows 10 tiene un keylogger incorporado en su versión final "para mejorar los servicios de mecanografía y escritura". [16] Sin embargo, personas malintencionadas pueden usar keyloggers en computadoras públicas para robar contraseñas o información de tarjetas de crédito. La mayoría de los keyloggers no se detienen con el cifrado HTTPS porque eso solo protege los datos en tránsito entre computadoras; los keyloggers basados en software se ejecutan en la computadora del usuario afectado, leyendo las entradas del teclado directamente mientras el usuario escribe.
Desde un punto de vista técnico, existen varias categorías:
Basado en hipervisor : teóricamente, el keylogger puede residir en un hipervisor de malware que se ejecuta debajo del sistema operativo, que permanece intacto. Se convierte en una máquina virtual . Blue Pill es un ejemplo conceptual.
Basado en el núcleo : un programa en la máquina obtiene acceso de root para ocultarse en el sistema operativo e intercepta las pulsaciones de teclas que pasan a través del núcleo. Este método es difícil tanto de escribir como de combatir. Dichos keyloggers residen en el nivel del núcleo , lo que los hace difíciles de detectar, especialmente para aplicaciones en modo usuario que no tienen acceso de root. Con frecuencia se implementan como rootkits que subvierten el núcleo del sistema operativo para obtener acceso no autorizado al hardware. Esto los hace muy poderosos. Un keylogger que utilice este método puede actuar como un controlador de dispositivo de teclado , por ejemplo, y así obtener acceso a cualquier información tecleada en el teclado a medida que pasa al sistema operativo.
Basados en API : estos keyloggers conectan las API del teclado dentro de una aplicación en ejecución. El keylogger registra los eventos de pulsación de teclas como si fueran una parte normal de la aplicación en lugar de malware. El keylogger recibe un evento cada vez que el usuario presiona o suelta una tecla. El keylogger simplemente lo registra.
Las API de Windows como GetAsyncKeyState(), GetForegroundWindow(), etc. se utilizan para sondear el estado del teclado o suscribirse a eventos del teclado. [17] Un ejemplo más reciente [ ¿cuándo? ] simplemente sondea el BIOS en busca de PIN de autenticación previos al arranque que no se hayan borrado de la memoria. [18]
Basado en captura de formularios : los keyloggers basados en captura de formularios registran los envíos de formularios web mediante el registro de los datos del formulario en los eventos de envío. Esto sucede cuando el usuario completa un formulario y lo envía, generalmente haciendo clic en un botón o presionando Enter. Este tipo de keylogger registra los datos del formulario antes de que se transmitan a través de Internet.
Basado en JavaScript: se inyecta una etiqueta de script malicioso en una página web específica y se escuchan eventos clave como onKeyUp(). Los scripts se pueden inyectar a través de una variedad de métodos, incluidos los scripts entre sitios , el man-in-the-browser , el man-in-the-middle o una vulneración del sitio web remoto. [19]
Basado en inyección de memoria : los keyloggers basados en inyección de memoria ( MitB ) realizan su función de registro modificando las tablas de memoria asociadas con el navegador y otras funciones del sistema. Al aplicar parches a las tablas de memoria o inyectar directamente en la memoria, los autores de malware pueden utilizar esta técnica para eludir el UAC (Control de cuentas de usuario) de Windows. Los troyanos Zeus y SpyEye utilizan exclusivamente este método. [20] Los sistemas que no son Windows tienen mecanismos de protección que permiten el acceso a datos registrados localmente desde una ubicación remota. [ Aclaración necesaria ] La comunicación remota se puede lograr cuando se utiliza uno de estos métodos:
Los datos se cargan en un sitio web, una base de datos o un servidor FTP .
Los datos se transmiten de forma inalámbrica mediante un sistema de hardware conectado.
El software permite un inicio de sesión remoto a la máquina local desde Internet o la red local, para los registros de datos almacenados en la máquina de destino.
Registro de pulsaciones de teclas en la investigación del proceso de escritura
Desde 2006, el registro de pulsaciones de teclas ha sido un método de investigación establecido para el estudio de los procesos de escritura. [21] [22] Se han desarrollado diferentes programas para recopilar datos de procesos en línea de actividades de escritura, [23] incluidos Inputlog , Scriptlog, Translog y GGXLog.
El registro de pulsaciones de teclas se utiliza legítimamente como un instrumento de investigación adecuado en varios contextos de escritura. Entre ellos se incluyen estudios sobre procesos cognitivos de escritura, que incluyen
descripciones de estrategias de escritura; el desarrollo de la escritura de niños (con y sin dificultades de escritura),
ortografía,
escritura en primera y segunda lengua, y
áreas de competencias especializadas como traducción y subtitulado.
El registro de pulsaciones de teclas se puede utilizar para investigar la escritura, en particular. También se puede integrar en ámbitos educativos para el aprendizaje de una segunda lengua, habilidades de programación y habilidades de mecanografía.
Características relacionadas
Los keyloggers de software pueden ampliarse con funciones que capturan información del usuario sin depender de las pulsaciones de teclas del teclado como única entrada. Algunas de estas funciones incluyen:
Registro del portapapeles. El programa puede capturar todo lo que se haya copiado al portapapeles .
Registro de pantalla. Las capturas de pantalla se toman para capturar información basada en gráficos. Las aplicaciones con capacidades de registro de pantalla pueden tomar capturas de pantalla de toda la pantalla, de una sola aplicación o incluso solo alrededor del cursor del mouse. Pueden tomar estas capturas de pantalla periódicamente o en respuesta a los comportamientos del usuario (por ejemplo, cuando un usuario hace clic con el mouse). El registro de pantalla se puede utilizar para capturar datos ingresados con un teclado en pantalla.
Captura programática del texto en un control . La API de Microsoft Windows permite a los programas solicitar el texto 'valor' en algunos controles. Esto significa que se pueden capturar algunas contraseñas, incluso si están ocultas detrás de máscaras de contraseñas (normalmente asteriscos). [24]
La grabación de cada programa/carpeta/ventana abierta, incluida una captura de pantalla de cada sitio web visitado.
Los keyloggers basados en hardware no dependen de la instalación de ningún software, ya que existen a nivel de hardware en un sistema informático.
Basado en firmware: el firmware de nivel BIOS que maneja los eventos del teclado se puede modificar para registrar estos eventos a medida que se procesan. Se requiere acceso físico y/o de nivel raíz a la máquina, y el software cargado en el BIOS debe crearse para el hardware específico en el que se ejecutará. [25]
Hardware del teclado: Los keyloggers de hardware se utilizan para registrar las pulsaciones de teclas utilizando un circuito de hardware que se conecta en algún lugar entre el teclado de la computadora y la computadora, generalmente en línea con el conector del cable del teclado. También hay keyloggers de hardware basados en conectores USB , así como para computadoras portátiles (la tarjeta Mini-PCI se conecta a la ranura de expansión de una computadora portátil). Se pueden instalar o incorporar implementaciones más discretas en teclados estándar para que ningún dispositivo sea visible en el cable externo. Ambos tipos registran toda la actividad del teclado en su memoria interna , a la que se puede acceder posteriormente, por ejemplo, escribiendo una secuencia de teclas secreta. Los keyloggers de hardware no requieren que se instale ningún software en la computadora del usuario de destino, por lo tanto, no interfieren con el funcionamiento de la computadora y es menos probable que sean detectados por el software que se ejecuta en ella. Sin embargo, su presencia física puede detectarse si, por ejemplo, se instala fuera de la carcasa como un dispositivo en línea entre la computadora y el teclado. Algunas de estas implementaciones se pueden controlar y monitorear de forma remota utilizando un estándar de comunicación inalámbrica. [26]
Rastreadores de teclados y ratones inalámbricos: estos rastreadores pasivos recopilan paquetes de datos que se transfieren desde un teclado inalámbrico y su receptor. Como se puede utilizar cifrado para proteger las comunicaciones inalámbricas entre los dos dispositivos, es posible que sea necesario descifrarlo de antemano para poder leer las transmisiones. En algunos casos, esto permite que un atacante escriba comandos arbitrarios en el ordenador de la víctima. [27]
Teclados superpuestos: se sabe que los delincuentes utilizan teclados superpuestos en los cajeros automáticos para capturar los PIN de las personas. Cada pulsación de tecla queda registrada en el teclado del cajero automático, así como en el teclado numérico del delincuente que se coloca sobre él. El dispositivo está diseñado para parecer una parte integrada de la máquina, de modo que los clientes del banco no se percaten de su presencia. [28]
Keyloggers acústicos: el criptoanálisis acústico se puede utilizar para monitorear el sonido creado por alguien que escribe en una computadora. Cada tecla del teclado produce una firma acústica sutilmente diferente cuando se presiona. Entonces es posible identificar qué firma de pulsación de tecla se relaciona con qué carácter del teclado mediante métodos estadísticos como el análisis de frecuencia . La frecuencia de repetición de firmas acústicas de pulsaciones de teclas similares, los tiempos entre diferentes pulsaciones del teclado y otra información de contexto como el idioma probable en el que el usuario está escribiendo se utilizan en este análisis para asignar sonidos a letras. [29] Se requiere una grabación bastante larga (1000 o más pulsaciones de teclas) para que se recopile una muestra lo suficientemente grande. [30]
Emisiones electromagnéticas: Es posible capturar las emisiones electromagnéticas de un teclado con cable desde una distancia de hasta 20 metros (66 pies), sin estar físicamente conectado a él. [31] En 2009, investigadores suizos probaron 11 teclados USB , PS/2 y de computadora portátil diferentes en una cámara semianecoica y encontraron que todos eran vulnerables, principalmente debido al costo prohibitivo de agregar blindaje durante la fabricación. [32] Los investigadores utilizaron un receptor de banda ancha para sintonizar la frecuencia específica de las emisiones irradiadas por los teclados.
Vigilancia óptica: La vigilancia óptica, si bien no es un keylogger en el sentido clásico, es, no obstante, un método que se puede utilizar para capturar contraseñas o PIN. Una cámara colocada estratégicamente, como una cámara de vigilancia oculta en un cajero automático , puede permitir a un delincuente observar cómo se ingresa un PIN o una contraseña. [33] [34]
Pruebas físicas: en el caso de un teclado que se utiliza únicamente para introducir un código de seguridad, las teclas que se utilizan realmente tendrán evidencia de su uso a partir de numerosas huellas dactilares. Si se conocen los cuatro dígitos en cuestión, una contraseña de cuatro dígitos se reduce de 10.000 posibilidades a sólo 24 (10 4 frente a 4! [ factorial de 4]). Estas podrían utilizarse en ocasiones distintas para un "ataque de fuerza bruta" manual.
Sensores de teléfonos inteligentes : Los investigadores han demostrado que es posible capturar las pulsaciones de teclas de teclados de computadoras cercanas utilizando únicamente el acelerómetro que se encuentra en los teléfonos inteligentes. [35] El ataque se hace posible colocando un teléfono inteligente cerca de un teclado en el mismo escritorio. El acelerómetro del teléfono inteligente puede detectar las vibraciones creadas al escribir en el teclado y luego traducir esta señal bruta del acelerómetro en oraciones legibles con una precisión de hasta el 80 por ciento. La técnica implica trabajar con probabilidades detectando pares de pulsaciones de teclas, en lugar de teclas individuales. Modela "eventos de teclado" en pares y luego determina si el par de teclas presionadas está en el lado izquierdo o derecho del teclado y si están juntas o alejadas en el teclado QWERTY . Una vez que ha calculado esto, compara los resultados con un diccionario precargado donde cada palabra se ha desglosado de la misma manera. [36] También se ha demostrado que técnicas similares son eficaces para capturar pulsaciones de teclas en teclados de pantalla táctil [37] [38] [39] , aunque en algunos casos se combinan con un giroscopio [40] [41] o con el sensor de luz ambiental. [42]
Registradores de pulsaciones corporales: los registradores de pulsaciones corporales rastrean y analizan los movimientos corporales para determinar qué teclas se han pulsado. El atacante debe estar familiarizado con la disposición de las teclas del teclado rastreado para correlacionar los movimientos corporales con la posición de las teclas, aunque con una muestra lo suficientemente grande esto se puede deducir. El seguimiento de las señales audibles de la interfaz de usuario (por ejemplo, un sonido que el dispositivo produce para informar al usuario de que se ha registrado una pulsación de tecla) puede reducir la complejidad de los algoritmos de registro de pulsaciones corporales, ya que marca el momento en el que se ha pulsado una tecla. [43]
Agrietamiento
Escribir aplicaciones de software sencillas para registrar las pulsaciones de teclas puede ser una tarea trivial y, como cualquier programa informático malicioso, puede distribuirse como un troyano o como parte de un virus . Sin embargo, lo que no es trivial para un atacante es instalar un registrador de pulsaciones de teclas encubierto sin que lo detecten y descargar datos que se han registrado sin que se pueda rastrearlos. Un atacante que se conecta manualmente a una máquina host para descargar las pulsaciones de teclas registradas corre el riesgo de ser rastreado. Un troyano que envía datos registrados de las pulsaciones de teclas a una dirección de correo electrónico o dirección IP fija corre el riesgo de exponer al atacante.
Troyanos
Los investigadores Adam Young y Moti Yung analizaron varios métodos para enviar registros de pulsaciones de teclas. Presentaron un ataque de robo de contraseñas que se puede negar, en el que el troyano de registro de pulsaciones de teclas se instala mediante un virus o un gusano . Un atacante que es atrapado con el virus o el gusano puede afirmar que es una víctima. El criptotroyano encripta asimétricamente los pares de nombre de usuario/contraseña robados utilizando la clave pública del autor del troyano y difunde de forma encubierta el texto cifrado resultante . Mencionaron que el texto cifrado se puede codificar esteganográficamente y publicar en un tablón de anuncios público como Usenet . [44] [45]
Uso por parte de la policía
En 2000, el FBI utilizó FlashCrest iSpy para obtener la contraseña PGP de Nicodemo Scarfo, Jr. , hijo del jefe de la mafia Nicodemo Scarfo . [46]
También en 2000, el FBI atrajo a dos presuntos cibercriminales rusos a los EE. UU. en una elaborada artimaña y capturó sus nombres de usuario y contraseñas con un keylogger que se instaló de forma encubierta en una máquina que usaban para acceder a sus computadoras en Rusia . Luego, el FBI utilizó estas credenciales para obtener acceso a las computadoras de los sospechosos en Rusia para obtener evidencia para procesarlos. [47]
Contramedidas
La eficacia de las contramedidas varía porque los keyloggers utilizan una variedad de técnicas para capturar datos y la contramedida debe ser efectiva contra la técnica de captura de datos en particular. En el caso del keylogger de Windows 10 de Microsoft, cambiar ciertas configuraciones de privacidad puede deshabilitarlo. [48] Un teclado en pantalla será efectivo contra los keyloggers de hardware; la transparencia [ aclaración necesaria ] derrotará a algunos, pero no a todos, los keyloggers de pantalla. Una aplicación anti-spyware que solo pueda deshabilitar keyloggers basados en ganchos será ineficaz contra keyloggers basados en kernel.
Los autores de programas keylogger pueden actualizar el código de sus programas para adaptarlos a las contramedidas que han demostrado ser efectivas contra ellos.
Anti-keyloggers
Un anti-keylogger es un software diseñado específicamente para detectar keyloggers en un ordenador, que normalmente compara todos los archivos del ordenador con una base de datos de keyloggers, buscando similitudes que puedan indicar la presencia de un keylogger oculto. Como los anti-keyloggers han sido diseñados específicamente para detectar keyloggers, tienen el potencial de ser más eficaces que el software antivirus convencional; algunos programas antivirus no consideran que los keyloggers sean malware, ya que en determinadas circunstancias un keylogger puede considerarse un software legítimo. [49]
CD/USB en vivo
Reiniciar el equipo mediante un Live CD o un Live USB protegido contra escritura es una posible medida contra los keyloggers de software si el CD está limpio de malware y el sistema operativo que contiene está protegido y tiene todos los parches instalados para que no se infecte tan pronto como se inicia. Arrancar un sistema operativo diferente no afecta el uso de un keylogger basado en hardware o BIOS.
Programas anti-spyware / antivirus
Muchas aplicaciones anti-spyware pueden detectar algunos keyloggers basados en software y ponerlos en cuarentena, deshabilitarlos o eliminarlos. Sin embargo, debido a que muchos programas keyloggers son programas legítimos en algunas circunstancias, los anti-spyware a menudo no etiquetan a los programas keyloggers como spyware o virus. Estas aplicaciones pueden detectar keyloggers basados en software basándose en patrones en código ejecutable , heurísticas y comportamientos de keylogger (como el uso de ganchos y ciertas API ).
Ninguna aplicación anti-spyware basada en software puede ser 100% efectiva contra todos los keyloggers. [50] Los anti-spyware basados en software no pueden derrotar a los keyloggers que no son de software (por ejemplo, los keyloggers de hardware conectados a los teclados siempre recibirán las pulsaciones de teclas antes que cualquier aplicación anti-spyware basada en software).
La técnica particular que utilice la aplicación anti-spyware influirá en su eficacia potencial contra los keyloggers de software. Como regla general, las aplicaciones anti-spyware con mayores privilegios vencerán a los keyloggers con menores privilegios. Por ejemplo, una aplicación anti-spyware basada en hooks no puede vencer a un keylogger basado en kernel (ya que el keylogger recibirá los mensajes de pulsación de teclas antes que la aplicación anti-spyware), pero podría vencer a los keyloggers basados en hooks y API.
Monitores de red
Los monitores de red (también conocidos como firewalls inversos) se pueden utilizar para alertar al usuario cuando una aplicación intenta establecer una conexión de red. Esto le da al usuario la oportunidad de evitar que el keylogger " llame a casa " con la información que escribe.
Programas de llenado automático de formularios
Los programas de llenado automático de formularios pueden evitar el registro de pulsaciones de teclas al eliminar el requisito de que el usuario escriba sus datos personales y contraseñas con el teclado. Los programas de llenado automático de formularios están diseñados principalmente para que los navegadores web rellenen las páginas de pago e inicien la sesión de los usuarios en sus cuentas. Una vez que se ha introducido la información de la cuenta y de la tarjeta de crédito del usuario en el programa, se introducirá automáticamente en los formularios sin necesidad de utilizar nunca el teclado ni el portapapeles , lo que reduce la posibilidad de que se registren datos privados. Sin embargo, alguien con acceso físico a la máquina puede seguir instalando software que pueda interceptar esta información en otra parte del sistema operativo o mientras se encuentra en tránsito en la red. ( La seguridad de la capa de transporte (TLS) reduce el riesgo de que los datos en tránsito puedan ser interceptados por rastreadores de red y herramientas proxy ).
Contraseñas de un solo uso (OTP)
El uso de contraseñas de un solo uso puede evitar el acceso no autorizado a una cuenta cuyos datos de inicio de sesión han sido expuestos a un atacante a través de un keylogger, ya que cada contraseña se invalida tan pronto como se utiliza. Esta solución puede ser útil para alguien que utiliza un ordenador público. Sin embargo, un atacante que tiene control remoto sobre un ordenador de este tipo puede simplemente esperar a que la víctima introduzca sus credenciales antes de realizar transacciones no autorizadas en su nombre mientras su sesión esté activa.
Otra forma habitual de proteger los códigos de acceso de ser robados por los registradores de pulsaciones de teclas es pedir a los usuarios que proporcionen algunos caracteres seleccionados al azar de su código de autenticación. Por ejemplo, se les puede pedir que introduzcan el segundo, quinto y octavo carácter. Incluso si alguien está observando al usuario o utilizando un registrador de pulsaciones de teclas, solo obtendría algunos caracteres del código sin saber sus posiciones. [51]
Tokens de seguridad
El uso de tarjetas inteligentes u otros tokens de seguridad puede mejorar la seguridad contra ataques de repetición en caso de un ataque de keylogging exitoso, ya que el acceso a información protegida requeriría tanto el token de seguridad (hardware) como la contraseña/frase de contraseña apropiada. Conocer las pulsaciones de teclas, las acciones del ratón, la pantalla, el portapapeles, etc. utilizadas en una computadora no ayudará posteriormente a un atacante a obtener acceso al recurso protegido. Algunos tokens de seguridad funcionan como un tipo de sistema de contraseña de un solo uso asistido por hardware, y otros implementan una autenticación criptográfica de desafío-respuesta , que puede mejorar la seguridad de una manera conceptualmente similar a las contraseñas de un solo uso. Los lectores de tarjetas inteligentes y sus teclados asociados para la entrada de PIN pueden ser vulnerables al registro de pulsaciones de teclas a través de un llamado ataque de cadena de suministro [52] donde un atacante sustituye el hardware del lector de tarjetas/entrada de PIN por uno que registra el PIN del usuario.
Teclados en pantalla
La mayoría de los teclados en pantalla (como el teclado en pantalla que viene con Windows XP ) envían mensajes de eventos de teclado normales al programa de destino externo para escribir texto. Los registradores de teclas de software pueden registrar estos caracteres escritos enviados de un programa a otro. [53]
Software de interferencia de pulsaciones de teclas
También hay disponible software de interferencia de pulsaciones de teclas. [54]
Estos programas intentan engañar a los keyloggers introduciendo pulsaciones de teclas aleatorias, aunque esto simplemente hace que el keylogger registre más información de la que necesita. Un atacante tiene la tarea de extraer las pulsaciones de teclas de interés; la seguridad de este mecanismo, específicamente qué tan bien resiste el criptoanálisis , no está clara.
Reconocimiento de voz
De manera similar a los teclados en pantalla, el software de conversión de voz a texto también se puede utilizar contra los keyloggers, ya que no implica escribir ni mover el ratón. El punto más débil del uso de software de reconocimiento de voz puede ser la forma en que el software envía el texto reconocido al software de destino después de que se haya procesado el habla del usuario.
Reconocimiento de escritura a mano y gestos del ratón
Muchos PDA y, últimamente, tabletas PC ya pueden convertir los movimientos del lápiz (también llamado stylus) en sus pantallas táctiles en texto comprensible para computadora con éxito. Los gestos del mouse utilizan este principio al utilizar movimientos del mouse en lugar de un stylus. Los programas de gestos del mouse convierten estos trazos en acciones definibles por el usuario, como escribir texto. De manera similar, las tabletas gráficas y los lápices ópticos se pueden utilizar para ingresar estos gestos, sin embargo, estos son cada vez menos comunes. [ ¿plazo? ]
La misma debilidad potencial del reconocimiento de voz se aplica también a esta técnica.
Expansores/grabadores de macros
Con la ayuda de muchos programas, un texto aparentemente sin sentido se puede ampliar a un texto con sentido y, la mayoría de las veces, de forma sensible al contexto; por ejemplo, "en.wikipedia.org" se puede ampliar cuando una ventana del navegador web tiene el foco. La mayor debilidad de esta técnica es que estos programas envían sus pulsaciones de teclas directamente al programa de destino. Sin embargo, esto se puede superar utilizando la técnica de "alternar" que se describe a continuación, es decir, enviar clics del ratón a áreas no reactivas del programa de destino, enviar teclas sin sentido, enviar otro clic del ratón al área de destino (por ejemplo, el campo de contraseña) y alternar entre ambos.
Escritura engañosa
Alternar entre escribir las credenciales de inicio de sesión y escribir caracteres en algún otro lugar de la ventana de enfoque [55] puede hacer que un keylogger registre más información de la que necesita, pero un atacante podría filtrarla fácilmente. De manera similar, un usuario puede mover el cursor usando el mouse mientras escribe, lo que hace que las pulsaciones de teclas registradas estén en el orden incorrecto, por ejemplo, al escribir una contraseña comenzando con la última letra y luego usar el mouse para mover el cursor para cada letra subsiguiente. Por último, alguien también puede usar menús contextuales para eliminar, cortar, copiar y pegar partes del texto escrito sin usar el teclado. Un atacante que puede capturar solo partes de una contraseña tendrá un espacio de clave más grande para atacar si elige ejecutar un ataque de fuerza bruta .
Otra técnica muy similar utiliza el hecho de que cualquier parte de texto seleccionada se reemplaza por la siguiente tecla que se teclee. Por ejemplo, si la contraseña es "secret", se podría teclear "s" y luego algunas teclas ficticias "asdf". Estos caracteres ficticios se podrían seleccionar con el ratón y teclear el siguiente carácter de la contraseña "e", que reemplaza a los caracteres ficticios "asdf".
Estas técnicas suponen incorrectamente que el software de registro de pulsaciones de teclas no puede supervisar directamente el portapapeles, el texto seleccionado en un formulario o tomar una captura de pantalla cada vez que se pulsa una tecla o se hace clic con el ratón. Sin embargo, pueden ser eficaces contra algunos keyloggers de hardware.
^ Nyang, DaeHun; Mohaisen, Aziz; Kang, Jeonil (1 de noviembre de 2014). "Protocolos de autenticación visual resistentes al registro de teclas". IEEE Transactions on Mobile Computing . 13 (11): 2566–2579. doi :10.1109/TMC.2014.2307331. ISSN 1536-1233. S2CID 8161528.
^ Conijn, Rianne; Cocinera, Cristina; van Zaanen, Menno; Van Waes, Luuk (24 de agosto de 2021). "Predicción temprana de la calidad de la escritura mediante el registro de pulsaciones de teclas". Revista Internacional de Inteligencia Artificial en Educación . 32 (4): 835–866. doi : 10.1007/s40593-021-00268-w . hdl : 10067/1801420151162165141 . ISSN 1560-4292. S2CID 238703970.
^ Uso de productos de software legales para la monitorización de ordenadores, keylogger.org
^ "Keylogger". Diccionarios Oxford. Archivado desde el original el 11 de septiembre de 2013. Consultado el 3 de agosto de 2013 .
^ Keyloggers: cómo funcionan y cómo detectarlos (Parte 1), Secure List , "Hoy en día, los keyloggers se utilizan principalmente para robar datos de los usuarios relacionados con varios sistemas de pago en línea, y los creadores de virus están constantemente escribiendo nuevos troyanos keyloggers para este mismo propósito".
^ Rai, Swarnima; Choubey, Vaaruni; Suryansh; Garg, Puneet (8 de julio de 2022). "Una revisión sistemática del cifrado y el registro de teclas para la seguridad de los sistemas informáticos". Quinta Conferencia Internacional sobre Inteligencia Computacional y Tecnologías de la Comunicación (CCICT) de 2022. IEEE. págs. 157–163. doi :10.1109/CCiCT56684.2022.00039. ISBN978-1-6654-7224-1. Número de identificación del sujeto 252849669.
^ Stefan, Deian, Xiaokui Shu y Danfeng Daphne Yao. "Robustez de la biometría basada en la dinámica de pulsaciones de teclas frente a falsificaciones sintéticas". Computadoras y seguridad 31.1 (2012): 109-121.
^ "Error eléctrico".
^ "Archivos de Security Digest" . Consultado el 22 de noviembre de 2009 .
^ "Los espías soviéticos interceptaron las primeras máquinas de escribir electrónicas del mundo". qccglobal.com . Archivado desde el original el 20 de diciembre de 2013 . Consultado el 20 de diciembre de 2013 .
^ por Geoffrey Ingersoll. "Rusia recurre a las máquinas de escribir para protegerse del ciberespionaje". 2013.
^ por Sharon A. Maneki. "Aprendiendo del enemigo: el proyecto GUNMAN" Archivado el 3 de diciembre de 2017 en Wayback Machine . 2012.
^ Agence France-Presse, Associated Press (13 de julio de 2013). "Se buscan 20 máquinas de escribir eléctricas para Rusia para evitar filtraciones". inquirer.net .
^
Anna Arutunyan. "La agencia de seguridad rusa comprará máquinas de escribir para evitar la vigilancia" Archivado el 21 de diciembre de 2013 en Wayback Machine .
^ "¿Qué es un Keylogger?". Herramientas para PC.
^ Caleb Chen (20 de marzo de 2017). "Microsoft Windows 10 tiene un keylogger habilitado de manera predeterminada. Aquí se explica cómo deshabilitarlo".
^ "La evolución de los bots maliciosos de IRC" (PDF) . Symantec . 2005-11-26: 23–24. Archivado desde el original (PDF) el 15 de marzo de 2006 . Consultado el 25 de marzo de 2011 .{{cite journal}}: Requiere citar revista |journal=( ayuda )
^ Jonathan Brossard (3 de septiembre de 2008). "Evitar las contraseñas de autenticación previa al arranque mediante la instrumentación del búfer del teclado del BIOS (ataques prácticos de bajo nivel contra el software de autenticación previa al arranque x86)" (PDF) . www.ivizsecurity.com. Archivado desde el original (PDF) el 13 de septiembre de 2008. Consultado el 23 de septiembre de 2008 .{{cite journal}}: Requiere citar revista |journal=( ayuda )
^ "Keylogger basado en la Web utilizado para robar datos de tarjetas de crédito de sitios populares". Threatpost | La primera parada para noticias de seguridad . 2016-10-06 . Consultado el 2017-01-24 .
^ "SpyEye ataca a los usuarios de Opera y Google Chrome". Krebs on Security . Consultado el 26 de abril de 2011 .
^ KPH Sullivan y E. Lindgren (Eds., 2006), Estudios sobre la escritura: vol. 18. Registro de pulsaciones de teclas y escritura por computadora: métodos y aplicaciones. Oxford: Elsevier.
^ VW Berninger (Ed., 2012), Contribuciones pasadas, presentes y futuras de la investigación sobre la escritura cognitiva a la psicología cognitiva. Nueva York/Sussex: Taylor & Francis. ISBN 9781848729636
^ Vincentas (11 de julio de 2013). "Registro de pulsaciones de teclas en SpyWareLoop.com". Spyware Loop . Archivado desde el original el 7 de diciembre de 2013. Consultado el 27 de julio de 2013 .
^ Microsoft. "EM_GETLINE Message()". Microsoft . Consultado el 15 de julio de 2009 .
^ "Hackeo del teclado de Apple". Sociedad Digital. Archivado desde el original el 26 de agosto de 2009. Consultado el 9 de junio de 2011 .
^ "Eliminación de keylogger". SpyReveal Anti Keylogger. Archivado desde el original el 29 de abril de 2011. Consultado el 25 de abril de 2011 .
^ "Eliminación de keylogger". SpyReveal Anti Keylogger . Consultado el 26 de febrero de 2016 .
^ Jeremy Kirk (16 de diciembre de 2008). "Terminales de tarjetas de crédito manipuladas". Servicio de noticias IDG . Consultado el 19 de abril de 2009 .
^ Andrew Kelly (10 de septiembre de 2010). "Cómo descifrar contraseñas mediante la acústica del teclado y el modelado del lenguaje" (PDF) .
^ Sarah Young (14 de septiembre de 2005). "Investigadores recuperan texto mecanografiado utilizando grabaciones de audio de pulsaciones de teclas". UC Berkeley NewsCenter.
^ Knight, Will. "Hace un año: los cypherpunks publican pruebas de Tempest". ZDNet .
^ Martin Vuagnoux y Sylvain Pasini (1 de junio de 2009). Vuagnoux, Martin; Pasini, Sylvain (eds.). "Emanaciones electromagnéticas comprometedoras de teclados cableados e inalámbricos". Actas del 18.º Simposio sobre seguridad de Usenix : 1–16.
^ "Cámara ATM". www.snopes.com . 19 de enero de 2004 . Consultado el 19 de abril de 2009 .
^ Maggi, Federico; Volpatto, Alberto; Gasparini, Simone; Boracchi, Giacomo; Zanero, Stefano (2011). "Un ataque de escucha rápida contra pantallas táctiles" (PDF) . 2011 7.ª Conferencia Internacional sobre Seguridad y Aseguramiento de la Información (IAS) . 7.ª Conferencia Internacional sobre Seguridad y Aseguramiento de la Información. IEEE. págs. 320–325. doi :10.1109/ISIAS.2011.6122840. ISBN.978-1-4577-2155-7.
^ Marquardt, Philip; Verma, Arunabh; Carter, Henry; Traynor, Patrick (2011). (sp)iPhone: decodificación de vibraciones de teclados cercanos mediante acelerómetros de teléfonos móviles . Actas de la 18.ª conferencia de la ACM sobre seguridad informática y de las comunicaciones. ACM. págs. 561–562. doi :10.1145/2046707.2046771.
^ "El acelerómetro del iPhone podría espiar las pulsaciones de teclas de la computadora". Wired . 19 de octubre de 2011 . Consultado el 25 de agosto de 2014 .
^ Owusu, Emmanuel; Han, Jun; Das, Sauvik; Perrig, Adrian; Zhang, Joy (2012). ACCessory: inferencia de contraseñas usando acelerómetros en teléfonos inteligentes . Actas del Decimotercer Taller sobre Sistemas y Aplicaciones de Computación Móvil. ACM. doi :10.1145/2162081.2162095.
^ Aviv, Adam J.; Sapp, Benjamin; Blaze, Matt; Smith, Jonathan M. (2012). "Practicidad de los canales laterales del acelerómetro en los teléfonos inteligentes". Actas de la 28.ª Conferencia Anual sobre Aplicaciones de Seguridad Informática en - ACSAC '12 . Actas de la 28.ª Conferencia Anual sobre Aplicaciones de Seguridad Informática. ACM. pág. 41. doi :10.1145/2420950.2420957. ISBN9781450313124.
^ Cai, Liang; Chen, Hao (2011). TouchLogger: inferir pulsaciones de teclas en la pantalla táctil a partir del movimiento del teléfono inteligente (PDF) . Actas de la sexta conferencia USENIX sobre temas de actualidad en seguridad. USENIX . Consultado el 25 de agosto de 2014 .
^ Xu, Zhi; Bai, Kun; Zhu, Sencun (2012). TapLogger: inferir entradas de usuario en pantallas táctiles de teléfonos inteligentes usando sensores de movimiento integrados . Actas de la quinta conferencia de la ACM sobre seguridad y privacidad en redes inalámbricas y móviles. ACM. págs. 113–124. doi :10.1145/2185448.2185465.
^ Miluzzo, Emiliano; Varshavsky, Alexander; Balakrishnan, Suhrid; Choudhury, Romit Roy (2012). Tapprints: los toques de tus dedos tienen huellas dactilares . Actas de la 10.ª conferencia internacional sobre sistemas, aplicaciones y servicios móviles. ACM. págs. 323–336. doi :10.1145/2307636.2307666.
^ Spreitzer, Raphael (2014). PIN Skimming: Exploiting the Ambient-Light Sensor in Mobile Devices (Reconocimiento de PIN: Explotación del sensor de luz ambiental en dispositivos móviles ). Actas del 4.º taller de la ACM sobre seguridad y privacidad en teléfonos inteligentes y dispositivos móviles. ACM. págs. 51–62. arXiv : 1405.3760 . doi :10.1145/2666620.2666622.
^ Hameiri, Paz (2019). "Body Keylogging". Revista de Seguridad Informática Hakin9 . 14 (7): 79–94.
^ Young, Adam; Yung, Moti (1997). "Robo de contraseñas denegable: sobre la posibilidad de espionaje electrónico evasivo". Actas. Simposio IEEE sobre seguridad y privacidad de 1997 (Cat. No. 97CB36097) . págs. 224–235. doi :10.1109/SECPRI.1997.601339. ISBN .978-0-8186-7828-8.S2CID14768587 .
^ Young, Adam; Yung, Moti (1996). "Criptovirología: amenazas a la seguridad basadas en la extorsión y contramedidas". Actas del Simposio IEEE sobre seguridad y privacidad de 1996. págs. 129-140. CiteSeerX 10.1.1.44.9122 . doi :10.1109/SECPRI.1996.502676. ISBN .978-0-8186-7417-4. Número de identificación del sujeto 12179472.
^ John Leyden (6 de diciembre de 2000). "Juicio a la mafia para probar las tácticas de espionaje del FBI: registro de pulsaciones de teclas utilizado para espiar a sospechosos de pertenecer a la mafia mediante PGP". The Register . Consultado el 19 de abril de 2009 .
^ John Leyden (16 de agosto de 2002). "Los rusos acusan a un agente del FBI de piratería informática". The Register .
^ Alex Stim (28 de octubre de 2015). "3 métodos para deshabilitar el keylogger espía integrado en Windows 10".
^ "¿Qué es Anti Keylogger?". 23 de agosto de 2018.
^ Creutzburg, Reiner (29 de enero de 2017). "El extraño mundo de los keyloggers: una descripción general, parte I". Electronic Imaging . 2017 (6): 139–148. doi :10.2352/ISSN.2470-1173.2017.6.MOBMU-313.
^ Goring, Stuart P.; Rabaiotti, Joseph R.; Jones, Antonia J. (1 de septiembre de 2007). "Medidas anti-keylogging para un inicio de sesión seguro en Internet: un ejemplo de la ley de consecuencias no deseadas". Computers & Security . 26 (6): 421–426. doi :10.1016/j.cose.2007.05.003. ISSN 0167-4048.
^ Austin Modine (10 de octubre de 2008). "El crimen organizado manipula los dispositivos de lectura de tarjetas europeos". The Register . Consultado el 18 de abril de 2009 .
^ Scott Dunn (10 de septiembre de 2009). "Evita que los keyloggers obtengan tus contraseñas". Secretos de Windows . Consultado el 10 de mayo de 2014 .
^ Christopher Ciabarra (10 de junio de 2009). "Anti Keylogger". Networkintercept.com. Archivado desde el original el 26 de junio de 2010.
^ Cormac Herley y Dinei Florencio (6 de febrero de 2006). "Cómo iniciar sesión desde un cibercafé sin preocuparse por los keyloggers" (PDF) . Microsoft Research . Consultado el 23 de septiembre de 2008 .
Enlaces externos
Medios relacionados con el registro de pulsaciones de teclas en Wikimedia Commons