Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
hush — Regras de segurança portáteis para o limite de ação de agentes de IA | Kitploit
Ferramentas/GitHubGitHub/backbay-labs/hush
Segurança na NuvemDevSecOpsDetecção de SegredosInteligência de AmeaçasSegurança da Cadeia de SuprimentosResposta a IncidentesSegurança de IA
GitHubbackbay-labs/hush

hush

Regras de segurança portáteis para o limite de ação de agentes de IA

Ver Repositório
2313há 1 mêsRevisado pelo Kitploit
Site

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

HushSpec

Especificação aberta e portátil para regras de segurança de agentes de IA

CI License Spec Version crates.io npm PyPI

Especificação · Documentação · Conjuntos de Regras · JSON Schema


HushSpec é um formato de política aberto para regras de segurança de agentes de IA. Ele define um agente pode fazer em tempo de execução, incluindo acesso ao sistema de arquivos, egresso de rede, uso de ferramentas, detecção de segredos e muito mais, sem prescrever esses controles devem ser aplicados. Essa separação torna as políticas portáteis entre runtimes, frameworks e linguagens.

o que
como

v0.1.1-alpha — A especificação principal, todos os quatro SDKs (Rust, TypeScript, Python, Go) e a CLI h2h estão publicados e funcionais. Com eles, você pode analisar, validar, avaliar, mesclar, resolver, detectar, assinar e auditar por meio dos 10 tipos de regras e 3 módulos de extensão. A superfície da API está se estabilizando, mas ainda não está congelada — espere refinamentos antes da v1.0.

Exemplo Rápido

root@kitploit:~
hushspec: "0.1.0"
name: production-agent

rules:
  forbidden_paths:
    patterns:
      - "**/.ssh/**"
      - "**/.aws/**"
      - "/etc/shadow"

  egress:
    allow:
      - "api.openai.com"
      - "*.anthropic.com"
      - "api.github.com"
    default: block

  tool_access:
    block: [shell_exec, run_command]
    require_confirmation: [file_write, git_push]
    default: allow

  secret_patterns:
    patterns:
      - name: aws_key
        pattern: "AKIA[0-9A-Z]{16}"
        severity: critical
    skip_paths: ["**/test/**"]

  shell_commands:
    forbidden_patterns:
      - "rm\\s+-rf\\s+/"
      - "curl.*\\|.*bash"

Conformidade dos SDKs

Todos os quatro SDKs implementam o pipeline completo do HushSpec, da análise e validação até a resolução e avaliação.

CapacidadeRustTypeScriptPythonGo
Análise + Validação (Nível 1)SimSimSimSim
Mesclagem (Nível 2)SimSimSimSim
Resolução (Nível 2+)SimSimSimSim
Avaliação (Nível 3)SimSimSimSim
Trilha de Auditoria (Nível 4)SimSimSimSim
DetecçãoSimSimSimSim
ObservabilidadeSimSimSimSim
Destinos de RecibosSimSimSimSim

Instalação

CLI

MétodoComando
Homebrew (macOS/Linux)brew install backbay-labs/tap/h2h
npmnpm install -g @hushspec/cli (ou npx @hushspec/cli validate policy.yaml)
Cargo (a partir do código-fonte)cargo install hushspec-cli
Binários pré-compiladosGitHub Releases — h2h-<tag>-<target>.tar.gz + SHA256SUMS, com proveniência atestada

Homebrew, npm e binários pré-compilados estarão disponíveis a partir da primeira tag v0.x gerada pelo pipeline de release, assim que o pipeline de release publicar os artefatos, a fórmula do tap e os pacotes npm. Até lá, instale via Cargo.

Todos os métodos instalam o comando h2h. Veja Ferramenta CLI abaixo.

Rust

root@kitploit:~
[dependencies]
hushspec = "0.1"

TypeScript

root@kitploit:~
npm install @hushspec/core

Python

root@kitploit:~
pip install hushspec

Go

root@kitploit:~
go get github.com/backbay-labs/hush/packages/go@main

Primeiros Passos

