AS-301a · Module 2

Vulnerability Scanning Pipelines

4 min read

Good news, everyone! Your agent infrastructure has vulnerabilities right now. Not because you made mistakes — because vulnerabilities are discovered daily in every software component you depend on. The container base images, the language runtimes, the third-party libraries, the operating systems — all of them have CVEs being published continuously. Manual vulnerability management at enterprise scale is a fantasy. Automated scanning is the only approach that keeps pace with the rate of vulnerability disclosure.

A vulnerability scanning pipeline has four stages. Discovery: scanning all agent infrastructure to build a complete inventory of software components, versions, and dependencies. Every container image, every installed package, every linked library. If you do not know what you are running, you cannot know whether it is vulnerable. Assessment: comparing the software inventory against vulnerability databases — NVD, vendor advisories, and threat intelligence feeds — to identify known vulnerabilities. Prioritization: ranking vulnerabilities by severity, exploitability, and exposure. Not all CVEs are equal — a critical vulnerability in an internet-facing service is more urgent than a moderate one in an isolated backend component. Remediation: patching, upgrading, or mitigating the vulnerability and verifying the fix.

  1. Discovery Run software composition analysis (SCA) on every container image, agent dependency tree, and infrastructure component. Build a complete bill of materials. This runs automatically on every build and on a weekly schedule for deployed infrastructure.
  2. Assessment Match the software bill of materials against vulnerability databases. Use automated scanners (Trivy, Grype, Snyk) integrated into your CI/CD pipeline. Every build that introduces a known critical or high vulnerability is blocked from deployment.
  3. Prioritization Rank findings by CVSS score, exploitability, and exposure. A CVSS 9.0 in a container that handles untrusted input is P0. A CVSS 9.0 in an internal-only batch job with no network exposure is P2. Context determines urgency, not just severity score.
  4. Remediation Patch or upgrade the affected component, rebuild the container image, and deploy. Verify the fix with a rescan. Track mean-time-to-remediate as a key metric — it tells you how fast your team closes the gap between discovery and fix.