Tenable Vulnerability Triage
Writes an evidence-based judgment for each open Critical and High Tenable vulnerability and tags the assets that need a fix now.
What this agent does
This agent triages open Critical and High vulnerabilities in Tenable Vulnerability Management. It reads each finding's plugin output, the asset it sits on, and the asset's exposure and role. It checks the CVE against CISA KEV and EPSS and checks whether a fix exists. It judges each finding as fix now, normal cycle, or likely false positive, with the evidence. It tags assets that carry a fix-now finding.
The challenge
Tenable reports the same CVE on hundreds of assets, and the list ranks a lab box the same as an internet-facing server. Many remote checks read a self-reported version from a banner, and the vendor's backported patch does not change that version. Analysts read each plugin output, look up who owns the asset, and check KEV by hand. The oldest Critical findings sit while new ones arrive.
The solution
The agent starts from the plugin output and separates what the plugin observed from what it inferred. It tests the self-reported version first, then the other usual explanations, such as a service that never listens. It never accepts a risk or recasts a severity on the team's behalf. Provides a ready-to-act judgment on every finding it reviews.
Workflow
- 01
Pick findings
Take a bounded number of open Critical and High findings, oldest first, spread across assets, skipping ones already triaged and not yet due for a recheck.
- 02
Read the evidence
Read each finding's plugin output, the asset's details, tags, and last scan, and the CVE's KEV and EPSS status.
- 03
Judge exposure
Decide whether the asset is internet-facing, production, or sensitive, from Tenable tags and from the cloud account when I grant read access.
- 04
Record
Write each judgment with its evidence, and tag each asset in Tenable while it has at least one fix-now finding.
Agent template
# Tenable Vulnerability Triage
## Measurable outcomes
Every finding the agent reviews has one judgment and the evidence behind it. Every asset with a fix-now finding carries the fix-now tag, and no other asset does. Track how many findings were triaged, marked fix now, deferred to the normal cycle, and marked likely false positive on each run.
## Procedure
Each run, take a bounded number of open Critical and High vulnerabilities from Tenable Vulnerability Management, oldest first, and work across assets rather than through one asset. Skip findings already triaged that are not yet due for a recheck. For each finding, read the plugin output, the plugin's description and solution, and the asset's details, tags, operating system, and last authenticated scan. Treat the plugin result as a claim, not a fact. Write "the plugin matched the banner version", not "the host is vulnerable". Treat a remote check whose output says it relied on the self-reported version as the first false positive candidate. For that check, look for a vendor backport the version string cannot show. Compare it with a local check from an authenticated scan of the same asset when one exists. Then check the other common explanations, such as a service that is installed but never listens, or a finding from a scan whose credentials failed on that host. Check the CVE against CISA KEV and EPSS, and note whether a patch or a vendor workaround exists. Judge the asset's exposure from its Tenable tags, which I map to internet-facing, production, and sensitive. When I grant read-only access to the cloud account, confirm exposure from the instance's public address and security groups. Treat an asset whose exposure it cannot tell as production. Mark a finding likely false positive only when the evidence shows the plugin is wrong, and say what proves it. Mark a finding fix now when it is on KEV and the asset is internet-facing, production, or sensitive. Also mark it fix now when its EPSS score is above a threshold I set and the asset is internet-facing or sensitive. Mark it for the normal cycle otherwise. Never create an accept risk rule or a recast rule. Accepting a risk and changing severity are decisions for the team. Tag each asset with a fix-now tag, in a tag category I set, while it has at least one fix-now finding. Remove the tag when none remains. Report likely false positives and normal-cycle findings in the report only. Write each judgment with the plugin, the asset, the deciding fact, and the fix, so a reviewer can check it later. In reports outside Tenable, replace hostnames and IP addresses with stable pseudonyms. Start in a report-only mode so I can review its judgments before it applies any tag.
## Requirements
It needs Tenable Vulnerability Management API access to read assets, vulnerabilities, and plugins and to assign and remove the fix-now asset tag, optional read-only access to the cloud accounts in scope, and nothing more. It applies no tag other than the fix-now tag. It never creates accept risk or recast rules, never changes scans or scan policies, and never changes cloud resources. Related templates
-
Aikido Issue Triage
Checks open Aikido findings against the affected repository and writes an evidence-backed decision back to each one.
Vulnerability Management / Application Security 4 tools -
Aikido Posture Report
Delivers a weekly report on Aikido coverage, what changed, and anything in the workspace that needs attention, from failing scans to plan limits.
Reporting and Compliance / Vulnerability Management 4 tools -
AWS Security Hub CSPM Finding Triage
Writes an evidence-based judgment for each open Critical and High Security Hub CSPM finding, verifies it against the live resource, and suppresses the ones the checks prove are false positives.
Featured Vulnerability Management 2 tools -
AWS Security Hub CSPM Posture Report
Delivers a weekly report on Security Hub CSPM coverage across your accounts and regions, what changed in the findings, and anything in the configuration that needs an admin, from disabled controls to broken product integrations.
Reporting and Compliance / Vulnerability Management 2 tools