CVE-2026-80921 PUBLISHED

KVM: s390: vsie: zero stale crypto bits

Assigner: Linux
Reserved: 26.08.2026 Published: 09.09.2026 Updated: 10.09.2026

In the Linux kernel, the following vulnerability has been resolved:

KVM: s390: vsie: zero stale crypto bits

When shadowing crypto access bits from a format0 apcb (crycb 0 or 1), the bits 64..255 are unchanged from whatever is in the vsie page in the crycb and thus in the apcb. This gives a nested guest potential access to a device no longer available. Zero out the remaining bits.

Metrics

CVSS Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
CVSS Score: 8.8

AV:L - The bug is reached when an s390 KVM guest executes the privileged SIE instruction (B2/14), intercepted through handle_instruction() to kvm_s390_handle_vsie() and setup_apcb10(); that is a local guest/KVM ioctl path with no network, Bluetooth, or USB exposure. AC:L - An L1 guest that first runs a FORMAT-2 nested SCB (setup_apcb11 fills all 256 APCB bits) and then a FORMAT-0/1 SCB on a recycled vsie page hits setup_apcb10() deterministically; get_vsie_page() reuses pages without clearing crycb, so leftover bits 64-255 persist with no race or uncontrolled memory layout. PR:L - SIE requires guest supervisor state, i.e. the tenant guest kernel or an unprivileged host kvm-group user running QEMU, not host root; kvm_s390_handle_vsie() has no host capability gate, and user namespaces cannot substitute for this path, so privileges stay Low rather than High. UI:N - The attacker guest issues SIE and uses the over-permissive shadow APCB itself; vsie page reuse and crycb shadowing run automatically inside KVM with no victim mount, click, or other user action. S:C - Leftover APCB bits grant a nested guest millicode-enforced access to host AP adapters/domains outside its delegated matrix, crossing the KVM nested-virt and vfio-ap passthrough boundary into another guest's or the host zcrypt authority, equivalent to an IOMMU/device isolation bypass. C:H - Unauthorized APQNs let the nested guest issue NQAP/DQAP against queues that may now belong to the host zcrypt stack or another tenant, disclosing cryptographic request/response data and key material on those adapters/domains. I:H - The nested guest can enqueue arbitrary AP requests and change hardware queue state on adapters and domains 64-255 that the current shadow should have cleared, corrupting crypto operations the host believes are exclusive to another consumer. A:H - With those leftover APQNs the nested guest can PQAP(ZAPQ)-reset or flood shared queues, denying host or sibling-guest crypto services (pkey, secure-key LUKS, openCryptoki) that depend on the same physical adapter/domain.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 6b79de4b056e5a2febc0c61233d8f0ad7868e49c to d110b3297f11ef227098b8a82ade2d5f123b7d2f (excl.)
  • affected from 6b79de4b056e5a2febc0c61233d8f0ad7868e49c to 59d51550b5cb916bda037673a721a404b3b47a0d (excl.)
  • affected from 6b79de4b056e5a2febc0c61233d8f0ad7868e49c to f6079dca67eccb5eabef9f72437948c66dc5131f (excl.)
  • affected from 6b79de4b056e5a2febc0c61233d8f0ad7868e49c to 087c19cc60a8caa1a08e1e434c8be2caf6c27733 (excl.)
  • affected from 6b79de4b056e5a2febc0c61233d8f0ad7868e49c to 7d23489f51109e3ebba5b5db8c5f0185af7b7fdf (excl.)
  • affected from 6b79de4b056e5a2febc0c61233d8f0ad7868e49c to 935eeba276012916c76243e5cbb843efd8fdb75d (excl.)
  • affected from 6b79de4b056e5a2febc0c61233d8f0ad7868e49c to d4bcd2df6d0d2af916b4fe1a533958778ea7c45b (excl.)
  • affected from 6b79de4b056e5a2febc0c61233d8f0ad7868e49c to 29b4f7bc2991313bd3e6f6fb8fdf1b173f086dd6 (excl.)
  • affected from 6b79de4b056e5a2febc0c61233d8f0ad7868e49c to 34d5b5b646c91cfb9338d7a12c955a70ffb8c66b (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 4.20 is affected
  • unaffected from 0 to 4.20 (excl.)
  • unaffected from 5.10.269 to 5.10.* (incl.)
  • unaffected from 5.15.220 to 5.15.* (incl.)
  • unaffected from 6.1.187 to 6.1.* (incl.)
  • unaffected from 6.6.156 to 6.6.* (incl.)
  • unaffected from 6.12.108 to 6.12.* (incl.)
  • unaffected from 6.18.49 to 6.18.* (incl.)
  • unaffected from 7.1.13 to 7.1.* (incl.)
  • unaffected from 7.2.3 to 7.2.* (incl.)
  • unaffected from 7.3-rc1 to * (incl.)

References