Filters
How to search
  • Plain words find names, texts and examples.
  • "two words" finds the exact phrase.
  • --name or -x finds an option.
  • #word looks only inside commands.
  • @grep finds lessons and labs that use grep.
  • Filters: cat:network · in:labs · in:notes · level:rhcsa · ch:8 · root:yes. Put ! before a word to leave it out. OR between words means one of them.
  • ↑ ↓ to move · Enter to open · Esc to close · / to search

Vulnerability management & attack surfaceDevSecOps series

From CVE publish to patch deployed

A critical CVE is published on a Friday. The patch exists by Tuesday, but the service is not fixed until the deploy lands and the scan agrees, which is a different clock from the one in the advisory.

Quick reference

TimeStepWhat happens
T+0CVE publishedThe advisory names a package and a version range.
T+1Alert firesDependabot or a nightly SCA job opens a ticket.
T+2TriagedIs the package reachable from production code?
T+4Patch availableAn upstream release, or a pinned override.
T+6DeployedThe lockfile changes and the image rebuilds.
T+7VerifiedScan clean, exploit test fails, ticket closes.

Explained

The clock

T+0 is publication. The advisory names a package, a version range and a severity, and the clock starts whether or not your team has read it.

T+1 is the alert. Dependabot, a nightly SCA job or a registry webhook opens a ticket. The alert is not triage; it is a notification that a version in your lockfile now has a name.

T+2 is triage. Someone answers whether the package is reachable from production code, which service imports it and whether the vulnerable function is on a live path. This is where most of the seven days is spent, not on the patch.

T+4 is the patch. An upstream release is the clean route; a pinned override or a temporary fork is the route when the maintainer is silent.

T+6 is the deploy. The lockfile changes, the image rebuilds, the admission check passes the new digest and the rollout completes.

T+7 is verification. The scan is clean, the exploit test fails to land against the new build, and the ticket closes with evidence.

The target

The honest caveat: the seven days are a policy target, not a guarantee. Reachability triage can take longer than the patch, and some packages never get an upstream fix.

The lesson: publish a clock, then measure every event against it.

In one line

Seven days is a policy, not luck. The clock starts at publication, not at your first alert.

Check the clock

npm audit --audit-level=high

More notes: Vulnerability management & attack surface

Open in the notes app: search, filters, copy This note on GitHub