i3c: master: svc: bound IBI payload to the requested max_payload_len (Linux Linux)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.21 % · percentile 11 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- Linux
- NVD status
- Received
Description
In the Linux kernel, the following vulnerability has been resolved: i3c: master: svc: bound IBI payload to the requested max_payload_len svc_i3c_master_handle_ibi() reads the IBI payload from the RX FIFO into the IBI slot. The loop is bounded by the hardware FIFO size (SVC_I3C_FIFO_SIZE), not by the slot size. slot->data points into the IBI pool, which i3c_generic_ibi_alloc_pool() sizes at max_payload_len per slot. svc_i3c_master_request_ibi() only rejects a max_payload_len larger than SVC_I3C_FIFO_SIZE, so a driver can request a smaller one. mctp-i3c requests 1. Each readsb() then copies the controller RXCOUNT bytes (up to 31) with no check against the slot size. A device that sends more bytes than the slot holds writes past slot->data, an out-of-bounds write into the IBI pool. Bound the loop by dev->ibi->max_payload_len and clamp each read to the space left in the slot, the same way dw-i3c does. A device can still send more than the requested payload. Flush the leftover bytes from the RX FIFO so they do not leak into the next transfer.
References
- https://git.kernel.org/stable/c/7c099b0b292a68d0ef558527945dbfb756fbf893
- https://git.kernel.org/stable/c/7cc5ba756bc1cfffab9cb2695742f9f479dc73f7
- https://git.kernel.org/stable/c/35aa6730b8c5626b879a4e893fe664f59bf07d7f
- https://git.kernel.org/stable/c/f296a0d5907bf88314dfda67245f7f69d1552470
- https://git.kernel.org/stable/c/5697d779577e2786ff3348ae9b77020ac0cf0aab
- https://git.kernel.org/stable/c/aac3c5aababc7fb69d5bf5b0cc52d308574e3a8c
- https://git.kernel.org/stable/c/e2bda39d7f9f285ec803e200b5c1f17143d0b483
European references
- ENISA EUVD · EUVD-2026-76274
- GCVE · GCVE-0-2026-80951
CERT-FR advisories
- CERTFR-2026-AVI-1385 — Multiples vulnérabilités dans les produits VMware · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1375 — Multiples vulnérabilités dans le noyau Linux de Debian LTS · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1289 — Multiples vulnérabilités dans le noyau Linux de Debian LTS · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1253 — Multiples vulnérabilités dans le noyau Linux de Debian · cert.ssi.gouv.fr
Affected products
| Product | Versions |
|---|---|
| Linux · Linux | affected dd3c52846d5954acd43f0e771689302f27dadc28 < 7c099b0b292a68d0ef558527945dbfb756fbf893 ; affected dd3c52846d5954acd43f0e771689302f27dadc28 < 7cc5ba756bc1cfffab9cb2695742f9f479dc73f7 ; affected dd3c52846d5954acd43f0e771689302f27dadc28 < 35aa6730b8c5626b879a4e893fe664f59bf07d7f ; affected dd3c52846d5954acd43f0e771689302f27dadc28 < f296a0d5907bf88314dfda67245f7f69d1552470 ; affected dd3c52846d5954acd43f0e771689302f27dadc28 < 5697d779577e2786ff3348ae9b77020ac0cf0aab ; affected dd3c52846d5954acd43f0e771689302f27dadc28 < aac3c5aababc7fb69d5bf5b0cc52d308574e3a8c |
| Linux · Linux | affected 5.12 ; unaffected 0 < 5.12 ; unaffected 5.15.221 ≤ 5.15.* ; unaffected 6.1.188 ≤ 6.1.* ; unaffected 6.6.157 ≤ 6.6.* ; unaffected 6.12.109 ≤ 6.12.* |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |