Skip to content

Commit 314c475

Browse files
committed
chore: handle re-occurring scan vulnerability alerts
1 parent 3b9f2a8 commit 314c475

4 files changed

Lines changed: 97 additions & 13 deletions

File tree

.agents/skills/aicr-managing-openvex/SKILL.md

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22
name: aicr-managing-openvex
33
description: |
44
Use when adding, updating, or removing CVE/GHSA suppressions in
5-
`.openvex.json` — the OpenVEX document consumed by the daily image
5+
`.openvex.json` — the OpenVEX document consumed by the weekly image
66
vulnerability scan workflow. Triggers on "VEX", "OpenVEX",
77
".openvex.json", "suppress CVE", "ignore CVE", "vulnerability
88
suppression", "aiperf-bench CVE", or any request to act on findings
9-
reported by `Daily Image Vulnerability Scan` for the aiperf-bench
9+
reported by `Weekly Image Vulnerability Scan` for the aiperf-bench
1010
image. Keeps the file current: adds reachability-evidenced statements
1111
for new HIGH+ findings, drops statements that no longer apply
1212
(dependency upgraded past the fix, advisory recalled, package
@@ -17,7 +17,7 @@ description: |
1717

1818
`.openvex.json` carries per-CVE reachability evidence used to suppress
1919
vulnerability findings in the aiperf-bench container image. The file is
20-
consumed by the `Daily Image Vulnerability Scan` workflow
20+
consumed by the `Weekly Image Vulnerability Scan` workflow
2121
(`.github/workflows/vuln-scan-images.yaml`) via the `vex:` input on
2222
`anchore/scan-action@v7.4.0`, which passes it to grype as `--vex
2323
.openvex.json`.
@@ -28,7 +28,7 @@ no-ops every statement in the document.
2828

2929
## When to use
3030

31-
- A `Daily Image Vulnerability Scan` run reports HIGH+ CVE(s) on the
31+
- A `Weekly Image Vulnerability Scan` run reports HIGH+ CVE(s) on the
3232
aiperf-bench image and a maintainer needs to add a suppression after
3333
verifying reachability.
3434
- A maintainer bumps the aiperf pin (`AIPERF_VERSION` in
@@ -192,7 +192,8 @@ findings, not discrepancies.
192192

193193
## Triage a new finding from the scan workflow
194194

195-
The daily scan emits HIGH+ identifiers in the per-image artifact and
195+
The weekly scan (Thursdays, 06:00 UTC) emits HIGH+ identifiers in the
196+
per-image artifact and
196197
Slack notification:
197198

198199
```
@@ -225,7 +226,7 @@ For each ID:
225226
5. **Run the stale audit** (next section) — every edit to the file MUST
226227
include it, so dead statements never accumulate alongside new ones.
227228
6. **Commit and dispatch the workflow** to confirm CI matches local.
228-
Run `gh workflow run "Daily Image Vulnerability Scan" --repo
229+
Run `gh workflow run "Weekly Image Vulnerability Scan" --repo
229230
NVIDIA/aicr --ref main`, watch with `gh run watch <id> --exit-status`,
230231
inspect the aiperf-bench scan-result artifact.
231232

@@ -262,7 +263,7 @@ For each candidate, classify before deleting — three distinct cases:
262263
`.ignoredMatches[]` with `appliedIgnoreRules[].namespace == ""`):
263264
`--only-fixed` already hides it, so the VEX statement never applies.
264265
**Delete** — do not keep it "just in case": if the distro ships a
265-
fix, the daily image rebuild absorbs it automatically, and until it
266+
fix, the weekly image rebuild absorbs it automatically, and until it
266267
does the finding must surface rather than be pre-suppressed (a fix
267268
that becomes reachable means bump, not VEX).
268269
3. **Present in `.matches[]` under a different primary ID** (a CVE

.github/workflows/vuln-scan-images.yaml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,14 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
name: Daily Image Vulnerability Scan
15+
name: Weekly Image Vulnerability Scan
1616

1717
on:
1818
schedule:
19-
- cron: '0 6 * * *' # Daily at 6:00 AM UTC
19+
# Weekly on Thursday at 6:00 AM UTC. Every run reports the full HIGH+
20+
# set, carried-over findings included -- an open vulnerability keeps
21+
# being reported until it is fixed or VEX-suppressed.
22+
- cron: '0 6 * * 4'
2023
workflow_dispatch:
2124
inputs:
2225
notify_slack:

0 commit comments

Comments
 (0)