Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
hush — Tragbare Sicherheitsregeln für die Aktionsgrenze von KI-Agenten | Kitploit
Tools/GitHubGitHub/backbay-labs/hush
Cloud-SicherheitDevSecOpsSecret-ErkennungBedrohungsanalyseLieferkettensicherheitIncident ResponseKI-Sicherheit
GitHubbackbay-labs/hush

hush

Tragbare Sicherheitsregeln für die Aktionsgrenze von KI-Agenten

Repository anzeigen
231vor 1 MonatVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Webseite

HushSpec

Portable, offene Spezifikation für Sicherheitsregeln von KI-Agenten

CI License Spec Version crates.io npm PyPI

Spezifikation · Dokumentation · Regelsätze · JSON-Schema


HushSpec ist ein offenes Policy-Format für Sicherheitsregeln von KI-Agenten. Es definiert was ein Agent zur Laufzeit tun darf – einschließlich Dateisystemzugriff, Netzwerk-Egress, Tool-Nutzung, Erkennung von Geheimnissen und mehr – ohne vorzuschreiben, wie diese Kontrollen durchgesetzt werden müssen. Diese Trennung macht Policies über Laufzeitumgebungen, Frameworks und Sprachen hinweg portabel.

v0.1.1-alpha — Die Kern-Spezifikation, alle vier SDKs (Rust, TypeScript, Python, Go) und die h2h-CLI sind veröffentlicht und funktionsfähig. Arbeite dich per Parsen, Validieren, Bewerten, Zusammenführen, Auflösen, Erkennen, Signieren und Prüfen durch 10 Regeltypen und 3 Erweiterungsmodule. Die API-Oberfläche stabilisiert sich, ist aber noch nicht eingefroren — vor v1.0 sind weitere Verfeinerungen zu erwarten.

Schnellbeispiel

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"

SDK-Konformität

Alle vier SDKs implementieren die vollständige HushSpec-Pipeline, vom Parsen und Validieren über die Auflösung bis zur Auswertung.

Installation

CLI

Homebrew, npm und vorgefertigte Binärdateien werden ab dem ersten von der Release-Pipeline erstellten v0.x-Tag verfügbar, sobald die Release-Pipeline Artefakte, die Tap-Formel und die npm-Pakete veröffentlicht. Bis dahin über Cargo installieren.

Alle Methoden installieren den Befehl h2h. Siehe CLI-Tool unten.

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

Erste Schritte

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

Auswertung

Jedes SDK stellt eine evaluate()-Funktion bereit, die eine geparste Spezifikation und eine Aktion entgegennimmt und dann eine Entscheidung (allow, warn oder deny) sowie Details zur zutreffenden Regel zurückgibt.

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")

HushGuard-Middleware

HushGuard kapselt das Laden und Auswerten von Policies hinter einer einfachen evaluate-, check- und enforce-Schnittstelle für Anwendungscode.

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

CLI-Tool

Die h2h-CLI deckt den üblichen Policy-Workflow ab: Validieren, Testen, Auswerten und Erklären einzelner Aktionen, Linten, Diffen, Formatieren, Initialisieren, Signieren, Verifizieren und Auslösen des Panikmodus.

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

Siehe Installation oben für Installationsoptionen — Homebrew, npm, Cargo oder vorgefertigte Binärdateien.

Entscheidungsbelege (Prüfpfad)

evaluate_audited() erzeugt strukturierte Entscheidungsbelege mit Regel-Traces, Policy-Zusammenfassungen und optionaler Schwärzung von Inhalten. Belege entsprechen hushspec-receipt.v0.schema.json und sind für prüfungsintensive Umgebungen wie SOC 2, HIPAA, PCI-DSS und FedRAMP konzipiert.

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

Beleg-Sinks (FileReceiptSink, ConsoleReceiptSink, FilteredSink, MultiSink, CallbackSink) sind in allen vier SDKs verfügbar, um Belege an Speicher, Logging oder OTLP-Endpunkte weiterzuleiten.

Erkennungspipeline

Die Erkennungspipeline integriert Prüfungen auf Prompt-Injection, Jailbreak und Exfiltration in den Auswertungsablauf. Referenz-Detektoren auf Regex-Basis sind in allen SDKs enthalten, und benutzerdefinierte Detektoren können über DetectorRegistry registriert werden.

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
Framework-Adapter

Vorgefertigte Adapter übersetzen frameworkspezifische Tool-Aufrufe in HushSpec-Auswertungsaktionen.

Beobachtbarkeit

Die Schnittstelle EvaluationObserver und der Wrapper ObservableEvaluator senden strukturierte Ereignisse für jede Auswertung, jedes Laden und Neuladen von Policies. Integrierte Observer umfassen JsonLineObserver, ConsoleObserver und 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);
Policy-Signierung

