Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
BrokenHill — Una herramienta de ataque de gradiente de coordenadas codicioso (GCG) lista para producción para modelos de lenguaje grandes (LLMs) | Kitploit
Herramientas/GitHubGitHub/bishopfox/brokenhill
ExplotaciónAprendizaje AutomáticoRed TeamingSeguridad de IAAtaque Adversario
GitHubbishopfox/brokenhill

BrokenHill

Una herramienta de ataque de gradiente de coordenadas codicioso (GCG) lista para producción para modelos de lenguaje grandes (LLMs)

Ver Repositorio
17225hace 1 añoRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
[ Logotipo de Broken Hill ]

Broken Hill

Broken Hill es una herramienta de ataque automatizada, lista para usar y puesta en producción, que genera prompts (solicitudes) manipulados para evadir las restricciones de los modelos de lenguaje de gran tamaño (LLM) utilizando el ataque de gradiente de coordenadas codicioso (GCG, por sus siglas en inglés) descrito en el artículo "Universal and Transferable Adversarial Attacks on Aligned Language Models" de Andy Zou, Zifan Wang, Nicholas Carlini, Milad Nasr, J. Zico Kolter y Matt Fredrikson.

Broken Hill puede generar prompts robustos que logran «jailbreak» (evasión de restricciones) en LLMs configurados de manera diferente al modelo usado para generar los prompts. Por ejemplo:

  • El mismo modelo con más o menos parámetros
    • p. ej., los prompts se generaron con la versión de 2 mil millones de parámetros de Gemma, pero se usan contra una implementación basada en la versión de 7 mil millones de parámetros de Gemma.
  • El mismo modelo con pesos cuantizados en diferentes tipos
    • p. ej., los prompts se generaron con la versión de Phi 3 con pesos almacenados en formato FP16, pero se usan contra la versión predeterminada de ollama de Phi 3 que tiene los pesos cuantizados en formato entero de 4 bits q4_0.
  • El mismo modelo, pero con diferentes ajustes de aleatorización
    • p. ej., una temperatura o semilla aleatoria no predeterminada.
  • Potencialmente incluso un modelo diferente al usado para generar los prompts

Esta herramienta se basa en parte en una versión altamente personalizada de el repositorio llm-attacks asociado con el artículo "Universal and Transferable Adversarial Attacks on Aligned Language Models". También incorpora algunos algoritmos de nanoGCG.

La investigación original de Zou, Wang, Carlini, Nasr, Kolter y Fredrikson se realizó utilizando hardware de gama alta de proveedores de nube/alojamiento con 80 GiB de VRAM, como las Nvidia A100 y H100. Comprar esas GPU suele ser demasiado caro para particulares, y alquilar acceso a ellas puede resultar en una factura elevada.

Nuestro objetivo original era ampliar enormemente la accesibilidad de esta fascinante área de investigación mediante la creación de una herramienta que pudiera realizar el ataque GCG contra la mayor cantidad posible de modelos en una GeForce RTX 4090, que es la GPU de consumo de generación actual con soporte CUDA que incluye la mayor cantidad de VRAM (24 GiB). La RTX 4090 sigue siendo cara, pero comprar una directamente es (al momento de escribir esto) aproximadamente el mismo precio que alquilar una instancia en la nube con una A100 o H100 durante un mes. Además, al menos una pequeña fracción de las personas en el campo de la seguridad de la información ya tienen al menos una RTX 4090 para el craqueo de hashes y/o juegos.

A partir de la versión 0.34, Broken Hill también puede realizar el procesamiento en dispositivos sin hardware CUDA a una velocidad aceptable (aunque reducida en comparación con el rendimiento que proporciona el hardware CUDA), e incluso se puede usar en Mac OS y Windows (aunque se prueba principalmente en Linux). Esto permite que el ataque sea realizado por un público mucho más amplio, y contra modelos mucho más grandes que los que permitían las versiones anteriores.

Documentación

La documentación de Broken Hill está en su propio árbol de directorios debido al volumen de material.

Historial de versiones de Broken Hill

Una publicación de blog de alto nivel que presenta Broken Hill

Página de la herramienta Broken Hill en BishopFox.com

