In the Linux kernel, the following vulnerability has been resolved:
smb: client: split cached_fid bitfields to avoid shared-byte RMW races
is_open, has_lease and on_list are stored in the same bitfield byte in
struct cached_fid but are updated in different code paths that may run
concurrently. Bitfield assignments generate byte read–modify–write
operations (e.g. `orb $mask, addr` on x86_64), so updating one flag can
restore stale values of the others.
A possible interleaving is:
CPU1: load old byte (has_lease=1, on_list=1)
CPU2: clear both flags (store 0)
CPU1: RMW store (old | IS_OPEN) -> reintroduces cleared bits
To avoid this class of races, convert these flags to separate bool
fields.
CVSS
8.8 HIGH (v3.1, CNA)CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
from ebe98f1447bbccf8228335c62d86af02a0ed23f7 before 569fecc56bfe4df66f05734d67daef887746656b; from ebe98f1447bbccf8228335c62d86af02a0ed23f7 before 4386f6af8aaedd0c5ad6f659b40cadcc8f423828; from ebe98f1447bbccf8228335c62d86af02a0ed23f7 before 3eaa22d688311c708b73f3c68bc6d0c8e3f0f77a; from ebe98f1447bbccf8228335c62d86af02a0ed23f7 before c4b9edd55987384a1f201d3d07ff71e448d79c1b; from ebe98f1447bbccf8228335c62d86af02a0ed23f7 before 4cfa4c37dcbcfd70866e856200ed8a2894cac578; from ebe98f1447bbccf8228335c62d86af02a0ed23f7 before ec306600d5ba7148c9dbf8f5a8f1f5c1a044a241
The CVE record is authoritative. Products marked “from the name” were identified from the CNA's free-text names, not a CPE, and are matched less certainly. This product uses the NVD API but is not endorsed or certified by the NVD.
Printed from infosecsignals.com. Every record links back to the agency that published it.
Your cookie choices
We use essential cookies to run this site, and, only with your consent, an advertising cookie from Google to measure whether our ads lead to sign-ups and subscriptions. See our for details.