Skip to content
CVE PROGRAM SOURCE RECORDUnscored

CVE-2026-98856

kprobes: Skip disarmed probes when checking optkprobe overlap

Description

In the Linux kernel, the following vulnerability has been resolved: kprobes: Skip disarmed probes when checking optkprobe overlap On x86, an optkprobe at A replaces five bytes with a jump. If a disabled probe B is at A+2, get_optimized_kprobe() stops at B when arming a new probe C at A+4. It leaves A optimized: A A+1 A+2 A+3 A+4 A's jump | e9 | d0 | d1 | d2 | d3 | after C | e9 | d0 | d1 | d2 | cc | The INT3 for C overwrites the last byte of A's jump displacement, so execution can jump to the wrong address. B can have prepared optinsns while disarmed, but has no jump to unoptimize. Continue past disarmed and unprepared probes to find the active optimized probe before arming a probe in its jump.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • afd66255b9a48f5851326ddae50e2203fbf71dc9 to < e29e819cacfb4e3cd56d41eb704ab4718d6d2915affected
  • afd66255b9a48f5851326ddae50e2203fbf71dc9 to < ab9ed9faa67bf67383ff7e1479655e232a843c2baffected
  • afd66255b9a48f5851326ddae50e2203fbf71dc9 to < 3b0f604df9e2b9a456f1ae5266a439998c4c8826affected
  • afd66255b9a48f5851326ddae50e2203fbf71dc9 to < 3f968dcdf018861129f97910fa7bd680d939a9b0affected
  • afd66255b9a48f5851326ddae50e2203fbf71dc9 to < 985a568171e7bdba6dcde3420d0e5bb515813457affected
  • afd66255b9a48f5851326ddae50e2203fbf71dc9 to < 6745fa65f4115045431c0c15610e876855a04625affected
  • afd66255b9a48f5851326ddae50e2203fbf71dc9 to < 526fac219e8b7d3369b43026bd0a1df51b811cd4affected
  • afd66255b9a48f5851326ddae50e2203fbf71dc9 to < 7a39c732a22ec4a369af9e19fbe3d666ec83eec4affected

Linux Linux

Default version status: affected

  • 2.6.34affected
  • 0 to < 2.6.34unaffected
  • 5.10.273 to ≤ 5.10.*unaffected
  • 5.15.224 to ≤ 5.15.*unaffected
  • 6.1.191 to ≤ 6.1.*unaffected
  • 6.6.160 to ≤ 6.6.*unaffected
  • 6.12.113 to ≤ 6.12.*unaffected
  • 6.18.56 to ≤ 6.18.*unaffected
  • 7.2.10 to ≤ 7.2.*unaffected
  • 7.3 to ≤ *unaffected

References