rootXdeb/DecoyNet

GitHub: rootXdeb/DecoyNet

DecoyNet 是一个结合机器学习的自适应多协议蜜罐平台,通过模拟真实网络服务来检测、监控和分析攻击者行为,帮助安全团队收集威胁情报并提升防御能力。

Stars: 0 | Forks: 0

# DecoyNet:自适应网络欺骗平台 ## 概述 DecoyNet 是一个智能网络欺骗平台,旨在检测和分析网络环境中的恶意活动。该系统通过模拟真实的网络服务和资源来吸引潜在攻击者,使安全团队能够在受控环境中观察攻击者行为、收集威胁情报并识别可疑活动。通过将欺骗技术与基于机器学习的分析相结合,DecoyNet 有助于提高威胁可见性和事件响应能力。 ## 问题陈述 传统的安全解决方案通常侧重于检测已知威胁,但在识别新型或复杂的攻击技术时可能会遇到困难。组织在理解攻击者行为和获取可操作的威胁情报方面也面临着挑战。DecoyNet 通过创建逼真的诱饵服务来引诱攻击者,从而能够收集有价值的攻击数据,用于分析和改进防御。 ## 主要功能 * 模拟真实网络服务的多服务蜜罐环境。 * 对攻击者活动进行实时监控和日志记录。 * 基于机器学习的威胁分类和分析。 * 威胁评分,帮助确定安全事件的优先级。 * 用于安全监控和可视化的交互式仪表板。 * 针对可疑活动自动生成告警。 * 出于取证和威胁情报目的收集攻击数据。 * 对捕获的事件进行集中报告和分析。 ## 安装与使用 ### 前置条件 在安装 DecoyNet 之前,请确保具备以下条件: * Python 3.9 或更高版本 * Git * Pip 包管理器 * 虚拟环境(推荐) ### 安装 克隆仓库: ``` git clone https://github.com/rootXdeb/DecoyNet.git cd DecoyNet ``` 创建并激活虚拟环境: ``` python -m venv venv ``` 对于 Windows: ``` venv\Scripts\activate ``` 对于 Linux/macOS: ``` source venv/bin/activate ``` 安装所需的依赖项: ``` pip install -r requirements.txt ``` ### 运行应用程序 使用以下命令启动应用程序: ``` python app.py ``` 服务器启动后,打开浏览器并导航至: ``` http://127.0.0.1:5000 ``` ### 用法 1. 启动 DecoyNet 平台。 2. 配置蜜罐服务和监控选项。 3. 允许系统监听传入的连接和交互。 4. 通过仪表板监控攻击者活动。 5. 查看生成的告警、威胁评分和捕获的日志。 6. 分析收集到的数据以获取威胁情报并改进安全防御。 ## 架构 ``` Attacker hits any port ↓ Protocol listener captures session (SSH/HTTP/FTP/Telnet/MySQL/Redis/ SMTP/RDP/SMB/MongoDB/Elastic/VNC) ↓ BehaviorProfiler builds live feature vector ↓ ML Engine: KMeans → which attack cluster? IsolationForest → is this anomalous? DecisionTree → bot / human / advanced? ↓ StrategyEngine selects: DEFLECT / OBSERVE / ENGAGE / TRAP ↓ Response adapts — same command, different content per strategy ↓ SIEM output: JSON + CEF + Syslog simultaneously ↓ Alert fires to Slack/email if CRITICAL ↓ Session saved → ML retrains → next attacker gets smarter response ``` ## 协议覆盖范围 | 协议 | 端口 | 捕获内容 | |---------------|-------|------------------------------------------| | SSH | 2222 | 完整的自适应 shell,凭据收集 | | HTTP | 80 | SQL 注入,路径遍历,Web shell | | FTP | 21 | 匿名登录,暴力破解,上传 | | Telnet | 23 | Mirai 僵尸网络,IoT 攻击 | | MySQL | 3306 | 数据库暴力破解 | | Redis | 6379 | 通过 cron 注入实现 RCE | | SMTP | 25 | 垃圾邮件中继,钓鱼基础设施 | | RDP | 3389 | BlueKeep 扫描器,勒索软件侦测 | | SMB | 445 | EternalBlue/WannaCry 尝试 | | MongoDB | 27017 | 暴露的数据库攻击 | | Elasticsearch | 9200 | 数据窃取,索引枚举 | | VNC | 5900 | 远程桌面暴力破解 | ## ML 模型 | 模型 | 用途 | 指标 | |-----------------|-------------------------|-----------------| | K-Means | 对攻击行为进行聚类分组 | Silhouette Score| | Isolation Forest| 检测未知攻击模式 | Detection Rate | | Decision Tree | 分类攻击者类型 | F1-Score | 模型每小时根据实时会话数据自动重新训练。 ## 自适应策略引擎 | 策略 | 触发条件 | 响应行为 | |----------|---------------------|----------------------------------------| | DEFLECT | 检测到机器人/扫描器 | 最少的、略微错误的响应 | | OBSERVE | 未知攻击者 | 正常响应,收集情报 | | ENGAGE | 确认为人类 | 暴露虚假凭据和机密 | | TRAP | 高级攻击者 | 针对其兴趣定制的诱饵 | ## SIEM 集成 | 输出 | 文件/目标 | 兼容平台 | |---------------------|------------------------|-------------------------------------| | JSON 事件 | logs/events.json | Elastic, Logstash, Graylog | | CEF 事件 | logs/events.cef | Splunk, QRadar, ArcSight | | Syslog | UDP/TCP 端口 514 | 任何 SIEM | 在 config.py 中配置: ``` SIEM_SYSLOG_HOST = "192.168.1.100" # your SIEM IP SLACK_WEBHOOK = "https://hooks.slack.com/..." ALERT_EMAIL = "soc@company.com" ``` ## 仪表板页面 | 页面 | URL | 内容 | |------------|------------------|--------------------------------------| | Dashboard | / | 实时统计,图表,最近的会话 | | Attacks | /attacks | 带有过滤器的完整攻击日志 | | Clusters | /clusters | ML 聚类和协议分布 | | Reports | /reports | 每日威胁报告,ML 指标 | | API Docs | /api/docs | 所有已记录的 REST endpoint | ## Docker 部署 ``` docker-compose up ``` 所有 12 个 DecoyNet 端口 + 仪表板将自动启动。 ## 项目结构 ``` DecoyNet_platform/ ├── ssh_engine/ Real Paramiko SSH server + adaptive shell ├── protocols/ HTTP, FTP, Telnet, MySQL, Redis, SMTP, │ RDP, SMB, MongoDB, Elasticsearch, VNC ├── adaptive/ Strategy engine, behavior profiler, │ response library, engagement traps ├── ml_engine/ K-Means, Isolation Forest, Decision Tree ├── analysis/ Threat scorer, attack chain, IOC extractor ├── correlation/ Cross-session attacker memory ├── siem/ JSON, CEF, Syslog output ├── alerts/ Email, Slack, webhook alerts ├── reports/ Daily HTML + JSON threat reports ├── intelligence/ Knowledge base, IOC manager ├── malware/ Safe capture, static analysis ├── database/ SQLite with full schema ├── dashboard/ Flask UI + REST API ├── evaluation/ ML evaluation + attacker simulator └── security/ Firewall + hardening scripts ``` ## 需要开放的端口(端口转发) 公开开放所有 DecoyNet 端口。将端口 5000 保持私有。 ``` 2222, 80, 21, 23, 3306, 6379, 25, 3389, 445, 27017, 9200, 5900 ``` ## 市场定位 | | Cowrie / T-Pot | Attivo / Illusive | DecoyNetAI | |--|--|--|--| | 自适应 ML 响应 | ❌ | ✅ | ✅ | | 多协议统一 | ❌ | ✅ | ✅ | | 内置 SIEM 输出 | ❌ | ✅ | ✅ | | 跨会话记忆 | ❌ | ✅ | ✅ | | 自动化报告 | ❌ | ✅ | ✅ | | 一键部署 | ❌ | ❌ | ✅ | | 经济实惠 | ✅ | ❌ | ✅ |
标签:Apex, BOF, Python, 威胁情报, 安全, 开发者工具, 插件系统, 攻防研究, 数据泄露, 无后门, 机器学习, 欺骗防御, 版权保护, 蜜罐, 证书利用, 请求拦截, 超时处理, 逆向工具