Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
BrokenHill — 面向大型语言模型(LLMs)的生产级贪心坐标梯度(GCG)攻击工具 | Kitploit
工具/GitHubGitHub/bishopfox/brokenhill
漏洞利用机器学习红队AI 安全对抗性攻击
GitHubbishopfox/brokenhill

BrokenHill

面向大型语言模型(LLMs)的生产级贪心坐标梯度(GCG)攻击工具

查看仓库
1722541年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
[ Broken Hill 标志 ]

Broken Hill

Broken Hill 是一款已产品化、开箱即用的自动化攻击工具,它使用贪婪坐标梯度(greedy coordinate gradient, GCG)攻击生成精心构造的提示词,以绕过大型语言模型(LLM)中的限制。该攻击方法详见 Andy Zou、Zifan Wang、Nicholas Carlini、Milad Nasr、J. Zico Kolter 和 Matt Fredrikson 的论文《Universal and Transferable Adversarial Attacks on Aligned Language Models》。

Broken Hill 能够生成稳健的提示词,成功越狱(jailbreak)那些配置与生成提示词所用模型不同的 LLM。例如:

  • 参数数量更多或更少的同一模型
    • 例如,提示词是使用 Gemma 的 20 亿参数版本生成的,但被用于攻击基于 Gemma 70 亿参数版本的实现。
  • 权重被量化为不同数据类型的同一模型
    • 例如,提示词是使用权重以 FP16 格式存储的 Phi 3 版本生成的,但被用于攻击 ollama 默认版本(权重被量化为 4 位 q4_0 整数格式)的 Phi 3。
  • 随机化设置不同的同一模型
    • 例如,非默认的 temperature 或随机种子。
  • 甚至可能是与生成提示词所用模型不同的模型

该工具部分基于 与《Universal and Transferable Adversarial Attacks on Aligned Language Models》论文相关的 llm-attacks 仓库 的一个深度定制版本,并整合了 nanoGCG 中的一些算法。

Zou、Wang、Carlini、Nasr、Kolter 和 Fredrikson 的原始研究是在配备 80GiB 显存(VRAM)的高端云/托管服务商硬件上进行的,例如 Nvidia A100 和 H100。对个人而言,购买这些 GPU 通常过于昂贵,而租用其访问权限也可能产生高额账单。

我们最初的目标是大幅提升这一迷人研究领域的可及性:打造一款工具,使其能够在 GeForce RTX 4090 上对尽可能多的模型执行 GCG 攻击。RTX 4090 是当前一代支持 CUDA 的消费级 GPU 中显存最大(24GiB)的一款。RTX 4090 仍然昂贵,但直接购买一块的价格(截至本文撰稿时)与租用一台配备 A100 或 H100 的云实例一个月大致相当。此外,在信息安全领域,至少有一小部分人已经拥有一块或多块用于哈希破解和/或游戏的 RTX 4090。

从 0.34 版本开始,Broken Hill 还可以在没有 CUDA 硬件的设备上以可接受的速度进行处理(尽管性能相比 CUDA 硬件有所降低),甚至可以在 Mac OS 和 Windows 上使用(不过主要在 Linux 上进行测试)。这使得攻击可以由更广泛的受众执行,并且可以攻击比先前版本所允许的更大规模的模型。

文档

Broken Hill 的文档因材料量庞大,单独存放于其自身的目录树中。

Broken Hill 版本历史

一篇从宏观层面介绍 Broken Hill 的博客文章

BishopFox.com 上的 Broken Hill 工具页面

功能特性

  • 丰富的命令行界面
  • 支持众多模型家族,其中许多提供足够小的尺寸,可在 RTX 4090 上运行(具体细节请参阅「Model notes」文档)。部分亮点包括:
    • Azurro 的 APT 模型家族
    • Falcon
    • Gemma(包括第三方衍生模型,例如 Vikhr-Gemma-2B-instruct)
    • Gemma 2
    • GLM-4
    • GPT-J、GPT-Neo 和 GPT-NeoX
    • Guanaco
    • Llama(包括第三方衍生模型,例如 Llama-68M-Chat-v1 和 alpaca-13b)
    • Llama-2(包括第一方和第三方衍生模型,例如 Meta-Llama-Guard-2、Swallow 和 Youri)
    • Llama-3(包括第一方和第三方衍生模型,例如 Llama-Guard-3、Swallow 和 Youko)
    • MPT
    • Mamba
    • Mistral(包括第三方衍生模型,例如 Intel 的 Neural Chat)
    • Mixtral
    • OPT
    • Orca-2
    • Phi-1 至 Phi-3.5
    • Pythia(包括第三方衍生模型,例如 OpenAssistant 模型中基于 Pythia 的子集)
    • Qwen 1、1.5 和 2(包括第三方衍生模型,例如 nekomata-7b-instruction)
    • RedPajama-INCITE
    • SOLAR
    • SmolLM
    • Snowflake Arctic
    • StableLM 1 和 2
    • TinyLlama
    • Vicuna
  • 结果可以 JSON 格式输出,便于筛选/分析
  • 支持在多种不同的随机化设置下,针对同一个 LLM 测试每一轮迭代的对抗性数据,以帮助剔除脆弱的结果
  • 每一轮迭代自动备份状态,允许在遇到错误时从检查点恢复,或在测试结束后继续执行更多迭代。
  • 内置自测功能,帮助验证攻击配置是否正确,以及是否会产生有用的结果
    • 验证对话是否以模型训练时使用的格式提供
    • 验证在不包含对抗性内容时,模型不会提供所请求的输出
    • 验证在给定模拟 GCG 攻击理想结果的提示词时,模型能够提供所请求的输出
  • 除损失值之外,用于引导对抗性内容生成方向的附加技术
    • 基于越狱次数回滚到最高水位(high-water-mark)结果
    • 要求损失值达到(或接近)之前的结果
  • 支持以 JSON 格式指定自定义越狱检测规则,使测试用例的检测更加准确
    • 为 Zou、Wang、Carlini、Nasr、Kolter 和 Fredrikson 开发的默认方法提供改进的越狱检测规则
  • 可选的预配置拒绝列表(denylist),帮助避免生成包含侮辱性词语、脏话等内容的对抗性结果
  • 过滤及其他用于改善结果的控件
  • 大量用于测试 GCG 攻击变体的实验性选项
  • 以及其他各种功能

未来版本计划

  • 能够测试或重新分析现有结果(针对其他模型/配置、使用不同的越狱检测规则等)
    • 将使「可迁移」对抗性内容的发现更加直接
    • 将允许在能够装入设备内存的模型上测试结果,即使 GCG 攻击所需的数据(梯度、反向传播数据等)无法装入
    • 将允许在不重新运行内容生成的情况下,测试修订后的越狱检测规则
  • 更全面的自测,以进一步优化对话模板
  • 更灵活的回滚模型
  • 可配置的随机化规则,帮助生成更多独特变体("Gamma garden mode")
  • 内置输出结果数据供后续工作使用的功能(而不是在当前版本中使用 jq)
  • 改进的默认越狱检测逻辑
  • 额外的损失算法
  • 支持运行由中心节点协调的 Broken Hill 系统集群
  • 更多的攻击模式
  • 国际化
下载工具