Security in a Workflow: Exploring Role-Based Agentic Architectures for Vulnerability Handling
This paper proposes and evaluates a role-based agentic workflow comprising Planner, Analyzer, Fixer, and Verifier agents to bridge the gap between isolated LLM security tasks and real-world industrial practices, demonstrating a 44% vulnerability detection accuracy and 19% fix accuracy on 25 real-world C/C++ vulnerabilities.
Original paper licensed under CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer
Imagine you are trying to fix a very old, complex house (a software program written in C or C++) that has hidden cracks and weak spots (security vulnerabilities). In the past, you might have hired a single, super-smart detective (a standard AI) to look at the house, find the cracks, and try to patch them all at once. Sometimes this detective gets it right, but often they get overwhelmed, miss subtle clues, or patch the wrong wall.
This paper proposes a different approach: hiring a specialized team of agents instead of one lone detective. They work together in a strict assembly line, where everyone has a specific job.
Here is how the team works, using the paper's findings:
1. The Team Roles (The "Agentic Workflow")
The researchers set up a digital team with four distinct roles, similar to a construction crew:
- The Planner (The Site Manager): Before anyone starts digging, this agent scans the blueprints (the code) to spot obvious trouble spots. It doesn't fix anything; it just points the team toward the areas that look suspicious, like "Check the back door" or "Look at the foundation."
- Key Finding: The paper found that having this "Site Manager" was crucial. When they removed this role, the team's ability to find problems dropped by nearly half.
- The Analyzer (The Inspector): This is the main detective. They take the clues from the Planner and the raw code to figure out exactly what is broken, why it's broken, and how a burglar could get in.
- Key Finding: The researchers tried giving this agent a high-tech metal detector (a tool called CodeQL) to help find cracks. Surprisingly, the metal detector didn't always help. Sometimes it gave too many false alarms, confusing the Inspector. The best results came from the AI model itself doing the deep thinking, rather than relying heavily on the extra tool.
- The Fixer (The Repairman): Once the Inspector says, "The door frame is rotting," the Fixer tries to build a new door. They write the code to patch the hole.
- Key Finding: This was the hardest job. While the team was decent at finding the problem (about 44% accurate), actually fixing it correctly was much harder (only about 19% accurate). Often, the Fixer would patch the hole but accidentally break something else nearby or add unnecessary parts.
- The Verifier (The Safety Inspector): After the repair is done, this agent double-checks the work. They ask: "Did you actually fix the rot? Did you make the house safer, or did you just paint over the crack?"
- Key Finding: This role was quite good at spotting mistakes, catching about 69% of the errors in the repairs.
2. The Experiment
The researchers tested this team on 25 real-world security holes found in popular C/C++ software (like the kind used in safety-critical systems). They used three different "brains" (AI models) to power the team members.
They compared two versions of the team:
- Team A: Just the four roles talking to each other.
- Team B: The same four roles, but the Inspector was given the CodeQL metal detector to help find the cracks.
3. What They Discovered
- The "Manager" Matters Most: The most important part of the process was the Planner. Without a manager to guide the team on where to look, the AI got lost. With the manager, the team performed as well as a top-tier commercial AI (GPT-5.5) at finding the bugs.
- Tools Aren't Magic: Giving the Inspector a fancy tool (CodeQL) didn't automatically make them better. In fact, it sometimes made things worse because the AI struggled to interpret the tool's data correctly. The paper suggests that for low-level computer languages (like C), the AI needs to be smart enough to prioritize the clues itself.
- Finding vs. Fixing: It is much easier for AI to find a security hole than to fix it. The team found the bugs about 44% of the time, but only fixed them correctly 19% of the time.
- Human Touch is Still Needed: Because the "Repairman" (Fixer) often made mistakes or added unnecessary changes, the paper concludes that in real-world security, you can't just let the AI run the show. You need a human to look over the AI's shoulder, check the repairs, and make sure the house is actually safe.
The Bottom Line
This paper doesn't claim that AI can now perfectly secure software on its own. Instead, it shows that organizing AI into a structured team with clear roles is a better way to handle security than letting one AI do everything. However, even with a great team, the "fixing" part is still tricky, and human experts are still essential to verify the work.
Drowning in papers in your field?
Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.