Rust

root@kitploit:~
use hushspec::HushSpec;

let yaml_str = "hushspec: \"0.1.0\"\nname: example\n";
let spec = HushSpec::parse(yaml_str)?;
let result = hushspec::validate(&spec);
assert!(result.is_valid());

TypeScript

root@kitploit:~
import { parseOrThrow, validate } from '@hushspec/core';

const yamlString = 'hushspec: "0.1.0"\nname: example\n';
const spec = parseOrThrow(yamlString);
const result = validate(spec);
console.log(result.valid); // true

Python

root@kitploit:~
from hushspec import parse_or_raise, validate

yaml_string = 'hushspec: "0.1.0"\nname: example\n'
spec = parse_or_raise(yaml_string)
result = validate(spec)
assert result.is_valid

Go

root@kitploit:~
import (
    "fmt"

    "github.com/backbay-labs/hush/packages/go/hushspec"
)

yamlString := "hushspec: \"0.1.0\"\nname: example\n"
spec, err := hushspec.Parse(yamlString)
if err != nil {
    panic(err)
}
result := hushspec.Validate(spec)
fmt.Println(result.IsValid())

Avaliação

Cada SDK expõe uma função evaluate() que recebe uma spec analisada e uma ação e retorna uma decisão (allow, warn ou deny) além dos detalhes das regras correspondentes.

root@kitploit:~
import { parseOrThrow, evaluate } from '@hushspec/core';

const spec = parseOrThrow(policyYaml);
const result = evaluate(spec, { type: 'egress', target: 'api.openai.com' });
// result.decision === 'allow' | 'warn' | 'deny'
// result.matched_rule === 'egress'
root@kitploit:~
from hushspec import parse_or_raise, evaluate

spec = parse_or_raise(policy_yaml)
result = evaluate(spec, {"type": "egress", "target": "api.openai.com"})
assert result.decision in ("allow", "warn", "deny")

Middleware HushGuard

HushGuard encapsula o carregamento e a avaliação de políticas por trás de uma interface simples de evaluate, check e enforce para código de aplicação.

root@kitploit:~
import { HushGuard } from '@hushspec/core';

const guard = HushGuard.fromFile('./policy.yaml');
guard.enforce({ type: 'tool_call', target: 'bash' }); // throws HushSpecDenied if denied
root@kitploit:~
from hushspec import HushGuard

guard = HushGuard.from_file("./policy.yaml")
guard.enforce({"type": "tool_call", "target": "bash"})  # raises HushSpecDenied if denied

Ferramenta CLI

A CLI h2h cobre o fluxo de trabalho comum de políticas: validar, testar, avaliar e explicar ações individuais, fazer lint, diff, formatar, inicializar, assinar, verificar e acionar o modo de pânico.

root@kitploit:~
# Validate a policy against the HushSpec schema
h2h validate policy.yaml

# Run evaluation test suites
h2h test --fixtures ./tests/

# Evaluate one action and explain the decision
h2h eval policy.yaml --type egress --target api.example.com
h2h explain policy.yaml --type egress --target api.example.com

# Static analysis and linting
h2h lint policy.yaml

# Lint and auto-fix decision-neutral issues
h2h lint policy.yaml --fix

# Compare two policies and show effective decision changes
h2h diff old.yaml new.yaml

# Format policy files canonically
h2h fmt policy.yaml

# Scaffold a new policy project
h2h init --preset default

# Sign a policy with Ed25519
h2h sign policy.yaml --key h2h.key

# Verify a policy signature
h2h verify policy.yaml --key h2h.pub

# Generate a new Ed25519 keypair
h2h keygen

# Emergency override (deny-all kill switch)
h2h panic activate --sentinel /tmp/hushspec.panic
h2h panic deactivate --sentinel /tmp/hushspec.panic

Veja Instalação acima para opções de instalação — Homebrew, npm, Cargo ou binários pré-compilados.

Recibos de Decisão (Trilha de Auditoria)

