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
autoguardrails — Andamio de investigación de alineación (estilo autoresearch) para barreras de seguridad de LLM: búsqueda sobre una única superficie policy.md | Kitploit
Herramientas/GitHubGitHub/santanderai/autoguardrails
Aprendizaje y EducaciónRed TeamingSeguridad de IAAtaque Adversario
GitHubsantanderai/autoguardrails

autoguardrails

Andamio de investigación de alineación (estilo autoresearch) para barreras de seguridad de LLM: búsqueda sobre una única superficie policy.md

Ver Repositorio
12935hace 1 mesRevisado 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
Sitio web

autoguardrails

Código abierto por Santander AI Lab. Una biblioteca / arnés de evaluación de investigación en seguridad de LLM / IA (estilo autoresearch): busca sobre una única superficie mutable policy.md para minimizar la tasa de éxito de ataques (ASR) frente a un conjunto de evaluación fijo, con un umbral de paso benigno.

License: Apache 2.0 Python 3.10+ CI CodeQL codecov OpenSSF Scorecard Code style: black Ruff Conventional Commits Parte de Santander AI Open Source — proyectos de IA de código abierto de Banco Santander (santander.com).

autoguardrails es un pequeño andamio de investigación de alineación inspirado en el autoresearch de Karpathy.

En lugar de buscar sobre train.py, este repositorio busca sobre policy.md. La idea es la misma:

  • mantener la superficie mutable pequeña
  • mantener el evaluador fijo
  • ejecutar bajo un presupuesto de tiempo fijo
  • comparar candidatos con una métrica principal
  • registrar cada decisión de mantener o descartar

En este repositorio, la métrica principal es la tasa de éxito de ataques (ASR, cuanto menor mejor), con un umbral de paso benigno para que el sistema no pueda ganar rechazándolo todo.

Lo que más importa

Para la experimentación diaria, tres archivos importan más:

  • program.md: las instrucciones humanas para el bucle
  • policy.md: el único archivo que debes editar entre ejecuciones
  • results.tsv: el registro de ejecución de solo adición

Todo lo demás es código de arnés fijo o datos de evaluación fijos.

Contrato de investigación actual

  • Superficie mutable: policy.md
  • Conjunto fijo: eval_suite.jsonl
  • Indicación de juez fija: judge_prompt.md
  • Arnés fijo: autoguardrails/
  • Regla de aceptación: mantener un candidato solo si ASR mejora y el paso benigno no cae más de 2 puntos porcentuales
  • Presupuesto de tiempo: fijado por la configuración del arnés, actualmente 5 minutos por pase de evaluación

Si deseas un modelo mental más cercano al autoresearch original, piensa en autoguardrails/ como la capa auxiliar fija y policy.md como el único archivo bajo búsqueda.

Inicio rápido

Ejecuta desde la raíz del repositorio.

  1. Registra una línea base.
root@kitploit:~
python -m autoguardrails baseline --reset --repeat 2 --notes "initial baseline"
  1. Edita solo policy.md.

  2. Puntúa el nuevo candidato.

root@kitploit:~
python -m autoguardrails candidate --repeat 2 --notes "cover jailbreak and obfuscation"
  1. Inspecciona el resultado mantenido actual.
root@kitploit:~
python -m autoguardrails status
  1. Inspecciona el registro completo.
root@kitploit:~
cat results.tsv

Si un candidato es rechazado, el arnés restaura policy.md a la última versión aceptada automáticamente.

Envoltorio de shell

Si prefieres un único punto de entrada, usa run_autoguardrails.sh:

root@kitploit:~
sh run_autoguardrails.sh status
sh run_autoguardrails.sh evaluate
sh run_autoguardrails.sh baseline "initial baseline" 2
sh run_autoguardrails.sh candidate "cover jailbreak and obfuscation" 2

En Windows, ejecuta el envoltorio desde Git Bash u otro shell compatible con POSIX.

Configuración de modelo real

La configuración predeterminada utiliza un stub local determinista para que el repositorio funcione sin conexión. Para ejecutar experimentos reales, apunta el modelo objetivo y el modelo juez a endpoints compatibles con OpenAI.

Variables del modelo objetivo:

  • AUTOGUARDRAILS_TARGET_PROVIDER=openai_compatible
  • AUTOGUARDRAILS_TARGET_MODEL
  • AUTOGUARDRAILS_TARGET_API_BASE
  • AUTOGUARDRAILS_TARGET_API_KEY

Variables del modelo juez:

  • AUTOGUARDRAILS_JUDGE_PROVIDER=openai_compatible
  • AUTOGUARDRAILS_JUDGE_MODEL
  • AUTOGUARDRAILS_JUDGE_API_BASE
  • AUTOGUARDRAILS_JUDGE_API_KEY

Ejemplo:

root@kitploit:~
export AUTOGUARDRAILS_TARGET_PROVIDER=openai_compatible
export AUTOGUARDRAILS_TARGET_MODEL=gpt-4.1-mini
export AUTOGUARDRAILS_TARGET_API_BASE=https://your-endpoint.example/v1
export AUTOGUARDRAILS_TARGET_API_KEY=your-target-key

