Project · Beginner · about 10 hours
A vulnerability management pipeline
Scan an application's dependencies and container image, prioritise findings by real risk, and produce a tracked, deadline-driven remediation plan.
Skills:CI/CD, Python, Vulnerability management
Part of: Cybersecurity Engineer
Brief
Scanners produce far more findings than any team can fix at once. Build the pipeline and the process that turns a scan into a short, prioritised, tracked list of fixes.
What to build
Take an app with an old dependency set and a Dockerfile
Add CI steps that run a dependency audit (pip-audit, npm audit or similar) and an image scan (Trivy or Grype)
Write a script that deduplicates findings and ranks them with EPSS scores and the CISA KEV catalogue, plus your own context (internet-facing, sensitive)
Produce a remediation plan: what to fix now, soon and later, with owners and deadlines by risk
Apply the top fixes, rescan to verify, and document any risk you accept with an expiry date
Deliverables
Repository with
.github/workflows/,prioritise/,PLAN.mdand before-and-after scans
How it is graded
Reviewers rerun your prioritisation and check that KEV and high-EPSS issues are at the top and that fixes verify.
Stretch
Add a scheduled weekly scan that opens an issue when a new high-risk vulnerability appears in unchanged code.
Deliverables
- A pipeline that scans dependencies and the container image on every push
- A prioritisation script using EPSS and the CISA KEV catalogue
- A remediation plan with owners, risk-based deadlines and a verification step
- A before-and-after showing the backlog cleared or accepted with justification
How a reviewer grades it
| Criterion | Weight | What good looks like |
|---|---|---|
| Scans cover dependencies and the image and run in CI | 25% | |
| Prioritisation uses exploit likelihood and known-exploited data, not just severity | 35% | |
| Remediation plan is realistic with owners and SLAs | 25% | |
| Verification proves the fixes worked | 15% |