Skip to content

SPYSEE is an open-source keylogger malware designed to capture real-time images and screenshots of the user's screen. It can grab private credentials at runtime, showcasing advanced techniques in malware operation. This project highlights the importance of cybersecurity measures to protect sensitive information from potential threats.

Notifications You must be signed in to change notification settings

Minhal128/SPYSEE

Repository files navigation

SPYSEE : A Keylogger Malware 🖼️🖨️

I am pleased to announce the development of **SPYSEE**, my first malware as a Cyber Security student specializing in red teaming. SPYSEE is a sophisticated keylogger designed to capture and record keystrokes on a target system, gathering sensitive information such as credentials and messages. This project has been a significant milestone in my journey, providing valuable hands-on experience with offensive security techniques. Developing SPYSEE has deepened my understanding of keylogging methods and the importance of defending against such threats, reinforcing my passion for mastering the complexities of cybersecurity..

Disclaimer

 You got HACKED !

SPYSEE is intended solely for educational purposes and ethical cybersecurity research. It is designed to demonstrate keylogging threats in a controlled environment and should not be used for any unauthorized or illegal activity. By using this software, you confirm that you are 18 years or older and fully understand the legal risks involved. Any misuse, such as unauthorized data collection or system compromise, is strictly prohibited and is the sole responsibility of the user. The developer is not liable for any damages or legal consequences arising from improper use. Always obtain permission before using this tool on any system.

🔎 Project Preview

To get a sneak peek of the project, go ahead and run this on your device... if you're in the mood for some digital thrill-seeking (don't worry, your keyboard might survive). Just kidding!no need to panic! 😄

🧐 Features

Our project SPYSEE offers a range of functionalities " Beware of us "

  • Keystroke Logging: Records every keystroke pressed by the user, including special keys like space, enter, tab, and control.
  • Screenshot Capture: Automatically captures screenshots of the screen every time the spacebar is pressed, providing visual evidence of user activity.
  • Camera Snapshots: Takes pictures using the system’s camera whenever the "Enter" key is pressed, capturing the environment in real-time.
  • Clipboard Monitoring: Captures the contents of the clipboard when the "Ctrl" key is pressed, logging any copied text or sensitive data.
  • Silent Background Operation: The keylogger runs quietly in the background without alerting the user, making it highly discreet.
  • Scheduled Shutdown: On pressing the "Tab" key, the system is scheduled to shut down in 60 seconds.
  • Email Reporting (Optional): Logs can be sent directly to the specified email address, providing a remote monitoring option.
  • Automatic File Logging: Keylogs, screenshots, clipboard data, and camera captures are stored locally in designated folders for easy access.
  • Customizable Reporting Interval: Choose the interval for generating reports, with logs being saved or emailed every specified number of seconds.
  • Seamless Deployment: Converts SPYSEE and other Python scripts into standalone executables, ensuring cross-platform compatibility and bundling all dependencies into a single file for easy distribution and execution on any system without requiring Python.
  • Remote Data Transmission: Sends captured data directly to a specified server IP for centralized collection, eliminating local storage on the attacked machine.

E-LOCKS Features

🛠 Installation Steps:

1. Clone the repository

    git clone https://github.com/Minhal128/SPYSEE.git

2. Install & Run python Language & its modules

pip install opencv-python
pip install Pillow
pip install pyperclip
pip install keyboard


 # Run the executable 
python keylogger.py
or 
python3 keylogger.py

Working

