BruteForceAI
BruteForceAI 是一款专为渗透测试设计的高级自动化登录攻击工具,旨在通过引入大语言模型(LLM)来革新传统的暴力破解方式。它主要解决了传统工具在面对复杂或动态网页时,难以自动精准识别登录表单元素的问题,同时通过模拟人类行为模式有效规避基础的安全检测。
该工具适合网络安全研究人员、渗透测试工程师及具备相关技术背景的开发人员使用,用于评估系统认证机制的健壮性。其核心亮点在于独特的"AI 驱动表单分析”:首先利用本地(如 Ollama)或云端(如 Groq)的大模型智能分析 HTML 内容,自动定位登录框及选择器;随后基于这些信息进行多线程攻击。此外,BruteForceAI 还具备拟人化操作特征,包括随机延迟抖动、User-Agent 轮换及代理支持,并集成了实时通知与详细的日志记录功能,帮助专业人员高效、智能地完成安全审计任务。
使用场景
某安全团队在对遗留系统进行授权渗透测试时,面临登录表单结构复杂且反爬机制严格的挑战。
没有 BruteForceAI 时
- 测试人员需手动分析混淆的 HTML 代码来定位登录框选择器,耗时且容易因页面微调而失效。
- 传统爆破工具采用固定频率请求,极易触发网站的速率限制或防火墙拦截,导致 IP 被封禁。
- 缺乏智能判断能力,无法区分“密码错误”与“表单结构变更”,产生大量无效日志和误报。
- 多线程执行时缺乏拟人化延迟,流量特征过于机械,容易被行为分析系统识别为机器人攻击。
- 发现有效凭证后无实时通知机制,测试人员必须持续监控终端,难以并行处理其他任务。
使用 BruteForceAI 后
- BruteForceAI 利用 LLM 自动解析页面 DOM 结构,精准识别动态变化的登录表单元素,无需人工干预。
- 内置拟人化计时器和随机 User-Agent 轮换功能,模拟真实用户操作节奏,成功绕过常规风控策略。
- 智能检测页面响应变化,自动验证爆破结果并过滤重复尝试,确保日志清晰且准确。
- 支持高度可配的多线程并发与同步延迟,在保持高速攻击的同时维持低特征的流量模式。
- 一旦匹配到正确凭证,立即通过 Discord 或 Slack 发送 webhook 通知,并自动停止攻击以保存现场。
BruteForceAI 通过将 AI 的语义理解能力融入自动化攻击流程,显著提升了复杂场景下授权渗透测试的效率与成功率。
运行环境要求
- Linux
- macOS
- Windows
- 非必需
- 支持本地运行 Ollama(依赖本地硬件)或使用云端 Groq API(无需本地 GPU)
- 若本地运行大模型,具体需求取决于所选模型大小
未说明(取决于是否本地运行 LLM 及模型大小,建议至少 8GB+ 以运行浏览器自动化和小型模型)

