This repository contains the full implementation of an attack-phase aware, machine-learning–adaptive vulnerability prioritization framework that unifies:
- CVSS (severity)
- EPSS (exploit likelihood)
- MITRE ATT&CK (adversarial techniques)
- Unified Cyber Kill Chain (UCKC) (attack phase context)
- Adaptive ML Weighting (dynamic α, β, γ, δ coefficients)
- Explainability (SHAP)
✔ Full CVSS v3.1 parsing from NVD
✔ Missing CVSS metric prediction using ML
✔ EPSS dataset integration
✔ ATT&CK → UCKC phase mapping
✔ Static and adaptive PSSS scoring
✔ Weight evolution simulation
✔ SHAP explainability
✔ Ready-to-run Python script
src/ → main Python script
data/ → datasets (NVD, EPSS, ATT&CK)
results/ → plots generated by experiment
notebooks/ → demo Jupyter notebook
docs/ → diagrams & documentation
- Parse NVD CVEs
- Extract/Infer CVSS metrics
- Merge EPSS
- Map ATT&CK techniques
- Convert ATT&CK → Unified Cyber Kill Chain (UCKC) phases
PSSS = 0.4·CVSS + 0.4·EPSS + 0.2·ATT&CK
Machine learning model learns the weights dynamically:
PSSS = α·CVSS + β·EPSS + γ·ATT&CK + δ·UCKC
- SHAP values
- Feature importance charts
- Attack-phase influence
pip install -r requirements.txt
python src/adaptive_vulnerability_prioritization_with_uckc_integration.py
Results stored in /results:
- Static PSSS distribution
- Adaptive PSSS distribution
- Weight evolution curves
- SHAP feature importance
- Top 20 prioritized CVEs
The methodology, results, discussion, and diagrams are stored under:
docs/PAPER_SECTIONS.md
MIT License.
#cvss #epss #mitre-attack #uckc #cybersecurity #vulnerability-management #machine-learning #shap #adaptive-weighting #risk-scoring