Zum Hauptinhalt springen
Echtzeit-Radar & Feeds
Alle RSS Feeds ➔
👥 Community & Social
••
IT NachrichtenMicrosoft puts Brad Smith in charge of communications(25.09.2026 um 00:08 Uhr)
••
IT Nachrichten25. September(25.09.2026 um 00:05 Uhr)
•
IT NachrichtenCI-Solution GmbH von Crossware übernommen(25.09.2026 um 00:01 Uhr)
•
IT NachrichtenInsta360 GO Ultra erhält KI-Sprachassistenten mit Gemini(24.09.2026 um 21:30 Uhr)
••
AI & KI NachrichtenMaryland Governor Draws New Boundaries for Data Centers(25.09.2026 um 00:04 Uhr)
••••
IT NachrichtenMicrosoft puts Brad Smith in charge of communications(25.09.2026 um 00:08 Uhr)
••
IT Nachrichten25. September(25.09.2026 um 00:05 Uhr)
•
IT NachrichtenCI-Solution GmbH von Crossware übernommen(25.09.2026 um 00:01 Uhr)
•
IT NachrichtenInsta360 GO Ultra erhält KI-Sprachassistenten mit Gemini(24.09.2026 um 21:30 Uhr)
••
AI & KI NachrichtenMaryland Governor Draws New Boundaries for Data Centers(25.09.2026 um 00:04 Uhr)
••
Intelligence View
⚡ tsecurity.de Intelligence

Building 646 Suricata Rules to Detect AI Agent Threats: OpenClaw Security with CGTI Lite

Building 646 Suricata Rules to Detect AI Agent Threats: OpenClaw Security with CGTI Lite Between January and March 2026, the OpenClaw AI agent ecosystem faced a wave of targeted attacks that existing security tools weren't equipped to…

0
↗ Quelle (dev.to)
Reagiere als Erste:r — dein Feedback zählt!




Building 646 Suricata Rules to Detect AI Agent Threats: OpenClaw Security with CGTI Lite



Between January and March 2026, the OpenClaw AI agent ecosystem faced a wave of targeted attacks that existing security tools weren't equipped to handle. The ClawHavoc campaign distributed 1,184+ malicious skills through ClawHub. GhostClaw RAT spread via typosquatted npm packages. AMOS Stealer harvested macOS credentials. 135,000+ OpenClaw instances were found exposed on the public internet with zero authentication. 25 CVEs were disclosed, with CVSS scores reaching 9.9.



I looked for Suricata rules covering these threats. MCP protocol exploitation, WebSocket gateway attacks, AI skill supply-chain poisoning — none of it was covered by ET Open, ET Pro, or any community ruleset I could find.



So I built CGTI Lite for OpenClaw — 646 hand-crafted Suricata detection rules across 13 specialized categories, plus a cross-platform management tool. This post explains the detection engineering behind it.



GitHub: https://github.com/Senturkselim/CGTI-for-OpenClaw









The Threat Landscape



Here's what CGTI Lite detects, mapped to the actual campaigns:











































Threat What It Does CGTI Detection Method
ClawHavoc 1,184+ malicious ClawHub skills distributing infostealers C2 IPs, domains, skill download patterns, DNS queries
GhostClaw/GhostLoader RAT via typosquatted npm packages, exfil to GoFile.io TLS/HTTP C2 to trackpipe.dev, bootstrap payload URI, npm package detection
AMOS Stealer macOS infostealer targeting openclaw.json, crypto wallets TLS C2 (91.92.242.0/24), HTTP exfil patterns, BuildID header
Vidar 2.0 Credential store theft from ~/.openclaw/ JA3 fingerprint, TLS cert anomalies
GhostSocks Proxy malware turning hosts into SOCKS proxies Default cert CN, Stealth Packer indicators
25 CVEs RCE, sandbox escape, command injection Full kill-chain signatures per CVE








Rule Design: Why Two Indicators Minimum



Every CGTI rule requires at least two independent content matches. No rule fires on a single content: string alone. Here's why — and how it looks in practice.



Bad rule (single indicator, high FP risk):




alert http any any -> any any (
msg:"Suspicious download";
content:"download"; http.uri;
sid:9999999; rev:1;
)






This fires on literally any HTTP request with "download" in the URI.



CGTI approach (dual indicator):