export AUTOGUARDRAILS_JUDGE_PROVIDER=openai_compatible
export AUTOGUARDRAILS_JUDGE_MODEL=gpt-4.1-mini
export AUTOGUARDRAILS_JUDGE_API_BASE=https://your-endpoint.example/v1
export AUTOGUARDRAILS_JUDGE_API_KEY=your-judge-key

python -m autoguardrails baseline --reset --repeat 2 --notes "real-model baseline"

Usa una configuración de juez congelada durante una serie de ejecuciones. No cambies las indicaciones del juez ni los modelos de juez a mitad del experimento.

Patrón de iteración típico

Un ciclo de emulación fuera de línea simple se ve así:

  1. Registra la línea base.
  2. Agrega una familia de cambios de política a policy.md.
  3. Ejecuta candidate.
  4. Mantén el cambio solo si el arnés lo acepta.
  5. Repite con un nuevo cambio a la vez.

Un ejemplo de cambio de candidato que mejora el stub incluido es agregar manejo explícito para:

  • fraseo de jailbreak como 'ignora instrucciones anteriores', 'juego de roles' y 'modo desarrollador'
  • solicitudes de ofuscación como traducción, base64, rot13, formato solo JSON o conversión de esquema

Eso te da una primera curva de mejora realista sin cambiar el evaluador.

Estructura del repositorio

  • program.md: instrucciones y restricciones del experimento
  • policy.md: política de guardarraíl mutable bajo búsqueda
  • judge_prompt.md: indicación de juez congelada
  • eval_suite.jsonl: casos de evaluación fijos de ataque y benignos
  • results.tsv: registro de ejecución
  • run_autoguardrails.sh: envoltorio de conveniencia alrededor de la CLI
  • autoguardrails/: arnés Python fijo
  • tests/: pruebas de regresión y seguridad para el arnés

Consulta autoguardrails/README.md para la arquitectura del código y tests/README.md para la estrategia de pruebas.

Notas de seguridad

  • Este andamio es intencionalmente de una sola vuelta y de alcance limitado.
  • No modela herramientas, acceso a archivos ni acciones de agentes de múltiples pasos.
  • El stub incluido es solo para verificación del arnés; no es un modelo de seguridad realista.
  • El conjunto de evaluación está fijo por diseño. Si lo cambias, inicia un nuevo linaje de experimento en lugar de comparar con resultados antiguos.

Requisitos

  • Python 3.10+
  • Sin dependencias de tiempo de ejecución de terceros — el arnés está construido enteramente en la biblioteca estándar de Python y se ejecuta sin conexión por defecto.
  • Opcional, solo para desarrollo: ruff, black, mypy, pytest, pytest-cov (consulta CONTRIBUTING.md).
  • Opcional, para experimentos con modelo real: acceso a un endpoint de completaciones de chat compatible con OpenAI (configurado mediante las variables de entorno AUTOGUARDRAILS_* descritas anteriormente).

Contribuciones

¡Las contribuciones son bienvenidas! Por favor, lee nuestras Guías de Contribución y Código de Conducta antes de comenzar.

  • Reporta errores y solicita funciones a través de GitHub Issues.
  • Los contribuyentes externos firman el CLA (gestionado automáticamente por el bot CLA Assistant en tu primer PR).
  • Ejecuta ruff check ., black --check ., mypy autoguardrails y pytest antes de abrir un PR.
  • Respeta el contrato de investigación: policy.md es la única superficie mutable; eval_suite.jsonl y judge_prompt.md están congelados.

Seguridad

Por favor, reporta las vulnerabilidades de seguridad de manera responsable. Consulta nuestra Política de Seguridad para saber cómo reportar (no abras un issue público para vulnerabilidades). Contacto: [email protected] o usa GitHub Security Advisories.

Aviso legal

Este software es un proyecto de código abierto del Santander AI Lab, proporcionado "tal cual" bajo su licencia, sin garantías ni condiciones de ningún tipo. No es un producto o servicio oficial de Banco Santander, no conlleva ningún compromiso de soporte de producción y no constituye asesoramiento financiero, legal o profesional.

"Santander" y su logotipo son marcas registradas de Banco Santander, S.A. La licencia del proyecto no otorga ningún derecho para usarlos más allá de la atribución factual.

Si crees que has encontrado una vulnerabilidad de seguridad, sigue nuestra política de seguridad — no abras un issue público. Eres responsable de evaluar la idoneidad de este software para tu caso de uso y de mantener tus propias implementaciones actualizadas.

Licencia

Este proyecto está licenciado bajo la Apache License 2.0 — consulta los archivos LICENSE y NOTICE para más detalles.

root@kitploit:~
Copyright (c) 2026 Santander Group
SPDX-License-Identifier: Apache-2.0

Citación

Si usas autoguardrails en tu investigación, por favor cítalo:

root@kitploit:~
@software{autoguardrails2026,
  author  = {{Santander AI Lab}},
  title   = {autoguardrails: an autoresearch-style guardrail policy loop},
  year    = {2026},
  url     = {https://github.com/SantanderAI/autoguardrails},
  license = {Apache-2.0}
}
Descargar herramienta