Spectrum Research

DefendBench

A frontier benchmark for complex security operations work and reasoning. It grades AI agents on the defensive work security teams do every day, inside realistic enterprise environments.

v1.0 · Updated October 27, 2026Read the launch post →

Best model's pass rate
31%Best model's pass rate
Tasks
100Tasks
Models
14Models

Leaderboard

Share of tasks passed. Pick a discipline to rank by it, or select a column heading to sort.

Model + harnessTasks passed
1Opus 5.5+ Claude Code31.0%31 / 100$3.2314 min
2GPT 5.6 Sol+ Codex29.0%29 / 100$2.7012 min
2Fable 5.1+ Claude Code29.0%29 / 100$6.3618 min
4GPT 6 Astra+ Codex28.0%28 / 100$8.6720 min
5Gemini 4 Argon+ Gemini CLI23.0%23 / 100$1.3514 min
6DeepSeek V4.1 Flash+ OpenCode21.0%21 / 100$1.4813 min
7GLM 5.3 Flash+ OpenCode20.0%20 / 100$1.5422 min
8GPT 6 Sol+ Codex19.0%19 / 100$1.9011 min
8GPT 6 Luna+ Codex19.0%19 / 100$1.4813 min
10Gemini 3.8 Flash+ Gemini CLI18.0%18 / 100$0.417 min
10Kimi K3+ OpenCode18.0%18 / 100$6.8145 min
12GPT 6.1 Sol+ Codex15.0%15 / 100$2.4015 min
12GLM 5.3+ OpenCode15.0%15 / 100$3.0030 min
14GLM 5.2+ OpenCode12.0%12 / 100$1.7914 min
Discipline

Every score is tasks passed out of 100 (or out of that discipline's tasks). Cost is the average API spend per task and latency is the median wall-clock time per task.

Relative performance

Overall score against what it costs to get there. Each line joins one provider's models, so you can see a family's trade-off at a glance. Toggle between cost and latency.

  • Anthropic
  • OpenAI
  • Google
  • DeepSeek
  • Z.ai
  • Moonshot
10%15%20%25%30%35%$0.5$1$2.5$5$10Cost per task (log scale) →↖ BetterAnthropicOpenAIGoogleDeepSeekZ.aiMoonshot

Benchmark criteria

We currently measure 5 key categories of SecOps work, with more coming soon.

  • Threat researchActors, incidents and campaigns to the behaviors worth detecting
  • Detection authoringLog discovery, field validation, SIEM-native rules
  • Detection tuningCut false positives without losing true ones, proven by replay
  • Detection health & maintenanceRules that silently stopped working: field drift, broken lookups, rule-logic errors
  • SecOps data engineeringParsing, filtering, routing and normalization in pipeline tools like Cribl and Bindplane
  • Coming soon
    Threat huntingFind active threats that existing detections missed
  • Coming soon
    InvestigationAlert to scope, timeline and containment
  • Coming soon
PlatformsSplunkMicrosoft SentinelElasticGoogle SecOpsCrowdStrike Falcon Next-Gen SIEMDatabricks

Example tasks

Each task is graded against a list of criteria that must all hold for a pass. The launch post walks through both in full: the request, the environment, and every criterion.

Task 01 · Detection authoringHard

Tampering with source control

“Create detections for unauthorized modification or deletion of internal source artifacts, and for anomalous use of source control and CI/CD service accounts.”

Environment and passing outcome

Environment

Splunk and Microsoft Sentinel: GitHub, GitLab and Azure DevOps, with eight sources that all look like source control data, split across the two SIEMs.

Passing outcome

  • Inventories all eight sources by their contents, catching a dead legacy connector and CI job logs named like an audit log.
  • Pushes back on the GitHub source it was told to use: the audit stream never records which ref or files a push changed, so tag moves and workflow edits are blocked there.
  • Never builds on job-log text or endpoint command lines as proof of a server-side change.
Read the full walkthrough →
Task 02 · Detection healthExtreme

Determine if this detection rule is healthy or broken

“Determine if this detection rule is healthy or broken, and if it's broken, fix it. The rule is “Gain code execution on ADFS server via remote WMI execution.””

Environment and passing outcome

Environment

Microsoft Sentinel with Windows Security events and Microsoft Defender for Endpoint: a rule that finds ADFS servers, then alerts when remote WMI activity reaches one of them.

Passing outcome

  • Verdict: Broken, with two independent defects. The Windows Security branch reads ProcessName, which is empty on every process-creation event (the executable path is in NewProcessName). The Sysmon branches read a table that holds no Sysmon data.
  • Moves the rule to Defender for Endpoint rather than only patching the column: process activity joined to network logons on the same device, and WMI subscriptions and remote WMI operations from Defender's device events. Windows Security reaches only about half the servers, so a column-only fix stays blind to every Defender-only host.
  • Reads the zero correctly. No ADFS server shows up anywhere in the environment, so a repaired rule that returns nothing is expected, not a failed fix.
  • Avoids the tempting wrong answers: Healthy because it never fired, fixing the column and stopping, onboarding Sysmon when Defender already records the behavior, and calling the fix a failure because it returned zero.
Read the full walkthrough →

How scoring works

  • Pass or fail, per task

    A pass means the output is correct. There is no partial credit.

  • Criteria-based verifiers

    Each task has assertions that must all be true. Some are checked deterministically, some by an agent judge.

  • Planted red herrings

    Distractors drawn from real environments test whether the agent verifies before it concludes.

  • Model + harness

    Each model runs in the agent harness it's built for: Claude Code for Anthropic, Codex for OpenAI, Gemini CLI for Google, OpenCode for open-weight models. Every pair gets the same tasks, environment and grader.

Changelog

v1.0
October 27, 2026 · Initial release. 100 tasks across five disciplines and six SIEMs. 14 models evaluated.

See how an agent performs on your environment

DefendBench stays private so its tasks stay out of training data. Spectrum runs the same kind of work against your own SIEM.

Connect Spectrum