Risikobewertung für Entitäten in Regeln angeben
In diesem Dokument wird beschrieben, wie Risikobewertungen für Entitäten in Regeln verwendet werden. In „Regeln“ Risikobewertungen sich ähnlich wie Entitätskontext verhalten. Sie können YARA-L 2.0-Regeln schreiben, um Risikobewertungen als Haupterkennungsmethode zu verwenden. Weitere Informationen Informationen zu Regeln für die Risikoanalyse finden Sie unter Regeln für das Risiko erstellen Analytics: Weitere Informationen mehr risikobasierten Kontext erhalten, siehe Kontextsensitiven Google Analytics.
Wenn Sie eine Risikobewertung für eine Entität abrufen möchten, müssen Sie eine Entität mit einem UDM-Ereignis zusammenführen und das angegebene Feld aus EntityRisk abrufen.
Das folgende Beispiel zeigt, wie Sie eine Regel zum Generieren von Erkennungen für jeder Hostname der Entität, dessen Risikobewertung größer als 100 ist.
rule EntityRiskScore {
meta:
events:
$e1.principal.hostname != ""
$e1.principal.hostname = $hostname
$e2.graph.entity.hostname = $hostname
$e2.graph.risk_score.risk_window_size.seconds = 86400 // 24 hours
$e2.graph.risk_score.risk_score >= 100
// Run deduplication across the risk score.
$rscore = $e2.graph.risk_score.risk_score
match:
// Dedup on hostname, risk window, and score across a 4 hour window.
$hostname, $rwindow, $rscore over 4h
outcome:
// Force these risk score based rules to have a risk score of zero to
// prevent self feedback loops.
$risk_score = 0
condition:
$e1 and $e2
}
Diese Beispielregel führt auch eine Selbstdeduplizierung mithilfe des Übereinstimmungstyps . Ob eine Regelerkennung ausgelöst werden kann, aber der Hostname und die Risikobewertung bleiben innerhalb von 4 Stunden unverändert, werden keine neuen Erkennungen erstellt.
Die einzigen möglichen Risikofenster für Regeln für den Entitätsrisikowert sind 24 Stunden oder 7 Tage (86.400 bzw. 604.800 Sekunden). Wenn Sie das Tag Risikofenstergröße in der Regel hat, gibt die Regel ungenaue Ergebnisse zurück.
Daten zum Risikowert von Entitäten werden getrennt von Daten zum Entitätskontext gespeichert. Wenn Sie beide in einer Regel verwenden möchten, muss die Regel zwei separate Entitätsereignisse haben, eines für den Entitätskontext und eines für den Entitätsrisikowert, wie im folgenden Beispiel gezeigt:
rule EntityContextAndRiskScore {
meta:
events:
$log_in.metadata.event_type = "USER_LOGIN"
$log_in.principal.hostname = $host
$context.graph.entity.hostname = $host
$context.graph.metadata.entity_type = "ASSET"
$risk_score.graph.entity.hostname = $host
$risk_score.graph.risk_score.risk_window_size.seconds = 604800
match:
$host over 2m
outcome:
$entity_risk_score = max($risk_score.graph.risk_score.normalized_risk_score)
condition:
$log_in and $context and $risk_score and $entity_risk_score > 100
}