Alert Triage

How ARIA Triages Wazuh Alerts

Alert triage is not alert scoring. ARIA runs enrichment queries before AI sees the event, requires the model to cite its evidence sources in the verdict, verifies that verdict with a second model, and checks that the evidence base is complete before closing anything automatically.

The Problem with Alert Scoring

The most common AI triage approach in security tools is alert scoring: a model receives an alert and outputs a score. High score → investigate. Low score → close. The approach is operationally simple but has a structural problem: the score is only as good as the model's training data. An alert type the model has not seen reliably, an unusual combination of fields, an emerging technique not yet in the training set — all of these produce scores that may not reflect the actual risk.

ARIA's triage approach is different. Rather than scoring, it investigates: gathering evidence from external sources, reasoning over that evidence explicitly, and producing a verdict where each stated conclusion is grounded in specific data. The distinction is not just architectural — it changes what you can do with the output. A score is opaque. A cited verdict can be reviewed, challenged, and audited.

Stage 1 — Bypass Check

Before enrichment or AI triage, the alert is checked against a set of deterministic bypass rules. These rules match on specific Wazuh rule ID and process signature combinations that have been confirmed as reliably benign in context. If the alert matches a bypass rule, it closes immediately with the rule match recorded in the trace. No enrichment, no AI.

Bypass rules are narrow. They cover known false positive patterns — specific software installers, scheduled tasks from named applications, process parent chains that fire a Wazuh rule but represent legitimate behavior in this environment. They are reviewed before deployment and do not use probabilistic reasoning.

Stage 2 — Deterministic Enrichment

Alerts that pass the bypass check enter the enrichment stage. Enrichment is deterministic: structured queries to specific sources, with structured outputs. The stage does not use AI.

What enrichment collects depends on the alert type. For alerts with IP indicators: threat intelligence lookups against OTX, CISA KEV, and other configured feeds. For all alerts: alert history for the involved entity — what has this endpoint or user account generated in recent history. For cloud events (Microsoft 365, Google Workspace): identity context including MFA status, assigned roles, and recent login events.

Every query result — including failures and empty responses — is recorded in the enrichment log. The triage model will see not just what enrichment found but what it tried to find and could not. Absent evidence is not the same as no relevant information.

Stage 3 — LLM Triage with Cited Verdict

The LLM receives the enriched alert package and produces a structured verdict. The verdict format enforces citation: each factual claim must reference the specific enrichment result that supports it. A claim about an IP's reputation must cite the threat intel lookup output. A claim about the user's recent activity must cite the alert history query result. Claims without citations do not pass validation and trigger a fallback path.

The verdict also carries a confidence level and a disposition recommendation: benign, investigate, or escalate. The confidence level is calibrated to the evidence: an alert with strong corroborating signals in multiple enrichment sources warrants high confidence. An alert with a single weak signal and no corroboration warrants low confidence. Low-confidence verdicts do not auto-close.

Stage 4 — Independent Verification

The triage verdict goes to a second LLM from a different vendor. The verifier checks whether citations match their sources, whether confidence is consistent with the evidence, and whether any required enrichment was not consulted. If the verifier identifies a gap, the verdict is disputed and the alert routes to a security engineer regardless of the triage conclusion.

The verifier runs even for high-confidence, clearly benign verdicts. The verification step is not optional for well-scoring alerts — it applies universally. This is the property that prevents systematic model failures from producing a batch of incorrect auto-closes: the second model checks the work on every alert.

Stage 5 — Sufficiency Check and Routing

Before auto-close is permitted, the sufficiency check runs: were all required enrichment sources successfully queried, and did the verdict's claims actually rely on their outputs? If a required source failed and the verdict depends on its data, auto-close is blocked. The alert routes to a security engineer with the enrichment failure noted.

Routing after the sufficiency check: benign verdict with no verifier dispute and complete evidence → auto-close with full trace preserved. Uncertain verdict, verifier dispute, or insufficient evidence → engineer queue with full context. High-confidence threat → immediate escalation with full evidence package.

Every alert exits the pipeline with a complete trace: the original Wazuh event, enrichment results, triage verdict with citations, verifier assessment, sufficiency check outcome, and routing decision. The trace is the record of how the alert was handled.

What every auto-closed Wazuh alert has on record:

  • Original Wazuh alert fields verbatim
  • Bypass rule match (if applicable) or full enrichment results
  • LLM triage verdict with per-claim citations
  • Verifier assessment (agreement or specific objection)
  • Sufficiency check result
  • Routing decision and timestamp
Common Questions
How does auto-close work without missing a real threat?
Three checks run before any alert auto-closes: the triage model must conclude benign with sufficient confidence, the verifier must agree without flagging a gap, and the sufficiency check must confirm that required enrichment data was present. All three must pass. If any one fails, the alert goes to a security engineer. The design accepts more engineer workload in exchange for a lower false-close rate.
What does "evidence sufficiency" mean in practice?
Each alert type has required enrichment. An alert involving a public IP indicator requires threat intelligence to be checked. A cloud alert requires identity context. If the required check failed — the lookup timed out, the API was unavailable, the query returned an error — the alert cannot auto-close on the AI verdict alone. The sufficiency check is a gate, not a suggestion.
Can a benign Wazuh rule trigger an escalation through AI triage?
Yes. If the enrichment stage finds threat intelligence matches, recent corroborating alerts, or anomalous identity context for an alert that Wazuh assigned a low severity, the triage model's verdict may recommend escalation based on the enrichment evidence. Wazuh's severity is one input; the enrichment context can change the verdict.
Is the triage trace visible to the client?
Yes. The full trace — enrichment results, triage verdict, verifier assessment, routing decision — is accessible from the alert detail view in the SOC dashboard. Clients can review how each alert was classified and what evidence supported the classification.
What is the difference between a "disputed" verdict and an "uncertain" verdict?
An uncertain verdict means the triage model assessed the evidence as insufficient to classify with high confidence — the alert's own evidence is ambiguous. A disputed verdict means the verifier found a specific problem with an otherwise confident triage verdict — a claim that exceeds its evidence, or a required source that was not consulted. Both route to a security engineer, but for different reasons.

See ARIA in Practice

Book a free assessment to see how the pipeline handles your actual alert environment.

Book Free Assessment
No contract. No setup fee. Cancel anytime.

See Plans

Starting at $799/month. No long-term contracts required.

View Pricing