Cybersecurity-Projects/PROJECTS/beginner/keylogger
dependabot[bot] 413e9fd40e
chore(deps): bump urllib3 in /PROJECTS/beginner/keylogger
Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.6.3 to 2.7.0.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.6.3...2.7.0)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.7.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-12 17:31:33 +00:00
..
learn feat: did a couple things idk 2026-02-28 14:08:36 -05:00
.gitignore feat: did a couple things idk 2026-02-28 14:08:36 -05:00
.style.yapf Phase 1.1: Organize PROJECTS by difficulty level 2026-01-29 02:41:15 -05:00
LICENSE - Standardize READMEs and add justfiles across all 14 projects 2026-02-11 07:01:25 -05:00
README.md - Standardize READMEs and add justfiles across all 14 projects 2026-02-11 07:01:25 -05:00
justfile feat: did a couple things idk 2026-02-28 14:08:36 -05:00
keylogger.py feat: did a couple things idk 2026-02-28 14:08:36 -05:00
pyproject.toml chore(deps): bump pytest in /PROJECTS/beginner/keylogger 2026-04-15 11:01:10 +00:00
test_keylogger.py feat: did a couple things idk 2026-02-28 14:08:36 -05:00
uv.lock chore(deps): bump urllib3 in /PROJECTS/beginner/keylogger 2026-05-12 17:31:33 +00:00

README.md

██╗  ██╗███████╗██╗   ██╗██╗      ██████╗  ██████╗  ██████╗ ███████╗██████╗
██║ ██╔╝██╔════╝╚██╗ ██╔╝██║     ██╔═══██╗██╔════╝ ██╔════╝ ██╔════╝██╔══██╗
█████╔╝ █████╗   ╚████╔╝ ██║     ██║   ██║██║  ███╗██║  ███╗█████╗  ██████╔╝
██╔═██╗ ██╔══╝    ╚██╔╝  ██║     ██║   ██║██║   ██║██║   ██║██╔══╝  ██╔══██╗
██║  ██╗███████╗   ██║   ███████╗╚██████╔╝╚██████╔╝╚██████╔╝███████╗██║  ██║
╚═╝  ╚═╝╚══════╝   ╚═╝   ╚══════╝ ╚═════╝  ╚═════╝  ╚═════╝ ╚══════╝╚═╝  ╚═╝

Cybersecurity Projects Python License: AGPLv3 Educational

Educational keylogger for security research demonstrating input capture, window tracking, and C2 delivery techniques.

This is a quick overview — security theory, architecture, and full walkthroughs are in the learn modules.

What It Does

  • Real-time keyboard event capture with microsecond-precision timestamps
  • Active window tracking across Windows, macOS, and Linux
  • Log rotation with configurable size limits (default 5MB)
  • F9 toggle control to pause and resume capture at runtime
  • Remote delivery simulation via webhooks for C2 research
  • Thread-safe operations with proper resource locking and cleanup

Quick Start

git clone https://github.com/CarterPerez-dev/Cybersecurity-Projects.git
cd Cybersecurity-Projects/PROJECTS/beginner/keylogger
uv sync
python keylogger.py

Press F9 to toggle capture on/off. Press Ctrl+C to stop.

Disclaimer: For authorized security research and education only. Unauthorized use of keyloggers is illegal. Always obtain explicit written consent before monitoring any system you do not own.

[!TIP] This project uses just as a command runner. Type just to see all available commands.

Install: curl -sSf https://just.systems/install.sh | bash -s -- --to ~/.local/bin

Learn

This project includes step-by-step learning materials covering security theory, architecture, and implementation.

Module Topic
00 - Overview Prerequisites and quick start
01 - Concepts Security theory and real-world breaches
02 - Architecture System design and data flow
03 - Implementation Code walkthrough
04 - Challenges Extension ideas and exercises

License

AGPL 3.0