tls: handle data disappearing from under the TLS ULP
Description
In the Linux kernel, the following vulnerability has been resolved:
tls: handle data disappearing from under the TLS ULP
TLS expects that it owns the receive queue of the TCP socket. This cannot be guaranteed in case the reader of the TCP socket entered before the TLS ULP was installed, or uses some non-standard read API (eg. zerocopy ones). Replace the WARN_ON() and a buggy early exit (which leaves anchor pointing to a freed skb) with real error handling. Wipe the parsing state and tell the reader to retry.
We already reload the anchor every time we (re)acquire the socket lock, so the only condition we need to avoid is an out of bounds read (not having enough bytes in the socket for previously parsed record len).
If some data was read from under TLS but there's enough in the queue we'll reload and decrypt what is most likely not a valid TLS record. Leading to some undefined behavior from TLS perspective (corrupting a stream? missing an alert? missing an attack?) but no kernel crash should take place.
Affected products
2- Linux/Linuxv5Range: 6.0
Patches
0No patches discovered yet.
Vulnerability mechanics
AI mechanics synthesis has not run for this CVE yet.
References
5- git.kernel.org/stable/c/2fb97ed9e2672b4f6e24ce206ac1a875ce4bcb38mitre
- git.kernel.org/stable/c/6db015fc4b5d5f63a64a193f65d98da3a7fc811dmitre
- git.kernel.org/stable/c/db3658a12d5ec4db7185ae7476151a50521b7207mitre
- git.kernel.org/stable/c/eb0336f213fe88bbdb7d2b19c9c9ec19245a3155mitre
- git.kernel.org/stable/c/f1fe99919f629f980d0b8a7ff16950bffe06a859mitre
News mentions
0No linked articles in our index yet.