evaluate_audited() gera recibos de decisão estruturados com rastros de regras, resumos de política e redação opcional de conteúdo. Os recibos estão em conformidade com hushspec-receipt.v0.schema.json e são projetados para suportar ambientes com forte exigência de auditoria, como SOC 2, HIPAA, PCI-DSS e FedRAMP.

root@kitploit:~
import { parseOrThrow, evaluateAudited } from '@hushspec/core';

const spec = parseOrThrow(policyYaml);
const receipt = evaluateAudited(spec, action, {
  enabled: true,
  include_rule_trace: true,
  redact_content: false,
});
// receipt.decision, receipt.rule_evaluations, receipt.policy_summary

Os destinos de recibos (FileReceiptSink, ConsoleReceiptSink, FilteredSink, MultiSink, CallbackSink) estão disponíveis nos quatro SDKs para rotear recibos para armazenamento, registro de logs ou endpoints OTLP.

Pipeline de Detecção

O pipeline de detecção integra verificações de injeção de prompt, jailbreak e exfiltração ao fluxo de avaliação. Detectores de referência baseados em regex acompanham todos os SDKs, e detectores personalizados podem ser registrados por meio do DetectorRegistry.

root@kitploit:~
import { parseOrThrow, evaluateWithDetection, DetectorRegistry } from '@hushspec/core';

const registry = DetectorRegistry.withDefaults();
const result = evaluateWithDetection(spec, action, registry, {
  enabled: true,
  prompt_injection_threshold: 0.5,
});
// result.detection_results contains matched patterns and confidence scores
Adaptadores de Framework

Adaptadores pré-construídos convertem chamadas de ferramentas específicas de frameworks em ações de avaliação do HushSpec.

FrameworkAdaptadorSDK
Claude / AnthropicmapClaudeToolToAction, createSecureToolHandlerTypeScript
OpenAImapOpenAIToolCall, createOpenAIGuardTypeScript
MCP (Model Context Protocol)mapMCPToolCall, createMCPGuardTypeScript
root@kitploit:~
import { HushGuard, mapClaudeToolToAction } from '@hushspec/core';

const guard = HushGuard.fromFile('./policy.yaml');
const action = mapClaudeToolToAction(toolUseBlock);
guard.enforce(action);
Observabilidade

A interface EvaluationObserver e o wrapper ObservableEvaluator emitem eventos estruturados para cada avaliação, carregamento de política e recarregamento de política. Os observadores integrados incluem JsonLineObserver, ConsoleObserver e MetricsCollector.

root@kitploit:~
import { ObservableEvaluator, JsonLineObserver, MetricsCollector } from '@hushspec/core';

const evaluator = new ObservableEvaluator();
evaluator.addObserver(new JsonLineObserver(process.stderr));
evaluator.addObserver(new MetricsCollector());
const result = evaluator.evaluate(spec, action);
Assinatura de Políticas

As políticas podem ser assinadas com chaves Ed25519 e verificadas no momento do carregamento. A CLI fornece os comandos sign, verify e keygen. O formato da assinatura está em conformidade com hushspec-signature.v0.schema.json.

root@kitploit:~
# Generate a keypair
h2h keygen --output-dir mykeys

# Sign a policy (creates policy.yaml.sig)
h2h sign policy.yaml --key mykeys/h2h.key

# Verify the signature
h2h verify policy.yaml --key mykeys/h2h.pub
Substituição de Emergência (Modo de Pânico)

O modo de pânico é um interruptor de emergência deny-all que pode ser ativado imediatamente sem reimplantar políticas. Você pode acioná-lo com um arquivo sentinela, a CLI ou uma chamada de API. Enquanto o modo de pânico estiver ativo, toda avaliação retorna deny.

root@kitploit:~
# Activate panic mode
h2h panic activate --sentinel /tmp/hushspec.panic

# Deactivate
h2h panic deactivate --sentinel /tmp/hushspec.panic
root@kitploit:~
import { activatePanic, deactivatePanic, isPanicActive } from '@hushspec/core';

activatePanic();
// All evaluate() calls now return deny
deactivatePanic();
Carregamento de Políticas e Hot Reload

