Triage and prioritize vulnerabilities using CISA's Stakeholder-Specific Vulnerability Categorization (SSVC) decision tree framework to produce actionable remediation priorities.
Automate repetitive workflows and reduce manual effort
Example: Generate reports, summarize documents, draft communications
Save 3-5 hours per week on routine tasks
Learn new skills, understand complex topics, get expert guidance
Example: Explain concepts, provide examples, suggest learning resources
Accelerate learning and skill development by 2x
Enhance output quality through reviews, suggestions, and refinements
Example: Review drafts, suggest improvements, catch errors
Improve work quality by 30-40% with less effort
Time estimate: 15-45 minutes depending on use case complexity
Prerequisites
Submit your Claude Code skill and start earning
epx add mukul975/Anthropic-Cybersecurity-Skills/triaging-vulnerabilities-with-ssvc-frameworkCompatible with
Supported agents
| name | triaging-vulnerabilities-with-ssvc-framework |
| description | Triage and prioritize vulnerabilities using CISA's Stakeholder-Specific Vulnerability Categorization (SSVC) decision tree framework to produce actionable remediation priorities. |
| domain | cybersecurity |
| subdomain | vulnerability-management |
| tags | - ssvc - vulnerability-triage - cisa - vulnerability-prioritization - decision-tree - cvss - remediation - risk-management |
| version | '1.0' |
| author | mahipal |
| license | Apache-2.0 |
| nist_csf | - ID.RA-01 - ID.RA-02 - ID.IM-02 - ID.RA-06 |
The Stakeholder-Specific Vulnerability Categorization (SSVC) framework, developed by Carnegie Mellon University's Software Engineering Institute (SEI) in collaboration with CISA, provides a structured decision-tree methodology for vulnerability prioritization. Unlike CVSS alone, SSVC accounts for exploitation status, technical impact, automatability, mission prevalence, and public well-being impact to produce one of four actionable outcomes: Track, Track*, Attend, or Act.
requests, pandas, and jinja2 librariesAssess current exploitation activity:
# Check if a CVE is in CISA Known Exploited Vulnerabilities catalog
curl -s "https://www.cisa.gov/sites/default/files/feeds/known_exploited_vulnerabilities.json" | \
python3 -c "import sys,json; data=json.load(sys.stdin); cves=[v['cveID'] for v in data['vulnerabilities']]; print('Active' if 'CVE-2024-3400' in cves else 'Check PoC/None')"
Determine scope of compromise if exploited:
Evaluate if exploitation can be automated at scale:
How widespread is the affected product in your environment:
Potential consequences for physical safety and public welfare:
| Outcome | Action Required | SLA |
|---|---|---|
| Track | Monitor, remediate in normal patch cycle | 90 days |
| Track* | Monitor closely, prioritize in next patch window | 60 days |
| Attend | Escalate to senior management, accelerate remediation | 14 days |
| Act | Apply mitigations immediately, executive-level awareness | 48 hours |
import requests
import json
# Fetch CISA KEV catalog
kev_url = "https://www.cisa.gov/sites/default/files/feeds/known_exploited_vulnerabilities.json"
kev_data = requests.get(kev_url).json()
kev_cves = {v['cveID'] for v in kev_data['vulnerabilities']}
# Fetch EPSS scores for context
epss_url = "https://api.first.org/data/v1/epss"
epss_response = requests.get(epss_url, params={"cve": "CVE-2024-3400"}).json()
def evaluate_exploitation(cve_id, kev_set):
"""Determine exploitation status from CISA KEV and EPSS data."""
if cve_id in kev_set:
return "active"
epss = requests.get(
"https://api.first.org/data/v1/epss",
params={"cve": cve_id}
).json()
if epss.get("data"):
score = float(epss["data"][0].get("epss", 0))
if score > 0.5:
return "poc"
return "none"
def evaluate_technical_impact(cvss_vector):
"""Parse CVSS vector for scope and impact metrics."""
if "S:C" in cvss_vector or "C:H/I:H/A:H" in cvss_vector:
return "total"
return "partial"
def evaluate_automatability(cvss_vector, cve_description):
"""Check if attack vector is network-based with low complexity."""
if "AV:N" in cvss_vector and "AC:L" in cvss_vector and "UI:N" in cvss_vector:
return "yes"
return "no"
def ssvc_decision(exploitation, tech_impact, automatability, mission_prevalence, public_wellbeing):
"""CISA SSVC decision tree implementation."""
if exploitation == "active":
if tech_impact == "total" or automatability == "yes":
return "Act"
if mission_prevalence in ("essential", "support"):
return "Act"
return "Attend"
if exploitation == "poc":
if automatability == "yes" and tech_impact == "total":
return "Attend"
if mission_prevalence == "essential":
return "Attend"
return "Track*"
# exploitation == "none"
if tech_impact == "total" and mission_prevalence == "essential":
return "Track*"
return "Track"
# Run the SSVC triage script against scan results
python3 scripts/process.py --input scan_results.csv --output ssvc_triage_report.json
# View summary
cat ssvc_triage_report.json | python3 -m json.tool | head -50
# Export Nessus scan as CSV, then process
python3 scripts/process.py \
--input nessus_export.csv \
--format nessus \
--output ssvc_results.json
# Export OpenVAS results as XML
python3 scripts/process.py \
--input openvas_report.xml \
--format openvas \
--output ssvc_results.json
# Test SSVC decision logic with known CVEs
python3 -c "
from scripts.process import ssvc_decision
# CVE-2024-3400 - Palo Alto PAN-OS command injection (KEV listed)
assert ssvc_decision('active', 'total', 'yes', 'essential', 'material') == 'Act'
# CVE-2024-21887 - Ivanti Connect Secure (PoC available)
assert ssvc_decision('poc', 'total', 'yes', 'support', 'minimal') == 'Attend'
print('All SSVC decision tests passed')
"
AI-first code editor with Composer
Before installing skills in Cursor, ensure your development environment meets these requirements:
node --versiontriaging-vulnerabilities-with-ssvc-frameworkExecute the skills CLI command in your project's root directory to begin installation:
epx add mukul975/Anthropic-Cybersecurity-Skills/triaging-vulnerabilities-with-ssvc-frameworkFetches triaging-vulnerabilities-with-ssvc-framework from mukul975/Anthropic-Cybersecurity-Skills and configures it for Cursor.
The CLI shows a list of agents. Use arrow keys and space to select Cursor:
Confirm successful installation by checking the skill directory location:
.cursor/skills/triaging-vulnerabilities-with-ssvc-framework
Restart Cursor to activate triaging-vulnerabilities-with-ssvc-framework. Access via /triaging-vulnerabilities-with-ssvc-frameworkin your agent's command palette.
Learn more:View source on GitHubSkills CLI docsAbout CursorWhat are agent skills?
Steps
Common Pitfalls
✓ Do
✗ Don't
💡 Pro Tips
✓ Use when
Use when skill capabilities match your task, clear ROI on time saved, and you can validate outputs. Best for repetitive tasks, learning, and quality improvement.
✗ Avoid when
Avoid when task requires deep expertise you can't validate, involves sensitive decisions, or when learning process is more valuable than speed of completion.
implementing-cisa-zero-trust-maturity-model
mukul975/Anthropic-Cybersecurity-Skills · implementing-cisa-zero-trust-maturity-model · same repo
performing-thick-client-application-penetration-test
mukul975/Anthropic-Cybersecurity-Skills · performing-thick-client-application-penetration-test · same repo
analyzing-network-traffic-with-wireshark
mukul975/Anthropic-Cybersecurity-Skills · analyzing-network-traffic-with-wireshark · same repo
correlating-security-events-in-qradar
mukul975/Anthropic-Cybersecurity-Skills · correlating-security-events-in-qradar · same repo
building-red-team-c2-infrastructure-with-havoc
mukul975/Anthropic-Cybersecurity-Skills · building-red-team-c2-infrastructure-with-havoc · same repo
performing-wifi-password-cracking-with-aircrack
mukul975/Anthropic-Cybersecurity-Skills · performing-wifi-password-cracking-with-aircrack · same repo
triaging-vulnerabilities-with-ssvc-framework fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
We added triaging-vulnerabilities-with-ssvc-framework from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
I recommend triaging-vulnerabilities-with-ssvc-framework for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
triaging-vulnerabilities-with-ssvc-framework is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
I recommend triaging-vulnerabilities-with-ssvc-framework for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
Solid pick for teams standardizing on skills: triaging-vulnerabilities-with-ssvc-framework is focused, and the summary matches what you get after install.
We added triaging-vulnerabilities-with-ssvc-framework from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
Useful defaults in triaging-vulnerabilities-with-ssvc-framework — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
triaging-vulnerabilities-with-ssvc-framework fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
Solid pick for teams standardizing on skills: triaging-vulnerabilities-with-ssvc-framework is focused, and the summary matches what you get after install.
showing 1-10 of 72