3.3 KiB
3.3 KiB
PR#63: Du bist dran Shows a Vulnerability Found on Main
WARNING: This document describes only the change applied in this PR. It may already be outdated once the next PR is merged. Historic PR documentation is not maintained along with new PRs; treat it as a snapshot.
Related Links
- PR#61, which brought Werkator's nightly build
vulnerability-data. - PR#62, after which a vulnerability on main fails no pull request.
Problem
Each night, Werkator's build vulnerability-data checks main for known vulnerabilities of its dependencies.
When it finds one, the build turns red, but nobody is told:
werkregie lists the build among many others, and since PR#62 no pull request fails on it.
The shared workflow requires such a vulnerability to be fixed at once, in a pull request of its own.
Non-Goals
- No vulnerability of a pull request's own; its check
werkator/dependenciesshows it. - No notification outside werkregie, e.g. by Matrix.
Specification
Feature: Du bist dran shows a vulnerability found on main
Scenario#63.01: a vulnerability on main is due
… so that the user fixes it at once.
- Given a repository whose latest nightly check of main found CVE-2015-6420 in
commons-collections3.2.1 - When the user opens werkregie
- Then "Du bist dran" lists it first, under "Absichern", with the vulnerability, the dependency and the repository
Verified by
Scenario#63.02: a fixed vulnerability is no longer due
… so that "Du bist dran" lists only what is still open.
- Given a failed nightly check of main, and a newer green one
- When the user opens werkregie
- Then "Du bist dran" lists no vulnerability of that repository
Verified by
Scenario#63.03: a check without report is due too
… so that a broken check does not hide the vulnerabilities.
- Given a failed nightly check of main without a report, e.g. after a failed download of the NVD data
- When the user opens werkregie
- Then "Du bist dran" lists the check as failed without a report
Verified by
Solution
WerkatorSourcemarks the newest build of a repository's main namedvulnerability-data, when it failed, with the markervulnerable; a newer green build of the same name supersedes it.- It reads the vulnerabilities from OWASP Dependency-Check's JSON report in the build's artifacts,
under
reports/dependency-check/ordashboard/build/reports/dependency-check/, once per build. - The page lists such a build first in "Du bist dran", in the group "Absichern", and links it to its build in Werkator.
doc/agentic-workflow.md, the master copy: the nightly check of main is namedvulnerability-data, so that werkregie shows its findings.- Version 0.40.0.