Description
In the Linux kernel, the following vulnerability has been resolved: ksmbd: do not expire session on binding failure When a multichannel session binding request fails (e.g. wrong password), the error path unconditionally sets sess->state = SMB2_SESSION_EXPIRED. However, during binding, sess points to the target session looked up via ksmbd_session_lookup_slowpath() -- which belongs to another connection's user. This allows a remote attacker to invalidate any active session by simply sending a binding request with a wrong password (DoS). Fix this by skipping session expiration when the failed request was a binding attempt, since the session does not belong to the current connection. The reference taken by ksmbd_session_lookup_slowpath() is still correctly released via ksmbd_user_session_put().
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
f5a544e3bab78142207e0242d22442db85ba1eff to < 4642ea35c03cf3d3558c009df4757cdb7af3f82daffectedf5a544e3bab78142207e0242d22442db85ba1eff to < f5300690c23c5ac860499bb37dbc09cf43fd62e6affectedf5a544e3bab78142207e0242d22442db85ba1eff to < 6fafc4c4238e538969f1375f9ecdc6587c53f1ccaffectedf5a544e3bab78142207e0242d22442db85ba1eff to < 1d1888b4a7aec518b707f6eca0bf08992c0e8da3affectedf5a544e3bab78142207e0242d22442db85ba1eff to < a897064a457056acb976e20e3007cdf553de340faffectedf5a544e3bab78142207e0242d22442db85ba1eff to < e0e5edc81b241c70355217de7e120c97c3429debaffectedf5a544e3bab78142207e0242d22442db85ba1eff to < 9bbb19d21ded7d78645506f20d8c44895e3d0fb9affected
Linux Linux
Default version status: affected
5.15affected0 to < 5.15unaffected5.15.209 to ≤ 5.15.*unaffected6.1.168 to ≤ 6.1.*unaffected6.6.131 to ≤ 6.6.*unaffected6.12.80 to ≤ 6.12.*unaffected6.18.21 to ≤ 6.18.*unaffected6.19.11 to ≤ 6.19.*unaffected7.0 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/4642ea35c03cf3d3558c009df4757cdb7af3f82d ↗
- https://git.kernel.org/stable/c/f5300690c23c5ac860499bb37dbc09cf43fd62e6 ↗
- https://git.kernel.org/stable/c/6fafc4c4238e538969f1375f9ecdc6587c53f1cc ↗
- https://git.kernel.org/stable/c/1d1888b4a7aec518b707f6eca0bf08992c0e8da3 ↗
- https://git.kernel.org/stable/c/a897064a457056acb976e20e3007cdf553de340f ↗
- https://git.kernel.org/stable/c/e0e5edc81b241c70355217de7e120c97c3429deb ↗
- https://git.kernel.org/stable/c/9bbb19d21ded7d78645506f20d8c44895e3d0fb9 ↗