Back to Feed
Agents / Benchmarks & Evals

Scaling Cyber Security Skills With AI

Original: CyberFactory: Scaling Cyber Security Capabilities with Instances from the Wild

Listen to the summary

Uses a voice available on your device

Audio options
On this page 5 sections
Related concepts 4 concepts

Key Takeaways

  • OpenAegis achieves a 52.4% Pass@1 rate on the CyberGym benchmark.
  • The model outperforms the Qwen 3.5 base model by 22.8 percentage points on CyberGym.
  • A vulnerability-analysis skill can increase teacher model performance while simultaneously reducing the time required per attempt from 60 minutes to 15 minutes.
  • The framework synthesizes training trajectories using vulnerability artifacts from ARVO, OSS-Fuzz, and real-world CVE data.

Summary & Methodology Analysis

CyberFactory provides a unified approach to building security-focused agents by connecting data construction, trajectory synthesis, and model training. The researchers source Proof of Concept (PoC) construction instances from three primary origins: ARVO (20 instances), OSS-Fuzz (4 instances), and vulnerabilities identified in the wild. These instances serve as the foundation for creating executable and verifiable task instances that guide the model through source code inspection and evidence-based validation. The framework uses agentic supervision, where the model interacts with tools and environments and adjusts its approach based on execution feedback to generate refined training trajectories. Supervised fine-tuning (a training process where a pre-trained model is further trained on a specific dataset) is then performed to finalize the OpenAegis model.

Interactive System Flowchart

Click diagram to expand and zoom

Illustrative Implementation

A short sketch of the paper's core idea, not the authors' own code.

# Illustrative sketch (not from the paper)
import torch
from torch import nn, optim

# 1. Convert a CVE entry into an executable task instance
def cve_to_task(cve_json):
    # placeholder: extract source code snippet and expected exploit goal
    return {"code": cve_json["snippet"], "goal": cve_json["goal"]}

# 2. Vulnerability‑analysis skill (teacher) that inspects source and proposes a solution
def vulnerability_analysis_skill(task, prior):
    # use domain prior (e.g., common patterns) to draft an exploit
    solution = f"apply {prior} to {task['code']}"
    return solution

# 3. Agentic supervision loop: execute solution, collect feedback, revise
def agentic_supervision(task, teacher, tool_exec, max_steps=3):
    solution = teacher(task, prior="buffer_overflow")
    for _ in range(max_steps):
        success, evidence = tool_exec(solution, task)
        if success:
            return solution, evidence
        # revise based on negative feedback
        solution = teacher(task, prior="use_after_free")
    return solution, None

# 4. Structured context compaction (simplify trajectory for training)
def compact_trajectory(solution, evidence):
    # keep only essential tokens: solution and key evidence snippet
    return {"solution": solution, "evidence": evidence[:200]}

# 5. Supervised fine‑tuning of OpenAegis on compacted trajectories
class OpenAegis(nn.Module):
    def __init__(self, base_model):
        super().__init__()
        self.backbone = base_model
        self.head = nn.Linear(base_model.hidden_size, base_model.vocab_size)
    def forward(self, x):
        return self.head(self.backbone(x))

# Mock training loop
def train(model, trajectories, epochs=1):
    opt = optim.Adam(model.parameters(), lr=1e-5)
    loss_fn = nn.CrossEntropyLoss()
    for epoch in range(epochs):
        for traj in trajectories:
            inputs = torch.tensor(traj["input_ids"])
            labels = torch.tensor(traj["target_ids"])
            logits = model(inputs)
            loss = loss_fn(logits.view(-1, logits.size(-1)), labels.view(-1))
            loss.backward()
            opt.step()
            opt.zero_grad()

Cross-Examination & FAQs

A deeper dive clarifying mechanics, constraints, and baseline evaluations.

Q1. What is the primary goal of this research?

The goal is to develop a transparent and reproducible way to scale cybersecurity capabilities using data from the wild.

Q2. What is the OpenAegis model?

OpenAegis is a cybersecurity-focused model initialized from the Qwen 3.5-397B-A17B checkpoint and trained using the CyberFactory framework.

Q3. How does this model perform compared to others?

OpenAegis reaches a 52.4% Pass@1 on the CyberGym benchmark, outperforming GLM 5.2 by 9.1 points and Kimi K2.7 by 0.7 points.

Q4. What training data sources are used for PoC construction?

The researchers use ARVO (20 instances), OSS-Fuzz (4 instances), and vulnerabilities found in the wild.

Q5. How does the vulnerability-analysis skill affect teacher model efficiency?

When applied to the GLM 5.2 teacher model, it raises the Pass@1 from 43.3% to 46.5% and reduces the time budget per attempt from 60 minutes to 15 minutes.

Q6. What are the limitations of the current framework?

The framework is limited by the availability of existing CVE artifacts, current benchmark coverage, and a fixed one-hour execution budget.

Q7. Does the model always use a fuzzing-first strategy?

No, some targets still benefit from manual input construction rather than a fuzzing-first strategy.

Q8. Is CyberFactory considered a complete solution?

No, the paper describes it as a preliminary step toward reproducible cybersecurity capability development.

Q9. What was the base model for OpenAegis?

The researchers initialized OpenAegis from the Qwen 3.5-397B-A17B checkpoint.

Flag an issue

What is wrong with this summary?

What is wrong?