SecuAAS Docs

Detection Rules and Alerts

SecuSiem — Detection Rules and Alerts

Detection Rules and Alerts

Detection Rules and Alerts

Overview

SecuSiem implements a two-layer detection system:

  1. Regex-based rules with MITRE ATT&CK mapping for fast pattern matching
  2. Claude AI analysis for contextual threat assessment and false positive reduction

Pre-configured Detection Rules

SecuSiem ships with 10 detection rules covering key MITRE ATT&CK tactics:

1. SQL Injection (sql-injection)

FieldValue
SeverityCritical
MITRE TacticTA0001 - Initial Access
MITRE TechniqueT1190 - Exploit Public-Facing Application
Threshold1 match
PatternsUNION SELECT, SELECT FROM WHERE OR, DROP TABLE, INSERT INTO, command delimiters (--, ;, /*)

2. Cross-Site Scripting (xss-attempt)

FieldValue
SeverityHigh
MITRE TacticTA0001 - Initial Access
MITRE TechniqueT1190
Threshold1 match
Patterns<script>, javascript:, event handlers (onerror=, onload=), <iframe>

3. SSH Brute Force (brute-force-ssh)

FieldValue
SeverityHigh
MITRE TacticTA0006 - Credential Access
MITRE TechniqueT1110.001 - Password Guessing
Threshold5 matches in 300 seconds
PatternsFailed password for ... from ... port ... ssh, authentication failure.*user=

4. Path Traversal (path-traversal)

FieldValue
SeverityHigh
MITRE TacticTA0005 - Defense Evasion
MITRE TechniqueT1083 - File and Directory Discovery
Threshold1 match
Patterns../, /etc/passwd, /etc/shadow, URL-encoded variants

5. Command Injection (command-injection)

FieldValue
SeverityCritical
MITRE TacticTA0002 - Execution
MITRE TechniqueT1059 - Command and Scripting Interpreter
Threshold1 match
PatternsShell commands (cat, wget, curl, nc, bash), command chaining (&&, `

6. Privilege Escalation (privilege-escalation)

FieldValue
SeverityCritical
MITRE TacticTA0004 - Privilege Escalation
MITRE TechniqueT1068 - Exploitation for Privilege Escalation
Threshold1 match
Patternssudo su, passwd root, chmod +s

7. Suspicious File Access (suspicious-file-access)

FieldValue
SeverityMedium
MITRE TacticTA0007 - Discovery
MITRE TechniqueT1552 - Unsecured Credentials
Threshold1 match
Patterns/etc/shadow, /etc/passwd, .ssh/id_rsa, .aws/credentials, .docker/config.json

8. Data Exfiltration (data-exfiltration)

FieldValue
SeverityHigh
MITRE TacticTA0010 - Exfiltration
MITRE TechniqueT1048 - Exfiltration Over Alternative Protocol
Threshold3 matches in 600 seconds
Patternscurl -X POST, wget -O, scp @:

9. Unauthorized API Access (unauthorized-api-access)

FieldValue
SeverityMedium
MITRE TacticTA0006 - Credential Access
MITRE TechniqueT1110 - Brute Force
Threshold10 matches in 300 seconds
PatternsHTTP 401/403, Unauthorized, Forbidden

10. Malicious User Agent (malicious-user-agent)

FieldValue
SeverityMedium
MITRE TacticTA0001 - Initial Access
MITRE TechniqueT1190
Threshold1 match
Patternssqlmap, nikto, nmap, masscan, metasploit, havij, acunetix, nessus, burp, empty User-Agent

Detection Engine

The check_log_against_rules() function processes each log message:

def check_log_against_rules(log_message: str) -> List[Dict]:
    matches = []
    for rule in DETECTION_RULES:
        for pattern in rule["patterns"]:
            if re.search(pattern, log_message, re.IGNORECASE):
                matches.append({
                    "rule_id": rule["rule_id"],
                    "rule_name": rule["name"],
                    "severity": rule["severity"],
                    "mitre_tactic": rule["mitre_tactic"],
                    "mitre_technique": rule["mitre_technique"],
                })
                break  # Only report first match per rule
    return matches

Claude AI Analysis

After regex preprocessing, matched logs are sent to Claude for contextual analysis:

  1. Sonnet 4.5 (default): Quick analysis for routine detections
  2. Opus 4.5 (add-on): Deep analysis for complex threat scenarios ($150/analysis)

The AI provides:

  • Contextual threat assessment
  • False positive identification
  • Recommended remediation actions
  • Threat severity scoring

Periodic Analysis

The claude-analyzer runs a background task (configurable interval, default 300 seconds) that:

  1. Queries Loki for recent logs per tenant
  2. Applies detection rules
  3. Sends context to Claude API
  4. Generates alerts in the PostgreSQL database
  5. Updates tenant usage records

MITRE ATT&CK Coverage

Tactic IDTactic NameRules
TA0001Initial Accesssql-injection, xss-attempt, malicious-user-agent
TA0002Executioncommand-injection
TA0004Privilege Escalationprivilege-escalation
TA0005Defense Evasionpath-traversal
TA0006Credential Accessbrute-force-ssh, unauthorized-api-access
TA0007Discoverysuspicious-file-access
TA0010Exfiltrationdata-exfiltration

On this page