
agent-opfor v0.10.1
Open-Source-Angreifer-Emulation für KI-Agenten und MCP-Server.
Open-Source-Adversary-Emulation für KI-Agenten, LLM-Apps und MCP-Server.
Teste deine KI wie ein echter Angreifer – von deiner CLI, deiner IDE oder einer Browser-Erweiterung, die jedes Teammitglied nutzen kann.
Website · Dokumentation · GitHub · Browser-Erweiterung · Discord
OPFOR steht für Opposition Force – ein militärischer Begriff für die Einheit, die im Training den Feind spielt, damit der Rest der Armee lernt, wie sich echte Angriffe anfühlen, bevor sie kommen. Wir haben das Tool nach dieser Idee benannt: Um KI-Agenten besser zu verteidigen, muss man sie zuerst angreifen.
Warum wir das gebaut haben
Wir haben in den letzten zehn Jahren 130 Produkte für 90 Startups ausgeliefert. In den letzten 18 Monaten enthielt fast jedes davon einen KI-Agenten – und jedes dieser Teams stieß beim Testen auf dieselbe Wand.
Also haben wir OPFOR gebaut. Zuerst für uns selbst. Jetzt Open Source.
Apache 2.0. Gebaut in Indien.
Schnellstart
npm install -g @keyvaluesystems/agent-opfor-cli
export OPENAI_API_KEY=dein-key # oder GEMINI_API_KEY, ANTHROPIC_API_KEY, etc.
Ein-Schritt – führt den Setup-Assistenten aus und startet sofort den Scan:
opfor run
Zwei-Schritte – speichert eine Konfiguration, die du wiederverwenden oder in CI einchecken kannst:
opfor setup # Assistent speichert Konfiguration in .opfor/configs/
opfor run --config .opfor/configs/<datei> # jederzeit mit der gespeicherten Konfiguration ausführen
https://github.com/user-attachments/assets/a6a3cff2-2cf9-4486-944e-ac0163e7ea04
Was opfor macht
Opfor testet die gesamte KI-Agenten-Oberfläche – Prompts, Tools, MCP-Server, Speicher und mehrschrittige Argumentation. Es generiert gezielte Angriffe für OWASP LLM Top 10, OWASP Agentic AI Top 10, OWASP MCP Top 10, OWASP API Security und EU AI Act Bias-Suites, feuert sie auf dein Ziel und bewertet jede Antwort mit einem LLM.
Die meisten Red-Team-Tools in diesem Bereich sind hervorragend in einer Sache – einer Probe-Bibliothek, einem Entwickler-Evaluator, einem programmatischen Framework. Opfor deckt in einem Tool mehr ab:
- Browser-Erweiterung für Nicht-Entwickler – jedes Teammitglied kann einen bereitgestellten Chatbot testen, kein Code, keine Umgebungsvariablen, kein YAML
- Opfor als MCP-Server ausführen – lass deinen KI-Coding-Agenten in Cursor oder Claude Desktop deine anderen Agenten per natürlicher Sprache testen
- Vollständige OWASP-Abdeckung in einem Tool – LLM Top 10, Agentic AI Top 10, MCP Top 10, API Security Top 10
- Keine Blackbox – jeder Angriffs-Prompt, jede Anfrage, jede Antwort und jedes Richterurteil wird protokolliert; reproduzierbar, auditierbar, forkbar
- Für Agenten entwickelt, nicht nur für Modelle – von Anfang an für Tool-Aufrufe, MCP, Speicher und mehrschrittigen Zustand ausgelegt
- Trace-bewusst – integriert mit Langfuse und Netra, sodass der LLM-Richter sieht, was dein Agent intern getan hat, nicht nur, was er gesagt hat
Fünf Wege, opfor auszuführen
Verschiedene Personen in deinem Team benötigen unterschiedliche Einstiegspunkte. Opfor liefert fünf.
| Modus | Wie | Am besten für |
|---|---|---|
| 🖥️ CLI | opfor setup → opfor run | Entwickler, CI/CD, terminal-zentrierte Workflows |
| 🌐 Browser-Erweiterung | Erweiterung installieren, auf einer beliebigen Chat-Oberfläche auf das opfor-Symbol klicken | Produktmanager, Designer, QA, Sicherheitsanalysten – alle, die keinen Code schreiben können oder wollen |
| 🤖 MCP-Server | Opfor in Cursor oder Claude Desktop registrieren, dann im Chat fragen | KI-Coding-Agenten, die deine anderen Agenten testen |
| ⚡ Skills | /opfor-setup · /opfor-run · /opfor-mcp-setup · /opfor-mcp-run | Entwickler, die Ein-Kommando-Tests in ihrer IDE wünschen |
| 📦 SDK | npm install @keyvaluesystems/agent-opfor-sdk, dann run / hunt aus dem Code aufrufen | Programmatisches Red-Teaming und benutzerdefinierte Workflows |
Alle fünf teilen sich die gleichen Evaluatoren, Angriffsvorlagen und Richterlogik.
→ CLI-Referenz · Browser-Erweiterung einrichten · MCP einrichten · Skills einrichten · SDK-Referenz · Sitzungsverwaltung
So funktioniert es
Wenn du einen Scan ausführst, macht opfor:
- Zielinformationen abrufen – verbindet sich mit deinem Agenten, erkennt verfügbare Tools, MCP-Endpunkte, Fähigkeiten
- Angriffe pro Kategorie planen – generiert zielgerichtete Prompts für jeden Evaluator in deiner ausgewählten Suite
- Den Angriff emulieren – führt mehrschrittige adversariale Gespräche (echte Anfragen, echte Antworten)
- Mit einem Richter bewerten – ein LLM-Richter klassifiziert jede Antwort mit bestanden/nicht bestanden + Begründung
- Einen Bericht erstellen – HTML zum Durchsuchen, JSON für CI/CD, alle Artefakte werden für Reproduzierbarkeit protokolliert
Jeder Lauf landet in einem eigenen Unterordner unter .opfor/reports/run-report-<compactTs>-<slug>-<shortId>/ mit <slug>-report.html und <slug>-report.json. Autonome opfor hunt-Läufe verwenden das gleiche Layout unter hunt-report-<compactTs>-<slug>-<shortId>/.
Evaluator-Abdeckung
Opfor wird mit kuratierten Suiten ausgeliefert, die auf Industriestandards abbilden. Wähle eine Suite oder führe einzelne Evaluatoren aus.
| Suite-ID | Standard | Fokus |
|---|---|---|
owasp-llm-top10 | OWASP LLM Top 10 (2025) | Prompt-Injection, Jailbreaks, Offenlegung sensibler Daten, System-Prompt-Leakage |
owasp-agentic-ai | OWASP Agentic AI Top 10 | Übermäßige Handlungsfähigkeit, Tool-Missbrauch, Agent-Ziel-Entführung, Speichervergiftung |
owasp-mcp-top10 | OWASP MCP Top 10 (2025) | Geheimnis-Offenlegung, Bereichseskalation, Tool-Beschreibungs-Injection, SSRF |
owasp-api | OWASP API Security Top 10 | BOLA, BFLA, SQL-Injection |
eu-ai-act-bias | EU AI Act – Bias | Alter, Geschlecht, Ethnie, Behinderung |
→ Vollständige Evaluator-Referenz und OWASP-Zuordnung
Trace-bewusstes Testen
Stecke opfor in deinen Observability-Stack und der LLM-Richter sieht nicht nur die endgültige Antwort – sondern jeden Tool-Aufruf, jede Abfrage und jeden Zwischenschritt der Argumentation. Out of the Box integriert opfor mit Langfuse und Netra.
"telemetry": {
"provider": "langfuse",
"langfuse": { "baseUrl": "https://cloud.langfuse.com" }
}
Dies fängt ein, was Input/Output-Tests übersehen – PII, die in einen Tool-Aufruf gelangt, aber nie den Nutzer erreicht, Bereichseskalationen in MCP, die den Antworttext nicht ändern, Agenten, die unbefugte Daten abrufen, aber eine saubere Antwort liefern.
→ Leitfaden zum Trace-bewussten Testen
Autonomes Red-Teaming
opfor hunt überspringt die Konfigurationsdatei vollständig. Gib einen Endpunkt und ein Ziel vor, und ein Multi-Agenten-System – Kommandant, Operateure, Späher – führt eine eigene adaptive Angriffskampagne durch: Aufklärung, Strategie, mehrschrittiges Sondieren, Bericht. Im Gegensatz zu opfor run laufen die Agenten nur auf Claude (über einen Claude-API-Key, claude setup-token oder deine lokale claude login-Sitzung) – dein Ziel kann alles sein.
opfor hunt \
--endpoint "https://your-agent.com/v1/chat" \
--objective "Finde Jailbreaks, System-Prompt-Leakage und Sicherheitsumgehungen."
Füge --ui hinzu, um den Angriffsbaum in einem Live-Dashboard zu beobachten.
Browser-Erweiterung – einen Chatbot red-teamen
Die Browser-Erweiterung ist opfors codefreier Pfad. Installiere sie aus dem Chrome Web Store, öffne eine beliebige Chat-Oberfläche, klicke auf das opfor-Symbol, wähle eine Suite und sieh zu, wie sie läuft.
https://github.com/user-attachments/assets/80c2692f-b18b-4899-99df-e7eb8d50b02a
Sie erkennt automatisch die Chat-Oberfläche, sendet Angriffs-Prompts als ob du sie tippen würdest, beobachtet die Antworten und lädt einen HTML-Bericht herunter, wenn sie fertig ist. Kein CLI, keine Zieleinrichtung, kein YAML.
Dies ist der Pfad für die Hälfte jedes Produktteams, die kein Terminal öffnet.
→ Aus dem Chrome Web Store installieren · Einrichtungsanleitung
SDK – Red-Teaming in deinen Code einbetten
Das SDK ist opfors programmatischer Pfad. Installiere @keyvaluesystems/agent-opfor-sdk, rufe run oder hunt auf und erhalte strukturierte Ergebnisse zurück – kein CLI, keine Konfigurationsdateien, keine Unterprozesse.
import { Opfor } from "@keyvaluesystems/agent-opfor-sdk";
const opfor = new Opfor({ apiKey: process.env.ANTHROPIC_API_KEY });
const results = await opfor.run({
target: { url: "https://api.example.com/chat" },
suite: "owasp-llm-top10",
});
Verwende es in CI, in Test-Suiten oder überall, wo Red-Teaming nötig ist, ohne TypeScript zu verlassen.
Beispiele
| Beispiel | Beschreibung |
|---|---|
| vanilla-chat | Einfacher Kundensupport-Chatbot – Teste LLM-Level-Schwachstellen |
| customer-support | Tool-aufrufender Agent mit PostgreSQL – Teste BOLA, BFLA, RBAC, PII |
| vulnerable-server | Beispiel-MCP-Server mit absichtlichen Schwachstellen |
Unterstützte LLM-Anbieter
| Anbieter | Umgebungsvariable | Standardmodell |
|---|---|---|
| Groq | GROQ_API_KEY | llama-3.3-70b-versatile |
| OpenAI | OPENAI_API_KEY | gpt-4o-mini |
| Anthropic | ANTHROPIC_API_KEY | claude-3-5-haiku-20241022 |
GOOGLE_GENERATIVE_AI_API_KEY | gemini-2.0-flash | |
| OpenAI-kompatibel | OPFOR_API_KEY + baseURL | LiteLLM, OpenRouter, Azure, Ollama |
Mitwirken
Bitte lies CONTRIBUTING.md für Details zu unserem Verhaltenskodex und zum Prozess für Pull-Requests.
Autoren
Entwickelt vom Team bei KeyValue Software Systems. Kontakt unter [email protected] für alle Anfragen.
Sicherheit
Verwende opfor nur auf Systemen, die dir gehören oder für die du autorisiert bist. Um eine Sicherheitslücke in opfor selbst zu melden, siehe SECURITY.md – öffne kein öffentliches Issue.
Lizenz
Opfor ist unter Apache 2.0 lizenziert – siehe die Datei LICENSE für Details.
Mit ❤️ erstellt von KeyValue