Características

  • Extensa interfaz de línea de comandos
  • Soporta numerosas familias de modelos, muchas de las cuales están disponibles en tamaños lo suficientemente pequeños para ejecutarse en una RTX 4090 (consulte el documento "Model notes" para obtener detalles específicos). Algunos aspectos destacados:
    • La familia APT de Azurro
    • Falcon
    • Gemma (incluidos derivados de terceros, como Vikhr-Gemma-2B-instruct)
    • Gemma 2
    • GLM-4
    • GPT-J, GPT-Neo y GPT-NeoX
    • Guanaco
    • Llama (incluidos derivados de terceros, como Llama-68M-Chat-v1 y alpaca-13b)
    • Llama-2 (incluidos derivados de primera parte y de terceros, como Meta-Llama-Guard-2, Swallow y Youri)
    • Llama-3 (incluidos derivados de primera parte y de terceros, como Llama-Guard-3, Swallow y Youko)
    • MPT
    • Mamba
    • Mistral (incluidos modelos derivados de terceros como Neural Chat de Intel)
    • Mixtral
    • OPT
    • Orca-2
    • Phi-1 hasta Phi-3.5
    • Pythia (incluidos modelos derivados de terceros como el subconjunto basado en Pythia de los modelos OpenAssistant)
    • Qwen 1, 1.5 y 2 (incluidos derivados de terceros, como nekomata-7b-instruction)
    • RedPajama-INCITE
    • SOLAR
    • SmolLM
    • Snowflake Arctic
    • StableLM 1 y 2
    • TinyLlama
    • Vicuna
  • Los resultados se pueden exportar en formato JSON para filtrado/análisis
  • Soporta probar cada iteración de datos adversariales contra el mismo LLM con múltiples ajustes de aleatorización diferentes, para ayudar a eliminar resultados frágiles
  • Respaldo automático del estado en cada iteración, lo que permite reanudar desde un punto de control si se encuentra un error, o continuar realizando iteraciones adicionales después de que termine una prueba.

Planificado para futuras versiones

  • La capacidad de probar o reanalizar resultados existentes (contra otro modelo/configuración, con diferentes reglas de detección de jailbreak, etc.)
    • Permitiría un descubrimiento más directo de contenido adversarial «transferible»
    • Permitiría probar resultados contra modelos que quepan en la memoria del dispositivo, incluso cuando los datos necesarios para el ataque GCG (gradiente, datos de retropropagación, etc.) no quepan
    • Permitiría probar reglas de detección de jailbreak revisadas sin la sobrecarga de volver a ejecutar la generación de contenido
  • Autocomprobaciones más extensas para refinar aún más las plantillas de conversación
  • Modelo de reversión más flexible
  • Reglas de aleatorización configurables para ayudar a generar variaciones más únicas («modo jardín gamma»)
  • Funciones integradas para exportar los datos de resultados para trabajos posteriores (en lugar de usar jq en la versión actual)
  • Mejora de la lógica de detección de jailbreak predeterminada
  • Algoritmo(s) de pérdida adicional(es)
  • La capacidad de operar un clúster de sistemas que ejecuten Broken Hill coordinados por un nodo central
  • Modos de ataque adicionales
  • Internacionalización
Descargar herramienta
  • Incluye autocomprobaciones para ayudar a validar que el ataque está configurado correctamente y producirá resultados útiles
    • Validación de que las conversaciones se proporcionan en el formato para el que fue entrenado el modelo
    • Validación de que el modelo no proporciona la salida solicitada cuando no se incluye contenido adversarial
    • Validación de que el modelo proporciona la salida solicitada cuando se le da un prompt que simula el resultado ideal de un ataque GCG
  • Técnicas adicionales para guiar el curso de la generación de contenido adversarial más allá del valor de pérdida
    • Revertir a resultados de punto máximo (high-water-mark) basados en el recuento de jailbreaks
    • Exigir que el valor de pérdida alcance (o se acerque a) resultados anteriores
  • La capacidad de especificar reglas personalizadas de detección de jailbreak en formato JSON, para hacer que la detección sea más precisa para los casos de prueba
    • Reglas mejoradas de detección de jailbreak para el método predeterminado desarrollado por Zou, Wang, Carlini, Nasr, Kolter y Fredrikson
  • Listas de denegación preconfiguradas opcionales para ayudar a evitar generar resultados adversariales que contengan insultos, groserías, etc.
  • Filtrado y otros controles para mejorar los resultados
  • Numerosas opciones experimentales para probar variaciones del ataque GCG
  • Un montón de otras cosas