As políticas podem ser carregadas de arquivos locais, URLs HTTPS (com cache ETag e proteção contra SSRF) ou conjuntos de regras integrados. PolicyWatcher e PolicyPoller suportam hot reload sem reiniciar o processo.

root@kitploit:~
import { PolicyWatcher, HushGuard } from '@hushspec/core';

const guard = HushGuard.fromFile('./policy.yaml');
const watcher = new PolicyWatcher('./policy.yaml', {
  onChange: (newSpec) => guard.swapPolicy(newSpec),
});
watcher.start();

10 Regras Principais

RegraFinalidade
forbidden_pathsBloquear acesso a caminhos sensíveis do sistema de arquivos
path_allowlistAcesso de leitura/escrita/patch baseado em allowlist
egressControle de egresso de rede por domínio
secret_patternsDetectar segredos no conteúdo de arquivos
patch_integrityValidar a segurança do diff (limites de tamanho, padrões proibidos)
shell_commandsBloquear comandos de shell perigosos
tool_accessControlar invocações de ferramentas/MCP
computer_useControlar ações CUA
remote_desktop_channelsControlar canais laterais de área de trabalho remota
input_injectionControlar capacidades de injeção de entrada

Extensões

HushSpec suporta módulos de extensão opcionais para comportamentos de política mais avançados:

ExtensãoFinalidade
PostureMáquina de estados declarativa para capacidades e orçamentos
OriginsProjeção de política com reconhecimento de origem (Slack, GitHub, e-mail, etc.)
DetectionConfiguração de limites para injeção de prompt, jailbreak e inteligência de ameaças
root@kitploit:~
extensions:
  posture:
    initial: standard
    states:
      standard: { capabilities: [file_access, egress] }
      restricted: { capabilities: [file_access] }
    transitions:
      - { from: "*", to: restricted, on: critical_violation }
  detection:
    prompt_injection:
      block_at_or_above: high

Conjuntos de Regras Integrados

Políticas prontas para uso ficam em rulesets/:

Conjunto de RegrasDescrição
defaultSegurança equilibrada para execução de agentes de IA
strictMáxima segurança, permissões mínimas
permissiveAmigável para desenvolvimento, limites flexíveis
ai-agentOtimizado para assistentes de codificação com IA
cicdSegurança para pipelines de CI/CD
remote-desktopSessões de agentes de uso de computador
panicSubstituição de emergência deny-all

Usando com Clawdstrike

Os documentos HushSpec são carregados nativamente no Clawdstrike:

root@kitploit:~
// Auto-detects HushSpec vs Clawdstrike-native format
let policy = clawdstrike::Policy::from_yaml_auto(yaml)?;
root@kitploit:~
# Convert between formats
hush policy migrate policy.yaml --to hushspec

Estrutura do Repositório

root@kitploit:~
spec/              Normative specification, including core and extension docs
schemas/           JSON Schema definitions
crates/            Rust crates
  hushspec/          Core library: parse, validate, merge, resolve, evaluate, detect, sign
  hushspec-cli/      CLI tool
  hushspec-testkit/  Conformance test runner
packages/          Language SDKs for TypeScript, Python, and Go
rulesets/          Built-in security rulesets
fixtures/          Conformance and evaluation fixtures
docs/              mdBook documentation site
generated/         Generated shared SDK contract artifacts
scripts/           Code generation and CI tooling

Princípios de Design

  • Fail-closed: Campos desconhecidos são rejeitados, e documentos inválidos falham com erros explícitos.
  • Stateless: As regras principais são declarações puras, sem estado em tempo de execução.
  • Engine-neutral: A especificação não exige um mecanismo de aplicação, detector ou modelo de plugin específico.
  • Extensível: Posture, Origins e Detection permanecem opcionais em vez de inchar o formato principal.

Especificação

A especificação normativa fica em spec/. As definições de JSON Schema para validação programática estão em schemas/. A documentação completa está em docs/.

Licença

Apache-2.0. Veja LICENSE.

Baixar ferramenta