CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/cve-exploitability-triage

Ranks known CVE findings by real-world exploitability instead of severity alone: enriches each CVE with its EPSS probability (the chance exploitation activity is observed in the next 30 days) and CISA KEV membership (confirmed exploited in the wild), applies OpenVEX status assertions to set aside vulnerabilities the product is not affected by, applies a reachability heuristic for vulnerable code that is never called, and assigns every finding to one of four buckets (Fix-Now, Fix-This-Sprint, Fix-Backlog, Accept-Risk) using documented EPSS thresholds. Treats a CISA KEV listing as non-waivable under any justification. Use when a dependency, container image, or SBOM vulnerability scan has produced more CVEs than the team can fix in the available window and someone has to decide which ones get fixed first and which can wait.

69

Quality

87%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

Overview
Quality
Evals
Security
Files

Low

Low-risk findings.

1 low severity finding. Worth noting, but not necessarily harmful.

Low

W011: Third-party content exposure detected (indirect prompt injection risk).

What this means

The skill exposes the agent to untrusted, user-generated content from public third-party sources, creating a risk of indirect prompt injection. This includes browsing arbitrary URLs, reading social media posts or forum comments, and analyzing content from unknown websites.

Why it was flagged

SKILL.md Step 3 and Step 2 enrich outsider-provided CVE identifiers by fetching and ingesting free-text fields from the CISA KEV JSON feed and EPSS CSV/API responses at runtime (e.g., `requiredAction`, `shortDescription`, and notes), even though the attacker can’t directly publish to those sources.

Where we found it

www.cisa.gov

domain · 7 sites

The plugin instructs the agent to fetch the CISA KEV JSON feed at runtime (line 148 curl command) and ingest free-text fields like requiredAction, shortDescription, and notes into the triage report.

epss.empiricalsecurity.com

domain · 2 sites

The plugin instructs the agent to download the bulk EPSS CSV from this host at runtime and use the numeric scores for triage bucketing.

SKILL.md

90

https://epss.empiricalsecurity.com/epss_scores-current.csv.gz

SKILL.md

95

curl -sSL https://epss.empiricalsecurity.com/epss_scores-current.csv.gz \

api.first.org

domain · 4 sites

The plugin instructs the agent to query the FIRST EPSS API at runtime for per-CVE enrichment data that drives triage bucketing decisions.

SKILL.md

103

https://api.first.org/data/v1/epss

SKILL.md

105

https://api.first.org/epss

SKILL.md

108

curl -sS "https://api.first.org/data/v1/epss?cve=CVE-2021-44228,CVE-2019-16759&pretty=true"

SKILL.md

112

https://api.first.org/epss

Report incorrect finding
Audited
Security analysis
Snyk