Skip to content

Alexia-Ward/encrypted-input-event-logger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple Keylogger (Python)

This project is a simple keylogger that captures and encrypts logs. The logs can then be decrypted using the viewer. This project was built to demonstrate core cybersecurity concepts such as encryption and secure storage to help me further understand keylogging attacks. This is my first project in my self-directed learning series of cybersecurity projects!


Security Analysis

How Do Keyloggers Work?

Key loggers are tools used to record user input without the user's knowledge. In real world attacks they are often deployed as part of malware or phishing campaigns.

What Can They Capture?

Keyloggers can capture PII and SPII such as:

  • Login Credentials
  • Banking Information
  • Personal Messages

Why Are They Difficult To Detect?

They are often difficult to detect because they often run in the background with minimal system impact, as demonstrated in the project, when keys are being logged you cannot see that they are, there is no output message! Sometimes they can mimic legitimate software and can operate at the kernel level.

How Are Some Ways They Can Be Mitigated?

Antiviruses can be used to mitigate these attacks, MFA can also assist because attackers will not be able to access systems even with a password. The principle of least privilege should always be implemented to prevent escalation attacks. Lastly, frequently updating software is important because keyloggers take advantage of software vulnerabilities.

Conclusion

This project helped me learn how keyloggers operate as well as demonstrated simple symmetric encryption. Understanding the fundamentals of how an attack works can help one prepare to mitigate them in the future!

Features

  • Encrypts log entries using Fernet symmetric encryption
  • Stores logs in binary file format
  • Tracks session duration for each logging session
  • Simple log viewer with automatic decryption

Tech Stack

  • Python 3.10

Dependencies

  • pynput
  • cryptography
  • time

Installation

  1. Clone the repository

  2. Install dependencies

  3. Run python main.py


Ethical Note

This project was built in a controlled environment for personal educational purposes only.

About

This project is a simple input event logger that captures and encrypts logs. The logs can then be decrypted using the viewer. This project was built to demonstrate core cybersecurity concepts such as encryption and secure storage to help me further understand keylogging attacks.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages