Patch the CVE in the version you already run. No upgrade. Your CVE. Patched in your version.
CVE Index · Seal Security

Patch the CVE. Zero upgrades.

Your scanner flagged it, and the advisory says upgrade. Upgrading means a migration, a regression cycle and a release nobody planned. Seal backports the security fix to the version you are running today and delivers it as a drop-in build. Same coordinates, same API, no upgrade, no code changes.

Across Seal's patching platform

Engineering hours saved
1.2M+
Estimated engineering hours returned to roadmaps by avoiding forced upgrades and regression work.
Average patch size
6.5lines
A small, focused security fix that your team can review without taking on a migration.

Engineering hours are estimated from CVEs patched and the average upgrade and regression effort avoided per fix.

CVE index

Every CVE in the projects below. Bring us the ID and the version you are pinned to, and Seal builds the patch against the version you already run. Not on the list? Bring it anyway.

Apache Tomcat CVEs

CVE-2026-68525 CVE-2026-65905 CVE-2026-65182 CVE-2026-43515 CVE-2026-43514 CVE-2026-43513 CVE-2026-43512 CVE-2026-42498 CVE-2026-41293 CVE-2026-41284 CVE-2026-34500 CVE-2026-34487 CVE-2026-34486 CVE-2026-34483 CVE-2026-32990 CVE-2026-29146 CVE-2026-29145 CVE-2026-29129 CVE-2026-25854 CVE-2026-24880 CVE-2026-24734 CVE-2026-24733 CVE-2025-66614 CVE-2025-61795 CVE-2025-55754 CVE-2025-55752 CVE-2025-55668 CVE-2025-53506 CVE-2025-52520 CVE-2025-52434 CVE-2025-49125 CVE-2025-49124 CVE-2025-48989 CVE-2025-48988 CVE-2025-46701 CVE-2025-31651 CVE-2025-31650 CVE-2025-24813 CVE-2024-56337 CVE-2024-52318 CVE-2024-52317 CVE-2024-52316 CVE-2024-50379 CVE-2024-38286 CVE-2024-34750 CVE-2024-24549 CVE-2024-23672 CVE-2024-21733 CVE-2023-46589 CVE-2023-45648 CVE-2023-44487 CVE-2023-42795 CVE-2023-42794 CVE-2023-41080 CVE-2023-34981 CVE-2023-28709 CVE-2023-28708 CVE-2023-24998 CVE-2022-45143 CVE-2022-42252 CVE-2021-25329 CVE-2021-25122 CVE-2021-24122 CVE-2020-17527 CVE-2020-13943 CVE-2020-13935 CVE-2020-13934 CVE-2020-11996 CVE-2020-9484 CVE-2020-1938 CVE-2020-1935 CVE-2019-17569 CVE-2019-17563 CVE-2019-12418 CVE-2019-10072 CVE-2019-0232 CVE-2019-0221 CVE-2019-0199 CVE-2018-11784 CVE-2018-8037 CVE-2018-8034 CVE-2018-8014 CVE-2018-1336 CVE-2018-1305 CVE-2018-1304 CVE-2017-12617 CVE-2017-12616 CVE-2017-12615 CVE-2017-5651 CVE-2017-5648 CVE-2016-8745 CVE-2016-8735 CVE-2016-6816 CVE-2016-5388 CVE-2016-5018 CVE-2014-0119 CVE-2014-0099 CVE-2014-0096 CVE-2014-0095 CVE-2014-0075 CVE-2012-5886 CVE-2008-1947 CVE-2007-5342

Spring Framework CVEs

jackson-databind CVEs

Log4j CVEs

Netty CVEs

Jetty CVEs

Keycloak CVEs

