Newly Observed FortiGate Alert

Last updated 13 days ago on 2026-01-21
Created 13 days ago on 2026-01-21

About

This rule detects FortiGate alerts that are observed for the first time in the previous 5 days of alert history. Analysts can use this to prioritize triage and response.
Tags
Use Case: Threat DetectionRule Type: Higher-Order RuleDomain: NetworkData Source: FortinetLanguage: esql
Severity
critical
Risk Score
99
License
Elastic License v2(external, opens in a new tab or window)

Definition

Integration Pack
Prebuilt Security Detection Rules
Related Integrations

fortinet_fortigate(external, opens in a new tab or window)

Query
text code block:
FROM logs-fortinet_fortigate.*, filebeat-* metadata _id | WHERE event.module == "fortinet_fortigate" and event.action in ("signature", "ssl-anomaly") and message is not null and event.category != "authentication" and message != "Connection Failed" and not message like "Web.Client: *" and not message like "Network.Service: *" and not message like "General.Interest*" and not message like "Update: *" | STATS Esql.alerts_count = count(*), Esql.first_time_seen = MIN(@timestamp), Esql.distinct_count_src_ip = COUNT_DISTINCT(source.ip), Esql.distinct_count_dst_ip = COUNT_DISTINCT(destination.ip), src_ip = VALUES(source.ip), dst_ip = VALUES(destination.ip), url_domain = VALUES(url.domain), url_path = VALUES(url.path) by message, event.category, event.outcome // first time seen is within 10m of the rule execution time | eval Esql.recent = DATE_DIFF("minute", Esql.first_time_seen, now()) | where Esql.recent <= 10 and Esql.alerts_count <= 5 and Esql.distinct_count_src_ip <= 2 and Esql.distinct_count_dst_ip <= 2 // move dynamic fields to ECS equivalent for rule exceptions | eval source.ip = MV_FIRST(src_ip), destination.ip = MV_FIRST(dst_ip), url.domain = MV_FIRST(url_domain), url.path = MV_FIRST(url_path) | keep message, event.category, event.outcome, Esql.*, source.ip, destination.ip, url.domain, url.path

Install detection rules in Elastic Security

Detect Newly Observed FortiGate Alert in the Elastic Security detection engine by installing this rule into your Elastic Stack.

To setup this rule, check out the installation guide for Prebuilt Security Detection Rules(external, opens in a new tab or window).