快速开始
🤖 BruteForceAI - 基于人工智能的登录暴力破解工具
🎯 关于
BruteForceAI 是一款先进的渗透测试工具,通过集成大型语言模型(LLM)进行智能表单分析,彻底革新了传统的暴力破解攻击。该工具能够自动利用 AI 识别登录表单的选择器,然后以类人行为模式执行复杂的多线程攻击。
🧠 LLM 驱动的表单分析
- 阶段 1(AI 分析):LLM 分析 HTML 内容以识别登录表单元素和选择器
- 阶段 2(智能攻击):使用 AI 发现的选择器执行智能暴力破解攻击
🚀 高级攻击特性
- 多线程执行并带有同步延迟
- 暴力破解与密码喷洒两种攻击模式
- 类人定时机制,包含抖动和随机化
- User-Agent 轮换,以更好地规避检测
- Webhook 通知(Discord、Slack、Teams、Telegram)
- 全面的日志记录,采用 SQLite 数据库
🌟 星标历史
✨ 功能
🔍 智能分析
- LLM 驱动的表单选择器识别(Ollama/Groq)
- 自动重试并结合反馈学习
- DOM 变化检测用于成功验证
- 智能 HTML 内容提取
⚡ 高级攻击
- 暴力破解模式:尝试所有用户名/密码组合
- 密码喷洒模式:对每个密码测试所有用户名
- 多线程执行(1–100+ 线程)
- 同一用户尝试之间的同步延迟
🎭 规避技术
- 随机 User-Agent 轮换
- 可配置的带抖动延迟
- 类人定时模式
- 支持代理
- 浏览器可见性控制
📊 监控与通知
- 实时 Webhook 通知成功事件
- 全面的 SQLite 日志记录
- 详细的时间戳输出
- 第一组有效凭据出现后即退出
- 跳过已存在的尝试(防止重复)
🛠️ 操作特性
- 输出可捕获到文件
- 彩色终端界面
- 网络错误重试机制
- 强制重试现有尝试
- 数据库管理工具
- 自动检查更新,从 mordavid.com 获取
🔧 安装
先决条件
# Python 3.8 或更高版本
python --version
# 安装 Playwright 浏览器
playwright install chromium
安装依赖
pip install -r requirements.txt
所需包:
playwright- 浏览器自动化requests- HTTP 请求PyYAML- YAML 解析,用于检查更新
LLM 设置
选项 1:Ollama(本地)
# 安装 Ollama
curl -fsSL https://ollama.ai/install.sh | sh
# 拉取推荐模型
ollama pull llama3.2:3b
选项 2:Groq(云端)
- 从 Groq 控制台 获取 API 密钥
- 使用时指定
--llm-provider groq --llm-api-key YOUR_KEY
🧠 模型选择与性能
推荐模型按提供商划分
Ollama(本地):
llama3.2:3b- 默认,速度与质量平衡良好llama3.2:1b- 最快,小型模型适合快速分析qwen2.5:3b- 替代方案,性能不错
Groq(云端):
llama-3.3-70b-versatile- 默认且最佳 - 最新模型,质量卓越(1 次尝试)llama3-70b-8192- 快速可靠的替代方案(1 次尝试)gemma2-9b-it- 轻量级选项,适用于简单表单(1 次尝试)llama-3.1-8b-instant- ⚠️ 不推荐(限流问题,需 3 次以上尝试)
性能提示
# 最佳质量(推荐用于复杂表单)
python main.py analyze --urls targets.txt --llm-provider groq --llm-model llama-3.3-70b-versatile --llm-api-key YOUR_KEY
# 快速可靠
python main.py analyze --urls targets.txt --llm-provider groq --llm-model llama3-70b-8192 --llm-api-key YOUR_KEY
# 轻量级,适用于简单表单
python main.py analyze --urls targets.txt --llm-provider groq --llm-model gemma2-9b-it --llm-api-key YOUR_KEY
# 本地处理(无需 API 密钥)
python main.py analyze --urls targets.txt --llm-provider ollama --llm-model llama3.2:3b
📖 使用方法
基本命令
阶段 1:分析登录表单
python main.py analyze --urls urls.txt --llm-provider ollama
阶段 2:执行攻击
python main.py attack --urls urls.txt --usernames users.txt --passwords passwords.txt --threads 10
命令结构
python main.py <命令> [选项]
可用命令
analyze- 使用 LLM 分析登录表单attack- 执行暴力破解攻击clean-db- 清理数据库表check-updates- 检查软件更新
🎯 示例
1. 完整工作流程
# 步骤 1:分析表单
python main.py analyze --urls targets.txt --llm-provider ollama --llm-model llama3.2:3b
# 步骤 2:以 20 个线程进行攻击
python main.py attack --urls targets.txt --usernames users.txt --passwords passwords.txt --threads 20 --delay 5 --jitter 2
2. 高级攻击配置
python main.py attack \
--urls targets.txt \
--usernames users.txt \
--passwords passwords.txt \
--mode passwordspray \
--threads 15 \
--delay 10 \
--jitter 3 \
--success-exit \
--user-agents user_agents.txt \
--verbose \
--output results.txt
3. 带 Webhook 通知
python main.py attack \
--urls targets.txt \
--usernames users.txt \
--passwords passwords.txt \
--discord-webhook "https://discord.com/api/webhooks/..." \
--slack-webhook "https://hooks.slack.com/services/..." \
--threads 10
4. 浏览器调试
python main.py analyze \
--urls targets.txt \
--show-browser \
--browser-wait 5 \
--debug \
--llm-provider ollama
5. 检查更新
# 检查软件更新
python main.py check-updates
# 将结果输出到文件
python main.py check-updates --output update_check.txt
手动检查(详细)
# 手动检查更新(与自动检查相同,但可保存到文件)
python main.py check-updates
# 将结果输出到文件
python main.py check-updates --output update_check.txt
跳过版本检查
# 完全跳过版本检查以加快启动速度
python main.py analyze --urls targets.txt --skip-version-check
python main.py attack --urls targets.txt --usernames users.txt --passwords passwords.txt --skip-version-check
# 也可以作为全局标志(在子命令之前使用)
python main.py --skip-version-check analyze --urls targets.txt
⚙️ 配置选项
分析选项
| 参数 | 描述 | 默认值 |
|---|---|---|
--llm-provider |
LLM 提供商(ollama/groq) | ollama |
--llm-model |
模型名称 | llama3.2:3b (ollama), llama-3.3-70b-versatile (groq) |
--llm-api-key |
Groq 的 API 密钥 | 无 |
--selector-retry |
选择器重试次数 | 10 |
--force-reanalyze |
强制重新分析 | False |
攻击选项
| 参数 | 描述 | 默认值 |
|---|---|---|
--mode |
攻击模式(暴力破解/密码喷洒) | 暴力破解 |
--threads |
线程数 | 1 |
--delay |
尝试之间的延迟(秒) | 0 |
--jitter |
随机抖动(秒) | 0 |
--success-exit |
第一次成功后停止 | False |
--force-retry |
重试现有尝试 | False |
检测选项
| 参数 | 描述 | 默认值 |
|---|---|---|
--dom-threshold |
DOM 差异阈值 | 100 |
--retry-attempts |
网络重试次数 | 3 |
避免检测选项
| 参数 | 描述 | 默认值 |
|---|---|---|
--user-agents |
User-Agent 文件 | 无 |
--proxy |
代理服务器 | 无 |
--show-browser |
显示浏览器窗口 | False |
--browser-wait |
可见时的等待时间 | 0 |
输出选项
| 参数 | 描述 | 默认值 |
|---|---|---|
--verbose |
详细的时间戳 | False |
--debug |
调试信息 | False |
--output |
将输出保存到文件 | 无 |
--no-color |
禁用颜色 | False |
Webhook 选项
| 参数 | 描述 |
|---|---|
--discord-webhook |
Discord webhook URL |
--slack-webhook |
Slack webhook URL |
--teams-webhook |
Teams webhook URL |
--telegram-webhook |
Telegram bot token |
--telegram-chat-id |
Telegram chat ID |
🔄 更新管理
BruteForceAI 包含简单的更新检查功能,以便让您及时了解新版本。
自动检查
- 每次工具启动时都会检查更新
- 显示一行状态:要么是“✅ 已更新”,要么是“🔄 有可用更新”
- 快速 3 秒超时——不会造成延迟
- 静默处理网络故障(不显示错误消息)
- 可跳过:使用
--skip-version-check标志
手动检查(详细)
# 手动检查更新(与自动检查相同,但可以保存到文件)
python main.py check-updates
# 带输出到文件的检查
python main.py check-updates --output update_check.txt
更新信息
- 已更新:
✅ BruteForceAI v1.0.0 已更新 - 有更新:
🔄 有更新:v1.0.0 → v1.1.0 | 下载:https://github.com/...
性能
- 超时:最多 3 秒
- 无延迟:如果网络不可用则立即完成
- 无冗余信息:每次检查只显示一行简单信息
版本来源
更新会从以下地址检查:https://mordavid.com/md_versions.yaml
🗄️ 数据库架构
BruteForceAI 使用 SQLite 数据库 (bruteforce.db),包含两个主要表:
form_analysis
存储每个 URL 的 LLM 分析结果。
brute_force_attempts
记录所有攻击尝试及其结果和元数据。
数据库管理
# 清除所有数据
python main.py clean-db
# 查看数据库
sqlite3 bruteforce.db
.tables
.schema
🔔 Webhook 集成
Discord 设置
- 在 Discord 服务器设置中创建 webhook
- 使用
--discord-webhook参数输入 webhook URL
Slack 设置
- 创建具有入站 webhook 的 Slack 应用程序
- 使用
--slack-webhook参数输入 webhook URL
Teams 设置
- 向 Teams 频道添加“入站 Webhook”连接器
- 使用
--teams-webhook参数输入 webhook URL
Telegram 设置
- 使用 @BotFather 创建机器人
- 获取机器人令牌和聊天 ID
- 使用
--telegram-webhook TOKEN --telegram-chat-id CHAT_ID
⚠️ 法律声明
仅用于教育和授权测试
本工具专为以下用途设计:
- ✅ 授权渗透测试
- ✅ 安全研究和教育
- ✅ 测试您自己的应用程序
- ✅ 具有适当范围的漏洞赏金计划
请勿用于:
- ❌ 未经授权访问系统
- ❌ 非法活动
- ❌ 未经许可攻击系统
用户有责任遵守所有适用的法律和法规。作者对本工具的滥用不承担任何责任。
📋 更改日志
v1.0.0(当前版本)
- ✨ 初始发布
- 🧠 基于 LLM 的表单分析
- ⚡ 多线程攻击
- 🎭 先进的规避技术
- 🔔 Webhook 通知
- 📊 全面的日志记录
- 🔄 自动更新检查
👨💻 关于作者
Mor David - 攻击性安全专家及 AI 安全研究员
我专注于攻击性安全,并将人工智能和**大型语言模型(LLM)**融入渗透测试工作流程。我的专长结合了传统的红队技术与前沿的 AI 技术,以开发下一代安全工具。
🔗 与我联系
- LinkedIn: linkedin.com/in/mor-david-cyber
- 网站: www.mordavid.com
🛡️ RootSec 社区
加入我们的网络安全社区,获取最新的攻击性安全、AI 集成和高级渗透测试技术:
RootSec 是一个由安全专业人士、研究人员和爱好者组成的社区,分享关于以下内容的知识:
- 高级渗透测试技术
- 基于 AI 的安全工具
- 红队方法论
- 安全研究与开发
- 行业见解和讨论
📄 许可证
本项目采用非商业许可。
条款摘要:
- ✅ 允许:个人使用、教育、研究、授权测试
- ❌ 禁止:商业用途、盈利性再分发、未经授权的攻击
- 📋 要求:署名、衍生作品需采用相同许可证
完整条款和条件请参阅 LICENSE.md 文件。
🙏 致谢
- Playwright 团队 - 感谢他们出色的浏览器自动化框架
- Ollama 项目 - 感谢他们让本地部署 LLM 变得易于实现
- Groq - 感谢他们提供的高性能 LLM 推理能力
- 安全社区 - 感谢大家持续的反馈和改进
📊 统计数据
⭐ 如果你觉得这个仓库有用,请给它点个星吧!
由 Mor David 用心制作 | 加入 RootSec 社区
相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
markitdown
MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器
LLMs-from-scratch
LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备