This keylogger captures keystrokes and system events, including screenshots, webcam images, and clipboard data, while sending reports at specified intervals. Below is a detailed breakdown of its functionalities:

  • Modules Used
    • opencv-python
    • Pillow
    • pyperclip
    • keyboard
    • request

    Working

    • Key Logging: The keylogger uses the keyboard library to listen for keyboard events. When a key is pressed, the key_press method captures the key name and appends it to the log.
    • Logging Mechanism:
      • Continuously logs keystrokes to a string variable.
      • At regular intervals (defined by SEND_REPORT_EVERY, set to 40 seconds), the report method is invoked to handle log data:
        • Sends logs via email or saves them to a file based on the specified report method.
    • File and Email Reporting:
      • Logs can be sent through email using the smtplib library, formatted in both plain text and HTML:
      • Email Configuration: Requires valid email credentials for sending logs.
      • Alternatively, logs are appended to keylog.txt in the designated shared folder (H:\Development\logme).
    • Screenshot and Webcam Capture:
      • Captures screenshots using ImageGrab from the PIL library, saving them in the screenshots directory.
      • Takes webcam pictures using OpenCV, storing them in the camera_pics directory.
    • Clipboard Monitoring:
      • Monitors the clipboard for changes and saves its content to clipboard.txt each time the Ctrl key is pressed:
      • Timestamps each entry for tracking when the clipboard data was captured.
    • Scheduled Shutdown:
      • Offers the ability to shut down the computer 60 seconds after pressing the Tab key:
      • Ensures users are notified of the scheduled shutdown.
    • Silent Operation:
      • Designed to operate discreetly without user interaction or visible output:
      • The logging process continues in the background until stopped by pressing the Esc key.

    Usage

    To run the keylogger:

    • Ensure the necessary libraries are installed (opencv-python, Pillow, pyperclip, keyboard).
    • Update the email settings with valid credentials.
    • Execute the script to allow it to run in the background, capturing the specified data.

    Important Note

    This keylogger is intended for educational purposes and ethical hacking. Always obtain explicit permission from users before running such software on their devices.

    Run it to know the features 😈

    🤝Team Contribution

    Minhal Rizvi

    • Keylogger Implementation, Log Management, Timer and Reporting, Error Handling, Deployment, Testing.

    Mufaddal Huzaifa

    • Screenshot Functionality, Camera Capture, Clipboard Management, Email logs, Integration of venv.
    • ⚠️Limitations

    • Performance Overhead
    • No Data Encryption
    • Single Reporting Method
    • Not able to bypass MAC os
    • 🔮Future Enhancements

    • Dynamic Configuration
    • Data Visualization
    • Cloud User Management Database
    • Reverse shell (27/11/2024 😈)
    • What I Learned from the
      SPYSEE

      Technical Skills

      • Python Programming: Enhanced proficiency in Python, particularly with libraries like keyboard, cv2, and PIL.
      • Event Handling: Gained experience in handling keyboard events and creating responsive applications.
      • File Management: Learned to read from and write to files, including managing different file types for logging data.
      • Email Functionality: Implemented email features using the smtplib library for sending logs, gaining insights into how email protocols work.
      • Image Processing: Developed skills in capturing screenshots and camera images using PIL and OpenCV.
      • Error Handling: Improved ability to anticipate potential errors and implement exception handling to create more robust applications.
      • Multithreading: Gained understanding of using threading to perform background tasks, like periodic reporting.

      Conceptual Understanding

      • Keylogging Ethics: Understood the ethical implications and potential legal issues surrounding keylogging software.
      • Data Privacy: Learned about the importance of data security, especially when handling sensitive information like keystrokes and clipboard data.
      • System Resources: Gained awareness of how background processes can impact system performance.

      Development Practices

      • Modular Design: Applied principles of modular programming by organizing code into functions and classes for better readability and maintainability.
      • Version Control: If using version control (like Git) for the project, learned about managing code changes and collaboration.
      • Testing and Debugging: Improved skills in testing and debugging code to ensure functionality and reliability.

      Future Skills to Explore

      • Data Encryption: Consider learning about data encryption techniques to secure logged information.
      • Cross-Platform Development: Explore how to make applications compatible across different operating systems.
      • User Interface Design: Consider diving into UI/UX design to enhance user interaction with applications.
      • Networking Concepts: Deepen understanding of networking and protocols to improve the communication aspect of applications.

      💖Hope you Like our work!

      This project needs a ⭐ from you. Don't forget to leave a star ⭐

    About

    SPYSEE is an open-source keylogger malware designed to capture real-time images and screenshots of the user's screen. It can grab private credentials at runtime, showcasing advanced techniques in malware operation. This project highlights the importance of cybersecurity measures to protect sensitive information from potential threats.

    Resources

    Stars

    Watchers

    Forks

    Releases

    No releases published

    Packages

    No packages published