CVE-2026-98643: Software Security Vulnerability Vulnerability
UNKNOWNCVE-2026-98643 is a security vulnerability vulnerability (General Security Weakness) affecting Software libraries in the Maven ecosystem. Remediation is available in the latest vendor maintenance releases.
CVE-2026-98643 at a Glance
How to Fix CVE-2026-98643
To remediate this vulnerability, upgrade all affected Software dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.
Run the following command in your project directory to verify that all resolved dependencies use the patched release:
mvn dependency:tree
How to Check if You Are Affected
To determine whether your Java application is affected by CVE-2026-98643, inspect your build dependencies using the Maven Dependency Plugin:
mvn dependency:tree
Analyze the terminal output to locate any version of Software in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than the patched release), your application is affected.
Note: The mvn dependency:tree command inspects the resolved dependency graph declared in your project's POM files; it does not perform automated security scanning or inspect runtime dynamic classpaths. Always verify runtime container classpaths and shaded JARs.
Technical Details
Vulnerability Mechanism & Technical Analysis
This vulnerability is classified under General Security Weakness. In Software, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.
Source Advisory Statement
References
Frequently Asked Questions
What is CVE-2026-98643?
Which Software versions are affected?
What version fixes CVE-2026-98643?
What CWE is associated with CVE-2026-98643?
How can I check Maven dependencies for CVE-2026-98643?
Machine-readable OSV JSON
OSV v1.5 Schema
{
"schema_version" : "1.4.0",
"id" : "GHSA-xg7q-jpqp-fc7g",
"modified" : "2026-10-18T18:31:57Z",
"published" : "2026-10-18T18:31:57Z",
"aliases" : [ "CVE-2026-98643" ],
"details" : "In the Linux kernel, the following vulnerability has been resolved:\n\nbpf: Fix out-of-bounds read of rtt_min in sock_ops\n\nA sockops prog reading skops->rtt_min never checks the sk type: on the\ntcp_conn_request() path sock_ops->sk is a request_sock (non-full), and the\nctx rewrite casts it to a tcp_sock (full) and reads rtt_min past the end of\nthe request_sock, returning dirty adjacent memory.\n\n\tSEC(\"sockops\")\n\tint prog(struct bpf_sock_ops *skops)\n\t{\n\t\tswitch (skops->op) {\n\t\tcase BPF_SOCK_OPS_RWND_INIT:\n\t\t\tleak = skops->rtt_min; /* reads the request_sock OOB */\n\t\t...\n\t\t}\n\t}\n\nFor instance one such read returned rtt_min=0xffff8881, the high half of a\nleaked kernel pointer.\n\nGuarding that cast is exactly what SOCK_OPS_GET_FIELD() does -- it checks\nis_locked_tcp_sock and returns 0 when sock_ops->sk is not a locked full\nsocket. Every other tcp_sock field in sock_ops goes through it; rtt_min is\nthe only one open-coded, so it skips the check.\n\nRead rtt_min through SOCK_OPS_GET_FIELD() too. rtt_min is a bit special:\nit is a struct minmax and we only want the current min, so pass\nrtt_min.s[0].v. That is equivalent to the old hand-computed offset\n\n\toffsetof(struct tcp_sock, rtt_min) + sizeof_field(struct minmax_sample, t)\n\n(s[0] sits at rtt_min + 0 and .v at + sizeof(.t), i.e. what minmax_get()\nreturns), so the loaded field is unchanged and only the full-sock guard is\nadded. The two BUILD_BUG_ON()s that protected the hand-computed offset\nare no longer needed.\n\nBefore patch:\n\n\t0: r1 = *(u64 *)(r1 +0) ; r1 = skops->sk\n\t1: r1 = *(u32 *)(r1 +2324) ; ((tcp_sock *)sk)->rtt_min.s[0].v\n\nAfter patch:\n\n\t0: *(u64 *)(r1 +56) = r9\n\t1: r9 = *(u8 *)(r1 +50) ; is_locked_tcp_sock\n\t2: if r9 == 0 goto pc+4 ; not a locked full sock -> 0\n\t3: r9 = *(u64 *)(r1 +56)\n\t4: r1 = *(u64 *)(r1 +0) ; r1 = skops->sk\n\t5: r1 = *(u32 *)(r1 +2324) ; rtt_min.s[0].v\n\t6: goto pc+2\n\t7: r9 = *(u64 *)(r1 +56)\n\t8: r1 = 0",
"severity" : [ ],
"affected" : [ ],
"references" : [ {
"type" : "ADVISORY",
"url" : "https://nvd.nist.gov/vuln/detail/CVE-2026-98643"
}, {
"type" : "WEB",
"url" : "https://git.kernel.org/stable/c/0c796efa919f52f788c22c79d1f1b70321696b3d"
}, {
"type" : "WEB",
"url" : "https://git.kernel.org/stable/c/3a46f14e6cf375f3ca38f8f6e6524749e24ea0a8"
}, {
"type" : "WEB",
"url" : "https://git.kernel.org/stable/c/6785313d4fac96afb21ef193610c1fa88b1a9e64"
}, {
"type" : "WEB",
"url" : "https://git.kernel.org/stable/c/75f8cf22463d82bb1fb0239a3d485fc8f4c8ef03"
}, {
"type" : "WEB",
"url" : "https://git.kernel.org/stable/c/a8a9becbac93a9f54f4d565f1f3005eb08a7912f"
}, {
"type" : "WEB",
"url" : "https://git.kernel.org/stable/c/cba54d142c43ec96d8c4d566f66439e8c0afded7"
}, {
"type" : "WEB",
"url" : "https://git.kernel.org/stable/c/fc9d0e6e9d86fbefe7b8fe6ee49f4cf102add79d"
}, {
"type" : "WEB",
"url" : "https://git.kernel.org/stable/c/fd6bf2721933d8c90bc4ce57f3e204c9295e7e3f"
} ],
"database_specific" : {
"cwe_ids" : [ ],
"severity" : null,
"github_reviewed" : false,
"github_reviewed_at" : null,
"nvd_published_at" : "2026-10-18T16:17:17Z"
}
}