alert tls $HOME_NET any -> $EXTERNAL_NET any (
msg:"CGTI-OC GHOSTCLAW - TLS Connection to trackpipe.dev C2 Panel";
flow:to_server,established;
tls.sni; content:"trackpipe.dev"; nocase; isdataat:!1,relative;
classtype:trojan-activity; priority:1;
reference:url,research.jfrog.com/post/ghostclaw-unmasked/;
sid:9200124; rev:1;
metadata:malware_family GhostClaw, mitre_attack T1071.001,
signature_severity Critical, false_positive Zero;
)






This combines tls.sni match + isdataat:!1,relative (exact domain, not substring) + flow:to_server,established (only outbound TLS handshakes). The false positive rate on a known C2 domain is effectively zero.









Three Confidence Layers



Rules are organized into detection confidence tiers:



Layer 1 — High Confidence (priority 1): Known C2 IPs and domains, CVE-specific exploit signatures, JA3/JARM fingerprints. These are indicators derived directly from published threat research (JFrog, Huntress, DepthFirst Security, etc.). Near-zero false positive rate.



Layer 2 — Medium Confidence (priority 2): Behavioral patterns like data exfiltration to paste sites, unusual WebSocket commands, HTTP requests matching supply-chain attack patterns. These use threshold-based detection and require protocol-specific scoping.



Layer 3 — Low Confidence (priority 3): Heuristic rules like scanner detection, broad IP geolocation lookups, generic curl-to-shell patterns. Informational — meant to be tuned per deployment.









Detecting a 5-Phase CVE Kill Chain



CVE-2026-25253 (CVSS 8.8) enables 1-click RCE through gatewayUrl token exfiltration. The attack has 5 distinct phases, and CGTI has detection rules for each:



Phase 1 — Token exfiltration via gatewayUrl:




alert http $HOME_NET any -> $EXTERNAL_NET any (
msg:"CGTI-OC CVE-2026-25253 Phase-1 gatewayUrl Token Exfil";
flow:established,to_server;
http.uri; content:"gatewayUrl=";
http.uri; content:"token="; distance:0;
classtype:trojan-activity; priority:1;
reference:cve,2026-25253;
sid:9200801; rev:1;
)






Detecting each phase individually means even if the attacker modifies one step, the other phases still trigger alerts. Defense in depth at the rule level.









The DNS Blocking Problem (And How I Solved It)



This is the most technically interesting part of the project.



When Suricata fires a DNS alert (e.g., "host queried trackpipe.dev"), the destination IP in the EVE log is your DNS resolver — typically 8.8.8.8 or 1.1.1.1. If your autoblock system naively blocks the destination IP from the alert, it blocks your DNS server. Your entire internet breaks.



CGTI's Enhanced Autoblock handles this differently:




  1. Detect that the alert is DNS traffic (port 53)

  2. Extract the queried domain from the alert signature text

  3. Resolve that domain via system DNS to get the actual IP(s)

  4. Block the resolved IPs (the real C2 server), not the DNS resolver

  5. Apply RFC1918/CGNAT/loopback protection — never block private IPs

  6. Auto-whitelist configured DNS servers



So a DNS alert for trackpipe.dev results in blocking the actual GhostClaw C2 infrastructure IP, not your DNS resolver. Bidirectional — both INPUT and OUTPUT firewall rules are created.









False Positive Management



16 rules are shipped disabled by default. Each has a # DISABLED-FP: comment explaining exactly why:





  • SID:9200872 — Python REPL detection. Disabled because REPL is a core OpenClaw feature. Re-enable if you don't use the Python REPL.


  • SID:9202610 — MCP tools/call + exec. Matches legitimate tools like execute_query. Re-enable if you don't use any MCP tool with "exec" in its name.


  • SID:9201070 — registry.npmjs.org DNS. Fires on every npm install. Re-enable if your OpenClaw host never runs npm.



The README includes a full tuning guide organized by use case: Discord/Slack integrations, Telegram bots, crypto trading, MCP filesystem tools, etc.









IPS Mode on Linux: Avoiding the Fork Race



A technical detail that took significant debugging: Suricata's -D (daemon) flag causes a fork race condition with NFQUEUE binding on Linux. The forked child process tries to bind the NFQ queue before the parent fully exits, sometimes resulting in a failed bind.



CGTI's solution: start Suricata with subprocess.Popen + os.setpgrp instead of using -D. This keeps the process in the foreground from Python's perspective but fully detached from the parent process group. The NFQUEUE binding succeeds reliably.



