Skip to main content
48,174 CVEs in One Year: What BrokeIncident
4 min readFor Security Engineers

48,174 CVEs in One Year: What Broke

Between January and December 2025, the CVE Program disclosed 48,174 new vulnerabilities. That's 131 per day. Your team can't patch 131 things daily. Nobody can.

The real problem isn't the volume. It's what happens next: attackers now exploit vulnerabilities in under 5 days (median). You're not racing to patch before someone notices. You're racing to patch before someone's already inside.

This isn't a theoretical problem. Website vulnerabilities saw 6.29 billion attacks in 2025, up from 4 billion in 2024. That's a 56% increase in a single year.

What Happened

Security teams operated on an outdated assumption: that you have time between disclosure and exploitation to assess, prioritize, test, and deploy patches. The traditional vulnerability management cycle looked like this:

  1. CVE published
  2. Team reviews severity score
  3. Patch tested in staging
  4. Change control approval
  5. Production deployment

That cycle takes weeks. Attackers now move in days.

The gap between "vulnerability disclosed" and "vulnerability weaponized" collapsed. Teams still running monthly patch cycles found themselves defending against exploits that went active before their next maintenance window.

Timeline

Here's what the 2025 data shows:

Day 0: CVE disclosed to National Vulnerability Database
Day 1-2: Proof-of-concept code appears on GitHub
Day 3-4: Automated scanners start probing for vulnerable systems
Day 5 (median): Active exploitation begins
Day 30+: Most organizations' patch deployment window

The math doesn't work. By the time you've scheduled the patch, attackers have already scanned your perimeter.

Which Controls Failed

The failures weren't technical. They were process-based:

Lack of automated vulnerability triage
Teams manually reviewed CVSS scores and vendor advisories. With 131 new CVEs daily, manual review created a backlog that grew faster than it could be cleared.

No runtime protection layer
Organizations relied entirely on patching as their vulnerability response. When patches weren't available or couldn't be deployed immediately, there was no interim defense.

Patch deployment tied to change control windows
Monthly or quarterly maintenance windows made sense for stability. They don't make sense when exploits go active in 5 days.

Missing asset inventory
You can't patch what you don't know you have. Teams discovered vulnerable systems only after they were compromised.

No risk-based prioritization framework
Everything marked "critical" gets treated the same. When everything's critical, nothing is. Teams patched based on CVSS scores alone, ignoring whether the vulnerable service was internet-facing or handling sensitive data.

What Standards Require

NIST CSF v2.0 calls for continuous vulnerability identification and prioritization (ID.RA-01, ID.RA-02). "Continuous" doesn't mean monthly. It means daily automated scanning with risk scoring that considers exploitability, exposure, and business impact.

PCI DSS v4.0.1 Requirement 6.3.1 mandates that security vulnerabilities are identified and addressed. Requirement 11.3.1 requires external vulnerability scans at least quarterly and after significant changes. But "quarterly" fails when median time to exploit is 5 days. You need continuous monitoring.

ISO/IEC 27001:2022 Control 8.8 requires management of technical vulnerabilities, including timely information about vulnerabilities and evaluation of exposure. "Timely" is now measured in days, not weeks.

NIST 800-53 Rev 5 Control RA-5 (Vulnerability Monitoring and Scanning) requires automated scanning and remediation tracking. The control doesn't specify "monthly" for a reason.

The standards assume you're monitoring continuously and responding based on risk. Most teams were doing neither.

Lessons and Action Items

1. Implement automated vulnerability triage

Stop manually reviewing every CVE. Use automated tools that:

  • Pull from National Vulnerability Database feeds
  • Cross-reference your asset inventory
  • Score based on exploitability (EPSS), exposure, and business context
  • Generate prioritized remediation queues

If you're still emailing spreadsheets to engineering teams, you're already behind.

2. Deploy virtual patching for critical gaps

Virtual patching (also called "compensating controls" in PCI DSS terminology) provides immediate protection while you work on permanent fixes. This means:

  • Web application firewalls (WAF) with custom rules
  • Runtime application self-protection (RASP)
  • Network segmentation to limit blast radius

When a critical vulnerability drops and you can't patch immediately, virtual patching buys you time without leaving the door open.

3. Separate emergency patches from standard change control

Create a fast-track process for vulnerabilities with active exploitation. Your criteria:

  • Exploit code publicly available
  • Vulnerability affects internet-facing systems
  • EPSS score above 0.5 (50% probability of exploitation)

These get deployed within 48 hours, not 30 days.

4. Maintain a real-time asset inventory

You can't protect what you don't know about. Use automated discovery tools that:

  • Scan your network continuously
  • Track software versions
  • Map dependencies
  • Flag shadow IT

If someone spins up a vulnerable container in development and it accidentally hits production, you need to know within hours.

5. Adopt risk-based prioritization

CVSS scores aren't enough. Build a prioritization matrix that considers:

  • Is the service internet-facing?
  • Does it process sensitive data?
  • Is exploit code available?
  • What's the EPSS score?
  • What's the business impact if compromised?

A "critical" vulnerability in an isolated lab system ranks below a "medium" vulnerability in your customer-facing API.

6. Test your response time

Run tabletop exercises: "A critical RCE vulnerability just dropped in the web framework we use. Exploit code is on GitHub. What happens in the next 4 hours?"

If the answer is "we schedule a meeting to discuss it," you're not ready.

The 2025 numbers tell you where this is heading: more vulnerabilities, faster exploitation, higher attack volumes. Your controls need to match that pace, or you'll keep discovering breaches after they've already happened.

CVE Program National Vulnerability Database

Topics:Incident

You Might Also Like