Nabeelfarooqi/windows-input-monitor
GitHub: Nabeelfarooqi/windows-input-monitor
一个教育性 Python 项目,同时演示 Windows 键盘记录器的实现原理和对应的检测清除方法。
Stars: 0 | Forks: 0
# 🔐 键盘记录器与检测器 — 网络安全项目
一个教育性质的网络安全项目,演示键盘记录器的工作原理以及如何检测和清除它们。使用 Python 为 Windows 构建 —— 一个代码库包含攻击与防御双重安全功能。
⚠️ 仅供学习与教育目的。请仅在您自己的机器上运行。未经明确许可,请勿将其部署到任何设备上。
## 🧠 本项目的作用
大多数人知道键盘记录器的存在,但很少有人知道它们实际上是如何工作的 —— 或者如何阻止它们。
本项目从零开始构建了攻防双方的功能:
- 一个能静默捕获键盘敲击、时间戳和当前活动窗口标题的键盘记录器
- 一个能搜寻、终止并清除其痕迹的检测器
## ✨ 功能特性
### 🕵️ 键盘记录器
- 记录完整单词,附带时间戳和活动窗口标题
- 追踪您正在输入的应用程序(Chrome、记事本、Roblox 等)
- 语音命令控制:
- `"delete log"` — 清除日志文件
- `"show log"` — 在记事本中打开日志
- `"stop keylogger"` — 终止程序
### 🛡️ 检测器
- 每 10 秒扫描所有正在运行的进程
- 检查 Windows 启动注册表以发现持久化驻留
- 自动终止检测到的键盘记录器
- 检测到后删除键盘记录文件
- 将检测结果保存到 `detections.txt`
## 📁 项目结构
```
windows-input-monitor/
├── keylogger.py
├── detector.py
├── README.md
├── requirements.txt
└── .gitignore
```
## ⚙️ 环境要求
- Windows 10/11
- Python 3.11+
安装依赖:
```
pip install -r requirements.txt
```
## 🚀 用法
运行键盘记录器:
```
python keylogger.py
```
运行检测器:
```
python detector.py
```
## 🔨 构建可执行文件
使用 PyInstaller 构建独立的 Windows 可执行文件:
```
pyinstaller --onefile --noconsole keylogger.py
pyinstaller --onefile detector.py
```
## 🧪 我学到了什么
- 使用 `pynput` 捕获操作系统级别的键盘输入
- 使用 `psutil` 检测可疑进程
- Windows 注册表持久化驻留检测
- 用于后台语音命令监听的多线程技术
- 使用 PyInstaller 打包 Python 应用程序
- 真实环境中的依赖管理与故障排查
标签:Golang, psutil, PyInstaller打包, pynput, Python, TGT, 子域名枚举, 安全编程, 按键监控, 攻防演练, 教育项目, 无后门, 注册表持久化, 漏洞挖掘, 系统安全, 网络安全, 语音控制, 逆向工具, 键盘记录器, 隐私保护