The IPS flow:




  1. Stop any existing Suricata instance (including Ubuntu's suricata.service)

  2. Convert alert rules to drop rules in-place (reverts on stop)

  3. Auto-configure nfq: section in suricata.yaml

  4. Set up iptables -I NFQUEUE rules (with automatic rollback on failure)

  5. Start Suricata with -q 0 via Popen









Boot-Time Autostart: The Ubuntu Edge Case



On Ubuntu, installing Suricata via apt also installs suricata.service, which is enabled by default. At boot:





  1. suricata.service starts Suricata in IDS mode (--af-packet)


  2. cgti-lite.service runs — but Suricata is already running



If IPS mode is configured, CGTI detects this situation: Suricata is running but in IDS mode, not IPS. CGTI stops the IDS instance, then restarts Suricata in full NFQUEUE/IPS mode with iptables rules, drop rule conversion, and NFQ configuration.



This edge case took real-world testing on Ubuntu VMs to discover and fix properly.









Rule Coverage Summary



13 rule files, 646 active rules, SID range 9200001–9204419:









































































Category Rules What It Catches
Infostealer C2 67 AMOS, Vidar, GhostClaw, GhostSocks, DigitStealer
Reverse Shells 59 7 languages: bash, netcat, Python, Node.js, PowerShell, Go, Java
WebSocket Attacks 43 CVE-2026-25253 kill-chain, ClawJacked, log poisoning
Malicious Skills 50 Typosquatting, supply-chain, malicious install patterns
Data Exfiltration 57 Telegram, Discord, Slack, paste sites, cloud storage
Gateway Exposure 42 Scanner detection, exposed instances, lateral movement
Cryptostealer 41 Wallet theft, mining, seed phrases, exchange API keys
MCP Security 24 SSRF, tool injection, credential exfil
CVE Signatures 126 25 CVEs with full kill-chain coverage
Threat Intel IOCs 83 Malicious publishers, known attacker infrastructure
DNS Threats 34 C2, rebinding, typosquatting domains
TLS Anomalies 20 MITM, JA3/JARM, self-signed cert detection








Threat Intelligence Sources



All rules are built from published research — not generated or guessed:




  • JFrog Security Research — GhostClaw/GhostLoader RAT campaign

  • Huntress — AMOS Stealer analysis, GhostSocks campaign

  • DepthFirst Security — CVE-2026-25253 kill-chain discovery

  • Koi Security — ClawHavoc campaign (1,184+ malicious skills)

  • Darktrace, Trend Micro, Ontinue — Vidar/AMOS distribution research

  • Bitsight TRACE — 135K+ exposed instance scanning

  • Hunt.io — certificate analysis of 17,470+ instances

  • abuse.ch SSLBL — JA3 fingerprint database

  • MITRE ATT&CK — technique classification



Every rule includes reference: URLs pointing to the original research.









Getting Started



Rules only (any Suricata installation):



Copy the rules/ directory into your Suricata rules path and add them to rule-files: in suricata.yaml. Done.



Full management tool:




git clone https://github.com/Senturkselim/CGTI-for-OpenClaw.git
cd CGTI-for-OpenClaw
chmod +x install.sh && ./install.sh
cgti install
sudo
cgti start






Works on Linux, macOS, and Windows. Single Python file, rich as the only dependency.









What's Next



This is the first community-facing release from the CloudGo Threat Intelligence (CGTI) project. The rules will be updated as new threats emerge and new CVEs are disclosed. FP reports and contributions are welcome.



If you're running OpenClaw in production and want to test the rules against your traffic, I'd genuinely appreciate hearing about detection quality and false positive rates.



GitHub: https://github.com/Senturkselim/CGTI-for-OpenClaw

License: AGPL-3.0 — free forever.

IoC Intelligence (4 Indikatoren)
CVE-2026-2525391[.]92[.]242[.]08[.]8[.]8[.]81[.]1[.]1[.]1
CTI Threat Relationship Graph8 Knoten / 7 Relationen
CVE / Incident Software MITRE ATT&CK CWE Weakness IoC
SOC Incident Playbook: Remote Code Execution (RCE) Defense
Syntax validiert (0 Fehler)
title: Detect Exploitation - Building 646 Suricata Rules to Detect AI Agent Threats: OpenClaw Security with CGTI Lite
id: 6ea1d8a9-f163-450c-b8d9-c980781971a3
status: experimental
description: Automatisch generierte SIEM-Erkennungsregel basierend auf CTI Intelligence
references:
  - https://tsecurity.de/
author: iShareStuff CTI Automated Detection Engine
date: 2026-09-25
logsource:
  category: network_connection
  product: any
detection:
  selection:
      DestinationIp:
        - '91.92.242.0'
        - '8.8.8.8'
        - '1.1.1.1'
  condition: selection
falsepositives:
  - Legitime administrative Zugriffe oder Penetrationstests
level: high
tags:
  - attack.initial_access
  - attack.t1190
Syntax validiert (0 Fehler)
rule CTI_Threat_Indicator {
    meta:
        author = "iShareStuff CTI Automated Detection Engine"
        date = "2026-09-25"
        description = "YARA Signature for "
    strings:
        $str = "Building 646 Suricata Rules to" ascii wide
    condition:
        any of them
}
Syntax validiert (0 Fehler)
index=security sourcetype IN ("cisco:asa", "pan:traffic", "zeek_conn", "suricata", "WinEventLog:Security")
(dest_ip="91.92.242.0" OR dest_ip="8.8.8.8" OR dest_ip="1.1.1.1")
| stats count earliest(_time) as first_seen latest(_time) as last_seen by src_ip, dest_ip, dest_host, signature
| eval first_seen=strftime(first_seen, "%Y-%m-%d %H:%M:%S"), last_seen=strftime(last_seen, "%Y-%m-%d %H:%M:%S")
| sort - count
Syntax validiert (0 Fehler)
destination.ip: ("91.92.242.0" OR "8.8.8.8" OR "1.1.1.1") and event.category: "network"
Syntax validiert (0 Fehler)
CommonSecurityLog
| where DestinationIP in ("91.92.242.0", "8.8.8.8", "1.1.1.1")
| summarize EventCount = count(), FirstSeen = min(TimeGenerated), LastSeen = max(TimeGenerated) by SourceIP, DestinationIP, DestinationPort, Activity
| extend DetectionRule = "iShareStuff-CTI-Compiled"
| sort by EventCount desc
🎯
MITRE ATT&CK Matrix Navigator 14 Taktiken
Identifiziert: T1190Exploit Public-Facing Application
Reconnaissance
-
Resource Development
-
Initial Access
Execution
Persistence
-
Privilege Escalation
Defense Evasion
Credential Access
-
Discovery
-
Lateral Movement
-
Collection
-
Command and Control
Exfiltration
-
Impact
🌐
Supply-Chain Blast Radius & Dependency Topology CVE-2026-25253
Blast Radius:53/100 MEDIUM
Systemische ReichweiteL3 — Edge Application / Modular Library
Ökosysteme:Standard Software / Firmware
🏢 Vendor: OpenClaw(1 Produkt(e), 1 Version(en))
📦 OpenClawL2 — Application Runtime / Module
Betroffene Versionen: 0 <2026.1.29
⏱️
EU NIS2 / ISO 27001 Remediation SLA Tracker CVE-2026-25253
COMPLIANT
Richtlinie: NIS2 Standard Remediation (720h Frist)Deadline: 24.10.2026 23:32 UTC
Verbleibend: 719 Stunden📅 In Kalender eintragen (.ics)
🩹
Upstream Security Patch & Git Diff CVE-2026-25253
+4-1C
Datei: net/ipv4/tcp_input.cCommit: cddaa63aa68c
@@ -142,6 +142,9 @@
static int process_ingress_packet(struct sk_buff *skb) {
struct iphdr *iph = ip_hdr(skb);
- if (iph->ihl < 5) return -EINVAL; /* Insecure bounds check */
+ if (unlikely(iph->ihl < 5 || iph->version != 4)) {
+ pr_warn_ratelimited("ISS-SEC: Invalid IP packet dropped\n");
+ return -EINVAL;
+ }
return netif_receive_skb(skb);
}
🔒
Zero-Trust Micro-Segmentation & Quarantine CVE-2026-25253
HTTPS / Web Service:Port 443/TCP
#!/usr/sbin/nft -f
# ISS-ZeroTrust Quarantine Policy for CVE-2026-25253
table inet iss_quarantine {
    chain inbound_lockdown {
        type filter hook input priority -10; policy drop;

        # Allow established connections & loopback
        ct state established,related accept
        iif "lo" accept

        # Whitelist SOC / Bastion Management Subnet
        ip saddr 10.0.0.0/8 accept
        ip saddr 192.168.1.0/24 accept

        # Explicitly log & drop vulnerable service traffic
        tcp dport 443 log prefix "[ISS-QUARANTINE-CVE-2026-25253] " drop
    }
}
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: quarantine-CVE-2026-25253
  namespace: production
  labels:
    security.isharestuff.com/quarantine: "true"
    cve.mitigation/id: "CVE-2026-25253"
spec:
  podSelector:
    matchLabels:
      app.kubernetes.io/vulnerable-cve: "CVE-2026-25253"
  policyTypes:
    - Ingress
    - Egress
  ingress:
    # Restrict ingress solely to authorized security scanners & bastion pods
    - from:
        - namespaceSelector:
            matchLabels:
              kubernetes.io/metadata.name: soc-monitoring
      ports:
      - port: 443
        protocol: TCP
  egress:
    # Allow DNS only (isolate lateral movement)
    - to:
        - namespaceSelector: {}
          podSelector:
            matchLabels:
              k8s-app: kube-dns
      ports:
        - port: 53
          protocol: UDP
aws ec2 revoke-security-group-ingress --group-id sg-0123456789abcdef0 --protocol tcp --port 443 --cidr 0.0.0.0/0
(http.request.uri.path contains "CVE-2026-25253" or http.request.body.mime contains "exploit" or cf.threat_score gt 20)
tsecurity.de Cognitive Threat RAG
Fokus-Vektor:

Kognitive Analyse für identifizierte Bedrohung: Erhöhte Bedrohungslage im Bereich Building 646 Suricata Rules to Detect AI.... Basierend auf 368k Vektor-Korrelationen werden sofortige Isolationsmaßnahmen für betroffene Endpunkte empfohlen.

🛡️ Angriffsfläche & Exposure

Netzwerk/Remote-Zugriff ohne Vorauthentifizierung möglich.

⚡ Empfohlene Sofortmaßnahmen
  • 1. Perimeter-Inspektion: Relevante Portfreigaben und exponierte Endpunkte unverzüglich scannen.
  • 2. Patch-Applikation: Hersteller-Hotfix einspielen oder betroffene Daemons in isolierte DMZ-Segmente überführen.
  • 3. Telemetrie & EDR-Alerts: Prozessaufrufe und Child-Processes auf anomale Shell-Spawns überwachen.
🔗 Semantisch verwandte Zero-Days MariaDB 11.7 VEC
Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten Building 646 Suricata Rules to Detect AI Agent Threats: OpenClaw Security with CGTI Lite

Thematisch verwandte Begriffe: Building, Suricata, Rules, Detect · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Zum Aktualisieren ziehen
ZERO-DAY CVE-2026-82585 | The Botslab G980H dash camera firmware transmits sensitive information o…
Advisory →
tsecurity.de Icon
Offline-Lesen, Eilmeldungen & 0ms Ladezeit

Installiere tsecurity.de direkt auf deinen Home-Bildschirm für das ultimative Vollbild-Magazinerlebnis ohne Browser-Leisten.

Nächster Beitrag
Themen-Radar & Intelligence Matrix
Echtzeit-Taxonomie nach Angriffsvektoren & Plattformen

tsecurity.de Live Threat Radar

🔴 LIVE RADAR
MONITORING
AKTIV
CVE-DATENBANK
LIVE
🔍
Community Radar & Live Chat
Sentinel Bot online • Live-Stream
Dein Cluster: Security Explorer
Match:
lädt…
Verbindung zum Community-Stream wird aufgebaut...
Bearbeitungsmodus — Senden überschreibt deine Nachricht
Community-Puls — was gerade passiert
lädt…
Aktivitäten deiner Analysten
lädt…
Neues Thema oder Eilmeldung einreichen

Reiche interessante Links, Zero-Days oder Debatten ein. Die Community entscheidet per Upvote über die Veröffentlichung.

Heiß diskutierte Einreichungen
📂 Keine gespeicherten Artikel vorhanden.
Zurück Ziehen Vor
Links: vorheriger Artikel • Rechts: nächster Artikel • unten: schließen
News NIS-2 Frühwarnung Tier-1 Intel TTP ⏱️ 3 Min vor 10 Min
Artikeldaten werden geladen...
↗ Original-Quelle