CVE-2026-37982 CVE-2026-37981 CVE-2026-37980 CVE-2026-37979 CVE-2026-37978 CVE-2026-37977 CVE-2026-18963 CVE-2026-11986 CVE-2026-9803 CVE-2026-9802 CVE-2026-9801 CVE-2026-9798 CVE-2026-9795 CVE-2026-9794 CVE-2026-9793 CVE-2026-9792 CVE-2026-9791 CVE-2026-9704 CVE-2026-9689 CVE-2026-9088 CVE-2026-9087 CVE-2026-8922 CVE-2026-8830 CVE-2026-7571 CVE-2026-7507 CVE-2026-7504 CVE-2026-7500 CVE-2026-7307 CVE-2026-4874 CVE-2026-4636 CVE-2026-4634 CVE-2026-4633 CVE-2026-4630 CVE-2026-4628 CVE-2026-4325 CVE-2026-4282 CVE-2026-3911 CVE-2026-3872 CVE-2026-3429 CVE-2026-3190 CVE-2026-3121 CVE-2026-3009 CVE-2026-2733 CVE-2026-2603 CVE-2026-2575 CVE-2026-2092 CVE-2026-1529 CVE-2026-1486 CVE-2026-1190 CVE-2026-1035 CVE-2026-0871 CVE-2025-14778 CVE-2025-14559 CVE-2025-14083 CVE-2025-14082 CVE-2025-13881 CVE-2025-13467 CVE-2025-12390 CVE-2025-12150 CVE-2025-12110 CVE-2025-11429 CVE-2025-9162 CVE-2025-8419 CVE-2025-7784 CVE-2025-7365 CVE-2025-3910 CVE-2025-3501 CVE-2025-2559 CVE-2025-1391 CVE-2025-0604 CVE-2024-10270 CVE-2024-10039 CVE-2024-8883 CVE-2024-8698 CVE-2024-7341 CVE-2024-7318 CVE-2024-7260 CVE-2024-5967 CVE-2024-4629 CVE-2024-4540 CVE-2024-4028 CVE-2024-3656 CVE-2024-2419 CVE-2024-1722 CVE-2024-1249 CVE-2024-1132 CVE-2023-6927 CVE-2023-6841 CVE-2023-6787 CVE-2023-6717 CVE-2023-6563 CVE-2023-6544 CVE-2023-6484 CVE-2023-6291 CVE-2023-6134 CVE-2023-4918 CVE-2023-3597 CVE-2023-2585 CVE-2023-2422 CVE-2023-1664 CVE-2023-0657 CVE-2023-0264 CVE-2023-0105 CVE-2023-0091 CVE-2022-4361 CVE-2022-2232 CVE-2022-1466 CVE-2022-1438 CVE-2022-1274 CVE-2022-1245 CVE-2022-0225 CVE-2021-20323 CVE-2021-20262 CVE-2021-20202 CVE-2021-20195 CVE-2021-4133 CVE-2021-3856 CVE-2021-3827 CVE-2021-3754 CVE-2021-3637 CVE-2021-3632 CVE-2021-3424 CVE-2020-35509 CVE-2020-27838 CVE-2020-27826 CVE-2020-14389 CVE-2020-10776 CVE-2020-10770 CVE-2020-10686 CVE-2020-1744 CVE-2020-1731 CVE-2020-1728 CVE-2020-1724 CVE-2020-1714 CVE-2020-1698 CVE-2020-1697 CVE-2019-14837 CVE-2019-14832 CVE-2019-14820 CVE-2019-10201 CVE-2019-10199 CVE-2019-10170 CVE-2019-3875 CVE-2019-3868 CVE-2018-14658 CVE-2018-14637 CVE-2018-10912 CVE-2018-10894 CVE-2017-12161 CVE-2017-2646 CVE-2017-2585 CVE-2017-2582 CVE-2016-8629 CVE-2016-8609 CVE-2014-3709 CVE-2014-3656 CVE-2014-3655 CVE-2014-3652 CVE-2014-3651

pac4j CVEs

Apache Struts CVEs

Bouncy Castle CVEs

axios CVEs

Fastify CVEs

Next.js CVEs

Express CVEs

body-parser CVEs

Socket.IO CVEs

Angular CVEs

React CVEs

node-forge CVEs

jose CVEs

Why this list exists

The ticket says "upgrade." Your roadmap says otherwise.

Every CVE above was fixed somewhere upstream, in some later release. That is the industry's answer and it is why the backlog never clears: the fix ships to a version you are not running, and the work to get there is a migration, not a patch.

