rxrpc: Only put the call ref if one was acquired
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 6.6.135, 6.12.82, 6.18.23, 6.19.13
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: yes
- Technical impact: partial
Summary
In the Linux kernel, the following vulnerability has been resolved: rxrpc: Only put the call ref if one was acquired rxrpc_input_packet_on_conn() can process a to-client packet after the current client call on the channel has already been torn down. In that case chan->call is NULL, rxrpc_try_get_call() returns NULL and there is no reference to drop. The client-side implicit-end error path does not account for that and unconditionally calls rxrpc_put_call(). This turns a protocol error path into a kernel crash instead of rejecting the packet. Only drop the call reference if one was actually acquired. Keep the existing protocol error handling unchanged.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: yes · Technical impact: partial
- Record last updated
Affected versions
- Linux Linux
From 5e6ef4f1017c7f844e305283bbd8875af475e2fc · fixed in b8f66447448d6c305a51413a67ec8ed26aa7d1dd; From 5e6ef4f1017c7f844e305283bbd8875af475e2fc · fixed in 0c156aff8a2d4fa0d61db7837641975cf0e5452d; From 5e6ef4f1017c7f844e305283bbd8875af475e2fc · fixed in 8299ca146489664e3c0c90a3b8900d8335b1ede4; From 5e6ef4f1017c7f844e305283bbd8875af475e2fc · fixed in 9fb09861e2b8d1abfe2efaf260c9f1d30080ea38; From 5e6ef4f1017c7f844e305283bbd8875af475e2fc · fixed in 6331f1b24a3e85465f6454e003a3e6c22005a5c5
- Linux Linux
6.2
- KernelLinux
From 6.2.0 · fixed in 6.6.135; From 6.7.0 · fixed in 6.12.82; From 6.13.0 · fixed in 6.18.23; From 6.19.0 · fixed in 6.19.13