BruteForceAI

GitHub
1.4k 260 中等 1 次阅读 今天NOASSERTION开发框架图像Agent语言模型
AI 解读 由 AI 自动生成,仅供参考

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
GPU
  • 非必需
  • 支持本地运行 Ollama(依赖本地硬件)或使用云端 Groq API(无需本地 GPU)
  • 若本地运行大模型,具体需求取决于所选模型大小
内存

未说明(取决于是否本地运行 LLM 及模型大小,建议至少 8GB+ 以运行浏览器自动化和小型模型)

依赖
notes1. 必须安装 Playwright 浏览器内核(执行 'playwright install chromium')。2. LLM 后端可选:本地部署 Ollama(需自行下载模型如 llama3.2:3b)或使用云端 Groq API(需 API Key)。3. 工具包含自动更新检查功能,默认启动时连接外部服务器验证版本。4. 数据存储使用 SQLite 数据库。5. 仅限授权测试和教育用途。
python3.8+
playwright
requests
PyYAML
BruteForceAI hero image

快速开始

🤖 BruteForceAI - 基于人工智能的登录暴力破解工具

BruteForceAI Logo

BruteForceAI 横幅 Python 许可证 AI 驱动

先进的 LLM 驱动暴力破解工具,将 AI 智能与自动化登录攻击相结合

功能安装使用方法示例配置许可证


🎯 关于

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(云端)

  1. Groq 控制台 获取 API 密钥
  2. 使用时指定 --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 设置

  1. 在 Discord 服务器设置中创建 webhook
  2. 使用 --discord-webhook 参数输入 webhook URL

Slack 设置

  1. 创建具有入站 webhook 的 Slack 应用程序
  2. 使用 --slack-webhook 参数输入 webhook URL

Teams 设置

  1. 向 Teams 频道添加“入站 Webhook”连接器
  2. 使用 --teams-webhook 参数输入 webhook URL

Telegram 设置

  1. 使用 @BotFather 创建机器人
  2. 获取机器人令牌和聊天 ID
  3. 使用 --telegram-webhook TOKEN --telegram-chat-id CHAT_ID

⚠️ 法律声明

仅用于教育和授权测试

本工具专为以下用途设计:

  • ✅ 授权渗透测试
  • ✅ 安全研究和教育
  • ✅ 测试您自己的应用程序
  • ✅ 具有适当范围的漏洞赏金计划

请勿用于:

  • ❌ 未经授权访问系统
  • ❌ 非法活动
  • ❌ 未经许可攻击系统

用户有责任遵守所有适用的法律和法规。作者对本工具的滥用不承担任何责任。


📋 更改日志

v1.0.0(当前版本)

  • ✨ 初始发布
  • 🧠 基于 LLM 的表单分析
  • ⚡ 多线程攻击
  • 🎭 先进的规避技术
  • 🔔 Webhook 通知
  • 📊 全面的日志记录
  • 🔄 自动更新检查

👨‍💻 关于作者

Mor David - 攻击性安全专家及 AI 安全研究员

我专注于攻击性安全,并将人工智能和**大型语言模型(LLM)**融入渗透测试工作流程。我的专长结合了传统的红队技术与前沿的 AI 技术,以开发下一代安全工具。

🔗 与我联系

🛡️ RootSec 社区

加入我们的网络安全社区,获取最新的攻击性安全、AI 集成和高级渗透测试技术:

🔗 t.me/root_sec

RootSec 是一个由安全专业人士、研究人员和爱好者组成的社区,分享关于以下内容的知识:

  • 高级渗透测试技术
  • 基于 AI 的安全工具
  • 红队方法论
  • 安全研究与开发
  • 行业见解和讨论

📄 许可证

本项目采用非商业许可

条款摘要:

  • 允许:个人使用、教育、研究、授权测试
  • 禁止:商业用途、盈利性再分发、未经授权的攻击
  • 📋 要求:署名、衍生作品需采用相同许可证

完整条款和条件请参阅 LICENSE.md 文件。


🙏 致谢

  • Playwright 团队 - 感谢他们出色的浏览器自动化框架
  • Ollama 项目 - 感谢他们让本地部署 LLM 变得易于实现
  • Groq - 感谢他们提供的高性能 LLM 推理能力
  • 安全社区 - 感谢大家持续的反馈和改进

📊 统计数据

GitHub 星标 GitHub 分叉数


⭐ 如果你觉得这个仓库有用,请给它点个星吧!

Mor David 用心制作 | 加入 RootSec 社区

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|2天前
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|3天前
开发框架图像Agent

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 真正成长为懂上

145.9k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

108.1k|★★☆☆☆|今天
开发框架图像Agent

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 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器

93.4k|★★☆☆☆|2天前
插件开发框架

LLMs-from-scratch

LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备

90.1k|★★★☆☆|2天前
语言模型图像Agent