!

The fix exists, just not for your version

Upstream patches the line it is currently maintaining. Pinned to something older? The advisory reads as "upgrade to fix", and your only options are a migration or an open finding that stays open.

⇡

Most of them are not your code

A modern app pulls in hundreds of transitive dependencies. You did not choose the vulnerable version, you inherited it, and you still own the finding on the report.

⏱

Seal watches these projects before the CVE

Seal monitors every project on this page for silent security fixes upstream, so the next one is often sealed before its CVE goes public.

The fix path

Patch now. Upgrade on your own timeline.

Seal backports the security fix into the exact version you run and ships it as a sealed, drop-in build. Seal fixes up to 99% of vulnerabilities in critical and high severity, across Maven, npm, PyPI, Go, NuGet, RubyGems, Composer and OS packages, and the patch itself is usually fewer than 10 lines. As we showed in our research on the patch gap, waiting on somebody else's release train is the slowest path there is.

How we do it

The fix, without the migration. A sealed version is your exact version plus the security patch, 6.5 lines on average.

Running in your build
spring-beans
4.3.30.RELEASE 4.3.30.RELEASE-sp1
CVE-2022-22965 · critical 9.8 sealed · no CVE
4.3.x reached end of life on 31 Dec 2020
CachedIntrospectionResults.java · spring-beans 5.3.18
31 Mar 2022
  PropertyDescriptor[] pds = this.beanInfo.getPropertyDescriptors();context
  for (PropertyDescriptor pd : pds) {context
+    if (Class.class == beanClass && (!"name".equals(pd.getName())the fix
+        && !pd.getName().endsWith("Name"))) {the fix
+        continue;  // only name variants of Classthe fix
+    }the fix
+    if (ClassLoader.class … ProtectionDomain.class) {the fix
+        continue;  // nobody needs to bind to thosethe fix
    if (logger.isTraceEnabled()) {context
Shipped in 5.3.18 and 5.2.20 only. Never in 4.3.x.

Verified against your version, not the newest one

Every backport is built and tested before it ships.

Builds clean against 4.3.30.RELEASE
Spring 4.3 test suite passes
Public API byte-compatible, no call sites change
Spring4Shell payload no longer binds

Delivered where your builds already look

A distinct version your tooling can resolve, pin, and audit.

JFrog Artifactory
Seal remote repository, resolves transparently
Sonatype Nexus
Same coordinates, sealed version
Seal CLI in CI
Discovery, substitution, scanner sync
Signed evidence
Patch source, SBOM entry, provenance

No application code changes. No manifest rewrites. Version pins stay yours.

The finding closes on the next scan

A real version bump, so your system of record moves on its own.

Finding
Severity
Status
CVE-2022-22965
Critical 9.8
No fix for 4.3.x Fixed in 4.3.30.RELEASE-sp1

Synced back to Snyk · Black Duck · GHAS · Wiz · Checkmarx · Aqua

the security fix · 6 lines
+ if (Class.class == beanClass && …
+    continue;
+ if (ClassLoader.class … ) continue;
How we do it

The fix, without the migration. A sealed version is your exact version plus the security patch, 6.5 lines on average.

Running in your build
spring-beans
4.3.30.RELEASE CVE-2022-22965 · critical 9.8 · no fix for 4.3.x
sealed ↓
4.3.30.RELEASE-sp1 sealed · no CVE
No application code changes. No manifest rewrites. Version pins stay yours.
  1. 01
    Isolate
    Take only the added lines from the release that fixes it.
  2. 02
    Backport
    Apply them to the version you actually run.
  3. 03
    Verify
    Build it, test it, prove the vulnerability is gone.
  4. 04
    Deliver
    The sealed version lands in your artifact repo and CI.
  5. 05
    Close
    Your scanner sees a fixed version and the finding closes.
FAQ

Common questions

Get protected

Bring us the CVE ID. Keep the version.

Get a tested patch for the version you already run.

Book 30 minutes, name the CVE you are carrying and the version you are pinned to, and see the sealed build for your stack. No migration plan required.

Book a demo Or scan your dependencies free