Policies können mit Ed25519-Schlüsseln signiert und beim Laden verifiziert werden. Die CLI stellt die Befehle sign, verify und keygen bereit. Das Signaturformat entspricht 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
Notfall-Override (Panikmodus)

Der Panikmodus ist ein Deny-All-Notausschalter, der sofort aktiviert werden kann, ohne Policies neu bereitzustellen. Sie können ihn über eine Sentineldatei, die CLI oder einen API-Aufruf auslösen. Solange der Panikmodus aktiv ist, gibt jede Auswertung deny zurück.

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();
Laden von Policies und Hot Reload

Policies können aus lokalen Dateien, HTTPS-URLs (mit ETag-Caching und SSRF-Schutz) oder integrierten Regelsätzen geladen werden. PolicyWatcher und PolicyPoller unterstützen Hot Reload ohne Neustart des Prozesses.

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 Kernregeln

Erweiterungen

HushSpec unterstützt optionale Erweiterungsmodule für erweitertes Policy-Verhalten:

ErweiterungZweck
PostureDeklarative Zustandsmaschine für Fähigkeiten und Budgets
OriginsHerkunftsbewusste Policy-Projektion (Slack, GitHub, E-Mail usw.)
DetectionSchwellenwertkonfiguration für Prompt-Injection, Jailbreak, Threat Intelligence
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

Integrierte Regelsätze

Einsatzbereite Policies befinden sich in rulesets/:

Verwendung mit Clawdstrike

HushSpec-Dokumente werden nativ in Clawdstrike geladen:

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

Repo-Struktur

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

Designprinzipien

  • Fail-closed: Unbekannte Felder werden abgelehnt, und ungültige Dokumente schlagen mit expliziten Fehlern fehl.
  • Zustandslos: Kernregeln sind reine Deklarationen ohne Laufzeitzustand.
  • Engine-neutral: Die Spezifikation setzt keine bestimmte Durchsetzungs-Engine, keinen bestimmten Detektor und kein bestimmtes Plugin-Modell voraus.
  • Erweiterbar: Posture, Origins und Detection bleiben optional, anstatt das Kernformat aufzublähen.

Spezifikation

Die normative Spezifikation befindet sich in spec/. JSON-Schema-Definitionen für die programmatische Validierung finden sich in schemas/. Die vollständige Dokumentation liegt in docs/.

Lizenz

Apache-2.0. Siehe LICENSE.

Tool herunterladen
FähigkeitRustTypeScriptPythonGo
Parsen + Validieren (Level 1)JaJaJaJa
Zusammenführen (Level 2)JaJaJaJa
Auflösen (Level 2+)JaJaJaJa
Auswerten (Level 3)JaJaJaJa
Prüfpfad (Level 4)JaJaJaJa
ErkennungJaJaJaJa
BeobachtbarkeitJaJaJaJa
Beleg-SinksJaJaJaJa
MethodeBefehl
Homebrew (macOS/Linux)brew install backbay-labs/tap/h2h
npmnpm install -g @hushspec/cli (oder npx @hushspec/cli validate policy.yaml)
Cargo (aus dem Quellcode)cargo install hushspec-cli
Vorgefertigte BinärdateienGitHub-Releases — h2h-<tag>-<target>.tar.gz + SHA256SUMS, mit Provenance-Attestierung
FrameworkAdapterSDK
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);
RegelZweck
forbidden_pathsBlockiert Zugriff auf sensible Dateisystempfade
path_allowlistAllowlist-basierter Lese-/Schreib-/Patch-Zugriff
egressNetzwerk-Egress-Kontrolle nach Domain
secret_patternsErkennt Geheimnisse im Dateiinhalt
patch_integrityValidiert die Diff-Sicherheit (Größenlimits, verbotene Muster)
shell_commandsBlockiert gefährliche Shell-Befehle
tool_accessSteuert Tool-/MCP-Aufrufe
computer_useSteuert CUA-Aktionen
remote_desktop_channelsSteuert Seitenkanäle von Remote-Desktops
input_injectionSteuert Fähigkeiten zur Eingabe-Injection
RegelsatzBeschreibung
defaultAusgewogene Sicherheit für die Ausführung von KI-Agenten
strictMaximale Sicherheit, minimale Berechtigungen
permissiveEntwicklungsfreundlich, großzügige Limits
ai-agentOptimiert für KI-Codierungsassistenten
cicdSicherheit für CI/CD-Pipelines
remote-desktopComputer-Use-Agenten-Sitzungen
panicDeny-All-Notfall-Override