EOL Software & Compliance: SOC 2, PCI, and HIPAA

ModernLift · ·10 min read
Part 2 of 10

EOL software creates compliance risk because SOC 2, PCI DSS, and HIPAA all expect systems handling sensitive data to be supported and patchable. None bans old software by name, but each treats an unsupported, unpatchable component as a control gap — so end-of-life software typically surfaces as an audit finding under the patch-management, vulnerability-management, or risk-assessment expectations of whichever framework applies.

A note on what this article is before we start. It explains, conceptually, how end-of-life software tends to appear in three common audits. It is not legal or compliance advice, it does not cite specific control numbers, and it cannot tell you how a particular assessor will treat a particular system — that is what your auditor and your compliance counsel are for. What it can do is give a technical leader an accurate mental model of why an unsupported component becomes an audit problem, so the modernization conversation starts from the right place.

Part 1 listed compliance as one of the five risks of end-of-life software and called it the one that turns quiet age into a dated problem on someone’s desk. This part is why. An audit is the mechanism that converts “this is old” into “this is a finding, with an owner and a remediation deadline” — and the conversion runs through a sentence every framework dislikes: the vendor no longer patches this.

The common thread across every framework

Start with what these frameworks share, because it is more important than their differences. None of SOC 2, PCI DSS, or HIPAA contains a rule that says “do not run end-of-life software.” They are not version blocklists. What they share is an expectation of capability: that systems handling sensitive data can be kept current against known vulnerabilities, that there is a working process to identify and remediate weaknesses, and that risk is assessed and managed rather than ignored.

End-of-life software collides with that expectation at a single point. The defining property of an unsupported component, from Part 1, is that no patch will ever ship for a vulnerability found tomorrow. A framework that expects you to remediate known vulnerabilities is, in effect, expecting a thing the vendor has made impossible. That gap — between the capability the framework assumes and the capability an unsupported product can deliver — is where the finding lives. The specifics differ by framework; the mechanism does not.

SOC 2

SOC 2 is an attestation, performed by a CPA firm, that an organization’s controls meet the Trust Services Criteria it chooses to report against — Security always, and optionally Availability, Confidentiality, Processing Integrity, and Privacy. It is principle-based rather than prescriptive: it does not hand you a checklist of approved software, it evaluates whether your controls are designed well and operating effectively.

Several of those criteria assume systems are supported and patchable — the expectations around managing vulnerabilities, deploying changes, and protecting against unauthorized access all presuppose a system you can actually maintain. An end-of-life component does not automatically fail the audit. What it does is force a question: how do you manage vulnerabilities in a system the vendor no longer patches? If the honest answer is “we don’t,” that is a control gap, and it becomes a finding or a noted exception in the report. If the answer is a documented set of compensating measures — isolation, monitoring, restricted access — the auditor evaluates whether those measures actually carry the weight the missing patches used to. EOL turns a routine control into one you have to argue for.

PCI DSS

PCI DSS is the most prescriptive of the three and the most direct about software currency. It governs the cardholder data environment — the systems that store, process, or transmit payment-card data — and it expects those systems to be protected against known vulnerabilities and kept current with vendor security patches within defined timeframes.

Unsupported software runs straight into that. A component the vendor no longer patches cannot satisfy the patch expectation on its own terms, so it generally requires documented compensating controls: additional, specific measures that an assessor evaluates as reducing the risk the absent patches would have covered. Compensating controls are legitimate and sometimes the right interim answer, but they are not free — they have to be justified, documented, and re-validated, and an assessor can reject them as insufficient. The practical effect is that every in-scope EOL component converts from a maintained system into an ongoing argument you have to win at each assessment. The cleanest way out of that argument is to reduce scope — to get the unsupported component out of the cardholder data environment entirely, which is a modernization question, not a paperwork one.

HIPAA

HIPAA’s Security Rule governs the protection of electronic protected health information (ePHI) for covered entities and business associates. Like SOC 2, it is risk-based rather than a list of mandated products: its central requirement is a risk analysis — identifying reasonably anticipated threats to ePHI — followed by reasonable and appropriate safeguards to address them.

