hosafxd/HoneyManager

GitHub: hosafxd/HoneyManager

一个面向家庭和中小企业的超轻量级蜜罐管理框架,能将废旧硬件转化为内部欺骗传感器,实现对内网威胁的高保真检测与自动化告警。

Stars: 1 | Forks: 2

# 🍯 HoneyManager **诱饵情报:通过欺骗技术实现自动化威胁分类** HoneyManager 是一个专为家庭用户和中小企业 (SMB) 设计的超轻量级开源蜜罐管理框架。它可以将废旧硬件——旧笔记本电脑、台式机、树莓派或 Android 设备——转化为主动安全传感器,用于检测外部攻击和内部横向移动。 ## 🎯 为什么选择 HoneyManager? 传统的企业安全解决方案需要配备大容量 RAM 的昂贵服务器。HoneyManager 改变了这一现状: - **🖥️ 在“无用”的硬件上运行**:即使是一台拥有 512MB RAM 的 15 年前 Core 2 Duo 笔记本电脑,也能变身为现代安全设备 - **🎭 零误报**:内部蜜罐意味着每一次连接都是已确认的威胁(没有合法设备会去连接它们) - **🔍 检测“访客威胁”**:能够捕捉受感染的智能手机或咨询师的笔记本电脑在你的 Wi-Fi 上尝试的横向移动 - **🌱 可持续技术**:重新利用电子垃圾,而不是购买新的安全设备 ## ✨ 主要特性 ### 🚀 超轻量级架构 - **RAM 使用量**:总计约 250MB(相比之下 ELK 栈需要 8GB 以上) - **存储**:最低 4GB - **CPU**:1GHz 单核即可满足需求 - 定制 Python 分析引擎(无需笨重的 JVM 或复杂的索引) ### 🎭 四种蜜罐配置 1. **SSH/Telnet 陷阱**:模拟 QNAP NAS 或 OpenWRT 路由器 - 捕获暴力破解尝试、执行的命令以及下载的恶意软件哈希值 2. **网络摄像头模拟**:基于 Alpine 的 5MB 容器 - 伪造 Hikvision 摄像头界面 - 甚至能在加密流量中从 POST 请求提取凭证 3. **Windows 服务**:SMB/FTP/MS-SQL 陷阱 - 在隔离的容器中捕获真实的恶意软件二进制文件 4. **自定义 IoT**:通用 Linux IoT 模拟 - 模拟开启了 Telnet/FTP/SSH 的智能冰箱、打印机 ### 🔔 智能告警 - **Telegram 集成**:针对关键事件的即时通知 - **严重级别**:严重(登录尝试)、高(端口扫描)、中(侦察) - **高保真度**:得益于内部部署,实现接近零误报 ### 🌐 专业网络 - **Macvlan 支持**:容器从你的路由器获取真实 IP(绕过 NAT 开销) - **低 CPU 影响**:直接的二层网络降低了虚拟化负载 ## 🖥️ 系统要求 | 组件 | 最低要求 | 推荐配置 | |-----------|---------|-------------| | **CPU** | 1 GHz 单核 | 任何现代双核处理器 | | **RAM** | 512 MB | 1 GB | | **存储** | 4 GB SD卡/硬盘 | 16 GB SSD | | **网络** | 以太网/Wi-Fi | 推荐以太网 | | **操作系统** | Linux (RHEL, Ubuntu, Debian, Rocky) | 最新 LTS 版 Ubuntu/Debian | *已在以下平台测试:树莓派 Zero W、2008 年上网本、Proxmox LXC 容器* ## 🚀 快速入门指南 ### 1. 克隆仓库 ``` git clone https://github.com/yourusername/honeymanager.git cd honeymanager ``` ### 2. 配置环境 ``` cp .env.example .env # 编辑 .env 并添加你的 Telegram Bot API key nano .env ``` ### 3. 安装 Python 依赖 ``` pip3 install -r backend/requirements.txt ``` ### 4. 创建 Macvlan 网络 *根据你的路由器调整子网/网关* ``` docker network create -d macvlan \ --subnet=192.168.1.0/24 \ --gateway=192.168.1.1 \ -o parent=eth0 \ macvlan_honeynet ``` ### 5. 构建并启动 ``` docker-compose build # Terminal 1: 启动 API python3 backend/app.py # Terminal 2: 启动 Log Watcher python3 backend/watcher.py ``` ### 6. 访问仪表板 打开浏览器:`http://:5000` ### 7.(可选)Systemd 开机自启 ``` sudo cp systemd/*.service /etc/systemd/system/ sudo systemctl daemon-reload sudo systemctl enable honeymanager-api honeymanager-watcher sudo systemctl start honeymanager-api honeymanager-watcher ``` ## 🏗️ 架构概览 ``` ┌─────────────────────────────────────────────────────┐ │ HoneyManager Host │ │ ┌─────────────┐ ┌──────────────┐ ┌──────────┐ │ │ │ Flask │ │ SQLite │ │ Custom │ │ │ │ Backend │ │ Database │ │ Watcher │ │ │ └──────┬──────┘ └──────────────┘ └────┬─────┘ │ │ │ │ │ │ ┌──────┴─────────────────────────────────┴─────┐ │ │ │ Docker + Macvlan Network │ │ │ │ ┌─────────┐ ┌─────────┐ ┌─────────┐ │ │ │ │ │ Cowrie │ │ Dionaea │ │ IoT │ │ │ │ │ │ (SSH) │ │ (SMB) │ │ (Multi) │ │ │ │ │ └────┬────┘ └────┬────┘ └────┬────┘ │ │ │ └───────┼──────────┼──────────┼───────────────┘ │ └──────────┼──────────┼──────────┼──────────────────┘ │ │ │ Real IPs: 192.168.1.x/24 (Direct from Router) ``` **核心组件:** - **app.py**:Flask API 和 Web 仪表板 - **watcher.py**:实时日志分析引擎(替代笨重的 SIEM) - **models.py**:用于告警和事件的 SQLite ORM - **docker_manager.py**:通过 Docker SDK 进行容器编排 ## 📊 能检测到什么? | 威胁类型 | 示例 | 严重程度 | |-------------|---------|----------| | **暴力破解** | 5分钟内出现 5 次以上 SSH 登录失败 | 🔴 严重 | | **横向移动** | 访客手机扫描内部 IP | 🔴 严重 | | **凭证收集** | 向伪造的摄像头登录页面发送 POST 请求 | 🟠 高 | | **恶意软件投放** | 通过 SMB 上传的二进制文件 | 🟠 高 | | **侦察** | 端口扫描、服务枚举 | 🟡 中 | ## 🔒 安全说明 ⚠️ **重要提示**:HoneyManager 是一种**检测**工具,而非防御系统。为了继续收集情报,它故意不封锁攻击者的 IP。请与你的防火墙配合使用。 - 所有恶意软件样本均在隔离的 Docker 容器中捕获 - SQLite 数据库虽轻量,但默认未加密(请加密你的主机磁盘) - 将蜜罐放置在内部 VLAN 中以获得最佳保护 ## 🛣️ 路线图及当前状态 🚧 **活跃开发阶段** HoneyManager 目前功能完备且已投入部署,但我们正在对其进行快速迭代。以下是即将推出的内容: ### ✅ 已完成 - [x] 核心 Flask 后端和 REST API - [x] 四种蜜罐容器类型 - [x] Telegram 告警系统 - [x] Macvlan 网络支持 - [x] 实时日志监控器 - [x] Web 仪表板 UI ### 🔄 进行中 - [ ] 高级分析仪表板(攻击图谱、趋势) - [ ] 集成自动恶意软件沙箱 - [ ] 用于外部 SIEM 集成的 REST API ### 📋 计划功能 - [ ] 使用机器学习进行攻击模式识别 (MITRE ATTACK CATEGORY LABELLING) - [ ] 自动威胁情报源 (IOC 阻断) - [ ] 使用 Kafka 和 Python 服务进行动态打标 - [ ] 支持扩展的 Kubernetes - [ ] 基于 Web 的配置向导 ## 🙏 致谢 - [Cowrie](https://github.com/cowrie/cowrie) 提供的优秀 SSH 蜜罐 - [Dionaea](https://github.com/DinoTools/dionaea) 提供的多协议捕获 - Alpine Linux 让 5MB 容器成为可能 - 开源安全社区 献给那些通过 NLP 和自动化分类从欺骗中提取上下文威胁情报的分析师们。
标签:Cobalt Strike, DAST, Dionaea, Docker容器, Honeymanager, Honeypot, IoT, LangChain, MS-SQL, NAS模拟, Nginx, Python, Shellcode执行, SMB, SSH, Telegram告警, Telnet, 中小企业安全, 威胁情报, 安全告警, 家庭安全, 密码提取, 库, 应急响应, 废旧硬件利用, 开发者工具, 恶意软件分析, 插件系统, 摄像头模拟, 攻击诱捕, 攻击面发现, 无后门, 横向移动检测, 欺骗技术, 物联网安全, 电子垃圾再利用, 红队行动, 网络信息收集, 网络安全, 网络安全审计, 蜜罐, 蜜网, 证书利用, 请求拦截, 路由器模拟, 轻量级, 逆向工具, 错误配置检测, 隐私保护, 零误报