Du bekommst pro Team eine fertige Splunk-ES- und SOAR-8.5-Umgebung (kein Golden Image) und bringst die CTA-Inhalte web-only ein (kein SSH). Schritt 0–3 sind Pflicht; Schritt 4 (Auto-Provisioning) ist optional und schreibt nur auf ausdrückliches Kommando. Klapp jeden Schritt für die Details auf.
| Splunk Cloud | Splunk on-prem | |
|---|---|---|
| ES-HEC-URL | https://http-inputs-<stack>.splunkcloud.com — eigener Hostname, Port 443, nicht :8088.Das Präfix hängt am Cloud-Provider: auf AWS http-inputs-<stack> (Bindestrich), auf GCP/Azure http-inputs.<stack> (Punkt). Free Trials nutzen 8088. |
https://<host>:8088 |
| ES-Search-URL | https://<stack>.splunkcloud.com:8089 — Port gehört in die URL.Port 8089 ist bei Splunk Cloud nicht ab Werk offen: Splunk Support schaltet ihn frei, und die Egress-IP des Game-Servers muss auf die search-api-IP-Allowlist. Free Trials haben keinen REST-Zugriff. |
https://<host>:8089 |
| SOAR-URL | https://<instance>.soar.splunkcloud.com — ohne :8443 |
https://<host> bzw. der eigene Port (häufig :8443) |
Index cta |
vorher von Hand anlegen — siehe Schritt 0 | bringt die cta-ops.spl mit |
<stack>.splunkcloud.com:8088 läuft in einen Timeout. Der HEC liegt
bei Splunk Cloud nicht auf dem Splunk-Hostname, sondern auf einem eigenen
http-inputs-…-Hostname auf 443.<instance>.soar.splunkcloud.com:8443 antwortet nicht; auf 443 antwortet
/rest/version. Der Port aus der on-prem-Welt ist in der Cloud falsch.:8089 landet die Search-URL auf Splunk Web, das eine HTML-Seite
zurückgibt. Der Check meldet dann „Erreichbar, aber Pfad falsch.“ —
das ist ein fehlender Port, kein Token-Problem.8088 und 8089 offen, der
HEC antwortete in rund einer halben Sekunde.cta anlegen Pflichtcta; der Name steht im Server
fest und ist nicht konfigurierbar. Der Index muss vor dem HEC-Token existieren — beim
Anlegen des Tokens wählst du die erlaubten Indizes aus, und was es noch nicht gibt, kannst du
nicht auswählen. In der falschen Reihenfolge antwortet der HEC später mit
HTTP 400 Incorrect index, und das Token muss neu angelegt werden.
cta eintragen → Save.
Alternativ über die Admin-Config-Service-API:
POST https://admin.splunk.com/<stack>/adminconfig/v2/indexes mit dem Body
{"name": "cta"}.cta-ops.spl bringt den Index mit
(indexes.conf mit $SPLUNK_DB-Pfaden). Nach der Installation der App
unter Settings → Indexes kurz prüfen, dass cta da ist.cta lauten, klein geschrieben — ein abweichender Name
funktioniert nicht.
cta-referee.tgz (meldet gelöste Aufgaben an den Game-Server zurück),
cta-enrichment.tgz (Reputation / AV / Sandbox / WHOIS / GeoIP) und
cta-response.tgz (Firewall / Identity / EDR / ITSM). Nach dem Upload erscheint jede App
unter Apps und lässt sich per Configure New Asset einrichten (Schritt 2). Die Apps
rechnen rein deterministisch (kein Outbound) — dieselbe Eingabe ergibt immer dieselbe Bewertung.
cta_referee: nur team_id (Team-ID) und
team_token (Team-Bearer-Token) setzen, verify_ssl je nach Umgebung. Die
game_server_url musst du nicht eintragen — der Game-Server trägt seine eigene
Adresse selbst vor (überschreibbar über die Umgebungsvariable CTA_GAME_SERVER_URL,
z. B. hinter Proxy oder airgapped). (dieses Asset ist pro Team unterschiedlich)source_id:
cta-reputation, cta-av1, cta-av2, cta-av3,
cta-sandbox, cta-whois, cta-geoip. Der source_id
ist der Determinismus-Schlüssel, den die Aufgaben referenzieren — genau so benennen.cta-identity mit source_id=cta-identity.cta_threat_ips importieren Pflichtip). Lade
unten in der Rollout-Tabelle die CSV des jeweiligen Teams herunter und importiere sie in SOAR unter
Administration → Custom Lists als Liste cta_threat_ips (neu anlegen bzw. Inhalt
ersetzen). Aufgaben wie die IP-Reputation lesen diese Liste im Playbook per list get.
POST /admin/teams/{team_id}/provision liefert im Dry-Run (Default) den geplanten
REST-Plan (Assets + cta_threat_ips) — ohne etwas zu schreiben, sodass du ihn prüfen
kannst. Erst mit dry_run=false + execute_soar=true wird gegen das
Team-eigene SOAR (aus team_env) geschrieben.
unverifiziert auf 8.5 — die Asset-/Decided-List-/App-Install-REST-Aufrufe
sind gegen die Live-8.5 noch nicht bestätigt; die Apps installierst du daher manuell (Schritt 1).
8088), SSL nach Umgebung. Nur on-prem — auf Splunk Cloud ist der HEC ab Werk aktiv, dort gibt es diesen Dialog nicht.cta-hec → weiter → bei Input Settings als erlaubten Index cta wählen (der Index cta muss dafür schon existieren — siehe Schritt 0: on-prem bringt ihn die cta-ops.spl mit, auf Splunk Cloud legst du ihn vorher von Hand unter Settings → Indexes → New Index an) → Review → Submit.https://<host>:8088, Splunk Cloud https://http-inputs-<stack>.splunkcloud.com auf Port 443 — siehe Plattform-Matrix. Den Pfad /services/collector hängt der Game-Server selbst an; eingetragen wird nur die Basis-URL.cta hinüber.cta in der Freigabe des Tokens, antwortet Splunk mit HTTP 400 und dem Text Incorrect index (HEC-Statuscode 7). Im Protokoll erscheint davon nur HTTP 400 — den Splunk-Text zeigt die Detailansicht nicht an. Abhilfe: Index anlegen (Schritt 0), danach das Token neu erstellen.8089). Optional — nur nötig, wenn Such-Zugriff genutzt wird. Der Port gehört in die URL, bei Cloud wie on-prem — siehe Plattform-Matrix.any für unbeschränkt). Passt die Herkunft nicht, scheitert der Aufruf trotz gültigem Token — im Protokoll sieht das aus wie ein Rechteproblem.ph-auth-token) → kopieren.cta_referee-Asset bzw. das Provisioning). Nie im Klartext teilen. Die passende SOAR-URL steht in der Plattform-Matrix — in der Cloud ohne :8443.| Im Protokoll | Ursache | Was zu tun ist |
|---|---|---|
| Auth fehlgeschlagen „URL und Port stimmen, Token falsch oder Rechte fehlen.“ |
Beim ES-Search fast immer das Token: abgelaufen, noch nicht gültig oder ungültig. Splunk meldet alle drei identisch als call not properly authenticated. |
Neues Token mit ausdrücklich gesetzter Expiration anlegen, Not Before leer lassen. Das mittlere JWT-Segment lässt sich lokal dekodieren (exp/nbf). |
| nicht erreichbar „Erreichbar, aber Pfad falsch.“ |
HTTP 404 — der Port fehlt in der URL. Ohne :8089 landet die Search-URL auf Splunk Web und bekommt eine HTML-Seite. |
Port ergänzen. Kein Token-Problem — das Token gar nicht erst tauschen. |
ES-HEC, Detail HTTP 400 |
Der Index cta ist für das HEC-Token nicht freigegeben. Splunk antwortet mit Incorrect index — diesen Text zeigt das Protokoll nicht, nur den Status. |
Index cta anlegen (Schritt 0), dann das HEC-Token neu erstellen und cta unter Input Settings auswählen. |
| ES-HEC, „HEC hat das Event abgelehnt“ Detail: HEC-Antwort mit code != 0 |
Der HEC hat geantwortet, aber das Event verworfen — Token deaktiviert oder Index nicht erlaubt. | Global Settings → All Tokens = Enabled prüfen, dann die Index-Freigabe des Tokens. |
| Timeout „Pakete werden verworfen — Security Group / Firewall, nicht der Port.“ |
Meist der falsche Port für die Plattform: Cloud-HEC auf :8088 oder SOAR-Cloud auf :8443. Sonst verwirft eine Firewall die Pakete. |
Werte gegen die Plattform-Matrix prüfen. Erst wenn die URL stimmt, ist es wirklich die Firewall. |
| nicht erreichbar „Host erreichbar, Port zu / Dienst läuft nicht (HEC aktiviert?).“ |
Der Host antwortet, der Port ist zu — Dienst läuft nicht oder der HEC ist gar nicht eingeschaltet. | Beim HEC All Tokens = Enabled setzen. Sonst Dienst und Portfreigabe auf dem Zielsystem prüfen. |
| nicht erreichbar „Hostname falsch oder nicht auflösbar.“ |
DNS löst den Namen nicht auf — Tippfehler, oder in der Cloud das Präfix http-inputs- vergessen. |
Hostname gegen die Plattform-Matrix prüfen. |
| TLS-Fehler „http statt https, oder Zertifikat.“ |
http:// statt https:// eingetragen, oder das Zertifikat passt nicht zum Hostname. |
Auf https:// korrigieren. Alle sechs Endpunkte laufen über TLS. |
| nicht konfiguriert „URL und/oder Token fehlen — nichts zu testen.“ |
Feld leer. Es wurde gar kein Netzwerkaufruf gemacht. | URL und Token nachtragen. Beim Bearbeiten gilt: leeres Token-Feld = vorhandenes Token behalten. |
Detailzeile Token: n Zeichen · GUID-Format |
Beim ES-Search oder SOAR ein Hinweis auf vertauschte Tokens — nur der HEC-Token ist ein GUID. | HEC-Token (GUID) und Search-Token (JWT) in die richtigen Felder setzen. Das Protokoll zeigt nie einen Tokenwert, nur Länge und Formatklasse. |
| Team | Score | Provisioning-Zugang | cta_threat_ips | Bereit? |
|---|---|---|---|---|
| Lade … | ||||