BLACKRAINBOW®
The Full Spectrum.
Security assurance framework with plugin architecture, YAML-driven engagements, and domain-expert AI trained across 11 security domains.
Five-stage execution engine.
11 colors across the full attack surface.
Domain-expert AI from real operator knowledge.
Registry-driven plugin architecture.
blackrainbow.yaml | v +--------------+ | config.py | Parse YAML, validate with Pydantic | | Normalize plugin refs (string/dict) | | Convert to EngagementContext +------+-------+ | v +--------------+ +-----------------+ | engine.py |---->| BlackRainbow AI | Ollama inference | | +-----------------+ +------+-------+ | +---> plugin.generate(context) --> List[AttackSequence] | +---> strategy.transform(seqs) --> List[AttackSequence] | +---> target.execute(step) --> ExecutionResult | +---> plugin.grade(seq, result) --> GradeResult | +---> report.generate() --> MD / JSON / HTML
Registry Pattern
Decorator-based registration at import time. @register_plugin populates a module-level dict. Lookup by string ID. Zero boilerplate to add new components.
Pydantic Config
7 models validate every YAML config field. Target types, output formats, plugin references all type-checked before the engine starts. Bad config fails fast.
Service Accumulation
Discovered services feed back into EngagementContext. Later plugins read what recon found. Credential plugins target SSH on port 22 because recon told them it was there.
Lazy Imports
CLI lazy-imports config and engine only in the run command. br --help loads in under 100ms. _import_builtins() triggers decorator registration on demand.
Target Types
7 supported types: network-service, web-application, active-directory, cloud-service, ai-system, ninjato, custom. Each gets its own target class and execution model.
Model Integration
Plugins generate model prompts for the BlackRainbow AI via Ollama. The model suggests next steps based on discovered services and engagement context. Domain-expert, not generic.