Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.
A vulnerability remediation SLA is the maximum time your program allows between finding a vulnerability and fixing it, set per risk tier. To set one, define tiers by real risk (severity plus exploitation, exposure and reachability), give each tier a deadline your teams can actually meet, start the clock at detection, and write down how exceptions work. Then measure SLA compliance per team and escalate before a deadline passes, not after.
This guide covers what a remediation SLA is, what PCI DSS and CISA require, example timelines you can adapt, and the mistakes that make SLAs look healthy while risk stays open.
A vulnerability remediation SLA is an internal commitment: findings in tier X will be fixed, mitigated or formally accepted within Y days of being found. It's called a service-level agreement because it works like one. Security sets the target, engineering teams own delivery, and both sides report against it.
Every SLA has four parts:
SLA compliance is the number boards, auditors and customers ask security leaders about, and it's often what a Director of Security is measured on.
The point of an SLA is not the deadline itself. The point is that it turns "we should fix this" into a commitment with an owner and a date. Without one, a finding's urgency depends on who is shouting about it this week.
SLAs also make trade-offs visible. If a team breaches SLA every month, the conversation moves from "why is security nagging us" to "this team needs more capacity, or fewer, better findings."
Most frameworks don't hand you a full SLA table. They set a few hard deadlines and expect you to define the rest through a documented risk ranking. Two are worth knowing.
PCI DSS v4.0.1 Requirement 6.3.3 requires patches for critical vulnerabilities to be installed within one month of release. Other applicable patches follow timeframes your organization sets through its risk ranking process (Requirement 6.3.1). The standard is published in the PCI Security Standards Council document library. Note that this clock starts at patch release, not at the moment you detect the vulnerability.
For US federal civilian agencies, CISA's Binding Operational Directive 26-04, issued June 10, 2026, replaced the fixed deadlines of BOD 19-02 and BOD 22-01 with risk-based timelines. Urgency is set by four factors:
Two details are useful for any program. The clock starts when the vulnerability is added to KEV or when the agency identifies it on an asset, whichever comes first. And if a vulnerability is added to KEV after you've already found it, the deadline shortens.
BOD 26-04 doesn't apply to private companies unless a contract requires it. It's still the clearest public model for risk-based SLAs.
A CVSS Critical in a test fixture and a CVSS Medium in an internet-facing payment API should not share a deadline. Build tiers from the same factors BOD 26-04 uses, plus one it can't see: whether the vulnerable code is reachable in your deployment.
A practical tier rule:
Findings that aren't reachable or aren't deployed get recorded with evidence and re-checked when the code changes. They don't need an SLA, because there's nothing to fix yet.
An SLA that every team breaches is a suggestion. Start from your current median time to remediate per tier, then set targets that are tighter but achievable. Shorten them each quarter as the process improves.
Here is an example policy to adapt. These numbers are a starting point, not an industry benchmark:
| Tier | Example deadline | Escalation starts | Who can grant an exception |
|---|---|---|---|
| Tier 1 | 7 days | Day 2 | CISO |
| Tier 2 | 14 days | Day 7 | Director of Security |
| Tier 3 | 30 days | Day 20 | Security engineering lead |
| Tier 4 | 90 days | Day 60 | Team lead, with security sign-off |
If you handle card data, check that your Tier 1 and Tier 2 deadlines also satisfy the PCI DSS one-month rule for critical patches.
Start the SLA clock when a scanner first reports the finding, not when someone triages it or files a ticket. Starting late hides the slowest queue, which is usually triage. If a finding's tier changes, for example because it lands on KEV, recalculate the deadline from the original detection date.
Decide what counts as "remediated." A merged and deployed fix stops the clock. So does an approved mitigation with a documented compensating control. A closed ticket, a suppressed alert or a "won't fix" does not, unless it went through the exception path.
Exceptions are normal. Some fixes need a vendor patch that doesn't exist yet, or a migration that takes a quarter. Make the process explicit:
An SLA without an owner is a countdown nobody is watching. Route each finding to the person who owns the code, using commit history and CODEOWNERS, and check they have the capacity to take it on.
Escalation should start well before the deadline, with the risk and the date stated. A Slack message to the owner on day two of a seven-day Tier 1 finding is worth more than a red cell on a dashboard on day eight.
Report the percentage of findings fixed within SLA, by tier and by team, along with the number currently overdue. Track each team against its own trend, because teams with older code will start from a different place.
Nullify's Security Program Management keeps one prioritized backlog across code vulnerabilities, leaked secrets, cloud misconfigurations, supply-chain risks and validated pentest findings. Each item is scored 0–100 on severity, exploitability, reachability and business impact, not raw CVSS, and actively exploited vulnerabilities that affect your stack move up automatically.
Owners come from CODEOWNERS, commit history and service metadata, and assignment accounts for each person's open PRs and tickets. Stalled security PRs and tickets are escalated through Slack with the risk and SLA stated, and the program reports MTTR, SLA compliance and per-team progress. See how it works on the security program management page.
There is no single standard. Many programs give the highest-risk tier days to two weeks, high-risk findings two to four weeks, and lower tiers one to three months. PCI DSS requires critical patches within one month of release. Set your own deadlines from your current remediation times and tighten them over time.
CVSS alone is a weak basis, because it doesn't know whether a vulnerability is exploited, exposed or reachable in your environment. Use CVSS as one input for impact, and combine it with KEV status, exposure and reachability to set the tier. CISA's BOD 26-04 uses this kind of risk-based model.
Start it at first detection, when a scanner first reports the finding. Starting at triage or ticket creation hides the time findings spend waiting in queues. PCI DSS measures its one-month rule from patch release, so track that date too if you're in scope.
It should go through a defined escalation and exception path: the owner and their lead are notified, and either the fix is prioritized or an exception is approved with a compensating control and an end date. Breaches should be reported per team so capacity problems become visible.
Divide the number of findings remediated within their deadline by the total number remediated in the period, per tier and per team. Report the current count of overdue findings alongside it, because compliance only counts findings that were closed.