An end-of-life component that can no longer be patched is precisely the kind of risk that analysis is expected to surface. The exposure under HIPAA is therefore not the mere presence of old software; it is failing to identify and address it in the risk analysis, or identifying it and doing nothing. A documented decision — this system is EOL, here is the risk, here are the safeguards, here is the timeline to remediate — is the framework working as intended. An undocumented EOL system that a breach later reveals nobody had assessed is the failure mode. The framework rewards honest assessment and a plan; it punishes silence.

How EOL shows up, framework by framework

FrameworkWhat it governsWhat it expectsWhere EOL software lands
SOC 2Controls meeting the Trust Services CriteriaEffective vulnerability and change managementA control gap — finding or noted exception in the report
PCI DSSThe cardholder data environmentCurrency against known vulnerabilities; timely patchingRequires documented, assessor-evaluated compensating controls
HIPAAElectronic protected health informationA risk analysis and reasonable, appropriate safeguardsAn unassessed or unmitigated risk the analysis should have caught

The pattern is the same in three accents: the framework assumes you can maintain the system; EOL removes that ability; the gap is what gets written up.

What this means for modernization

Two practical consequences follow, and they shape how a compliance-aware leader should think about the work.

First, compensating controls buy time, not resolution. Isolating an EOL system, restricting access, and monitoring it heavily are real risk reductions and often the correct immediate move. But they are a holding pattern that costs effort to maintain and defend every cycle, and they do not make the underlying problem go away. They are the runway to modernization, not a substitute for it.

Second, scope is the lever. The expensive version of this problem is an unsupported component sitting in the middle of a regulated boundary — the cardholder data environment, the systems touching ePHI. Modernizing or isolating that component to remove it from scope is what actually retires the finding. This is where the slice-by-slice approach earns its place: you can lift the highest-exposure component out of the regulated boundary first, prove it behaves identically (Part 8), and clear that specific finding without rewriting the whole system. Part 9 turns this into a roadmap sequenced by compliance pressure.

What this article can’t do for you

Everything above is a conceptual model, and a conceptual model is not a ruling. Frameworks are interpreted by assessors and auditors who apply judgment to a specific environment, and reasonable assessors can land differently on the same compensating control. We deliberately have not cited control numbers or quoted requirement text, because getting those exactly right for your situation is the job of your auditor and your compliance team — and a confidently wrong citation is worse than none. Use this to understand why EOL software becomes an audit problem and to brief the modernization conversation accurately. Do not use it as the basis for a compliance decision; that conversation belongs with the people who will actually sign the attestation.

Where this leads

This part explained how unsupported software collides with the frameworks. The next narrows to the technical core of the security side: the runtime that no longer gets patched. Part 3, Unpatched Runtime Security Risk, takes apart what “unpatched” actually means as a risk — the widening gap between known and fixable vulnerabilities, why dependency chains make it worse than a single version number suggests, and how to reason about exposure without reaching for alarm.

Frequently asked questions

Does SOC 2 prohibit end-of-life software?
SOC 2 does not name specific products or versions. It evaluates whether your controls meet the Trust Services Criteria you are reporting against — and several of those criteria assume systems are supported and patchable. An unsupported component does not automatically fail an audit, but it forces a question about how you manage vulnerabilities you cannot patch, and a weak answer there becomes a finding or an exception in the report.
Is running EOL software a HIPAA violation?
HIPAA does not list banned software. Its Security Rule requires covered entities to conduct a risk analysis and apply reasonable, appropriate safeguards for protected health information. An EOL component that can no longer be patched is a risk that analysis is expected to identify and address — so the exposure is failing to assess and mitigate it, not the mere presence of old software. This is a conceptual summary, not legal or compliance advice.
How does EOL software show up in a PCI DSS assessment?
PCI DSS expects systems in the cardholder data environment to be protected against known vulnerabilities and kept current with security patches. Software the vendor no longer patches cannot meet that expectation directly, so it generally requires documented compensating controls — additional measures that reduce the risk the missing patches would have addressed — which an assessor evaluates. Unsupported components in scope are a common source of findings.
All 10 parts of EOL, Security & Compliance Risk →