Manojgolla0516/Honeypot
GitHub: Manojgolla0516/Honeypot
在 Kali Linux 上部署 Cowrie SSH 蜜罐的家庭实验室项目,用于捕获和记录攻击者的登录尝试与会话行为。
Stars: 0 | Forks: 0
# honeypot
这是一个在 Kali Linux 上使用 Cowrie SSH honeypot 的家庭实验室 honeypot 设置。它旨在吸引并记录攻击者的活动,包括登录尝试、输入的命令以及会话详细信息。
## 什么是 Honeypot?
honeypot 是一个旨在吸引攻击者的虚假漏洞系统。它看起来像一台真实的服务器,但所有操作都会被记录下来——每一次登录尝试、每一个输入的命令、每一个下载的文件。安全团队利用 honeypot 来研究攻击者行为并及早发现威胁。
## 使用的工具
| 工具 | 用途 |
|------|---------|
| **Cowrie** | SSH honeypot — 记录所有 SSH 登录尝试和命令 |
| **Kali Linux** | 安全测试环境 |
| **Python venv** | 用于运行 Cowrie 的隔离环境 |
## 环境
- 操作系统: Kali Linux (VirtualBox)
- Cowrie 版本: 最新版本 (从 GitHub 克隆)
- honeypot 端口: 2222 (SSH)
- 日期: 2026 年 7 月
## 安装说明
```
# Clone Cowrie
git clone https://github.com/cowrie/cowrie.git
cd cowrie
# 创建虚拟环境
python3 -m venv cowrie-env
source cowrie-env/bin/activate
# 安装依赖
pip install -r requirements.txt
pip install -e .
# 复制并配置
cp src/cowrie/data/etc/cowrie.cfg.dist etc/cowrie.cfg
# 启动 honeypot
cowrie start
```
## 捕获到的真实攻击数据
**会话持续时间:** 189.7 秒
**总连接数:** 1
**记录到的命令总数:** 9
**登录尝试:** 1
**攻击者 IP:** 127.0.0.1 (模拟的本地攻击)
## honeypot 记录的命令
攻击者输入的所有命令均已被实时捕获:
```
10:05:48 CMD: admin
10:05:56 CMD: moon
10:05:58 CMD: apple
10:06:03 CMD: admin123
10:06:12 CMD: annad234
10:06:49 CMD: commander
10:06:53 CMD: tractor
10:06:59 CMD: 1234567890
```
这些展示了典型的攻击者行为模式——首先尝试常见的密码,然后在获取访问权限后输入各种随机的命令。
## Cowrie 的工作原理
```
Attacker → connects to port 2222
→ sees a fake Ubuntu SSH server
→ tries passwords (all accepted)
→ gets a fake shell
→ types commands (all logged)
→ Cowrie fakes responses
→ everything saved to cowrie.log
```
1. Cowrie 监听 2222 端口,伪装成真实的 SSH 服务器
2. 它接受任何密码(或 `userdb.txt` 中指定的特定密码)
3. 一旦登录,攻击者会看到一个虚假的 Ubuntu shell
4. 每个命令都会连同时间戳和源 IP 一起被记录
5. Cowrie 伪造响应 —— `ls`、`cat`、`wget` 看起来都能正常工作
6. 所有会话数据都会保存到 `cowrie.log` 和 `cowrie.json` 中
## 日志分析
### 登录尝试
```
grep -i "login" logs/cowrie.log
```
### 攻击者运行的命令
```
grep "CMD" logs/cowrie.log
```
### 连接摘要
```
grep "New connection\|Connection lost" logs/cowrie.log
```
## 截图


## 我学到了什么
### 攻击者行为模式
### 为什么 honeypot 很重要
honeypot 为防御者提供了早期预警——如果有设备连接到你的 honeypot,就意味着有人在扫描你的网络。攻击者会在虚假的系统上浪费时间,而防御者则可以同时进行检测和响应。
### 日志取证
honeypot 中的每一个操作都带有时间戳并被记录下来。这正是 SOC 分析师调查真实安全事件的方式——他们通过阅读日志来还原攻击者的操作步骤和时间。
## 仓库结构
```
honeypot/
├── README.md
├── logs/
│ ├── cowrie.log ← human readable attack log
│ └── cowrie.json ← machine readable JSON log
└── screenshots/
├── cowrie_commands.png
└── cowrie_logins.png
```
## 免责声明
此 honeypot 部署在我自己的本地 Kali Linux 机器上的一个隔离的 VirtualBox 环境中。所有的攻击模拟均由我本人出于教育目的进行。切勿在你不拥有管理权的网络上设置 honeypot。
## 许可证
MIT
标签:SSH, 威胁情报, 安全, 开发者工具, 蜜罐, 证书利用, 超时处理, 逆向工具