Release Date: | 2024-07-12 |
In the Linux kernel, the following vulnerability has been resolved:\nnetrom: Fix a memory leak in nr_heartbeat_expiry()\nsyzbot reported a memory leak in nr_create() [0].\nCommit 409db27e3a2e ('netrom: Fix use-after-free of a listening socket.')\nadded sock_hold() to the nr_heartbeat_expiry() function, where\na) a socket has a SOCK_DESTROY flag or\nb) a listening socket has a SOCK_DEAD flag.\nBut in the case 'a,' when the SOCK_DESTROY flag is set, the file descriptor\nhas already been closed and the nr_release() function has been called.\nSo it makes no sense to hold the reference count because no one will\ncall another nr_destroy_socket() and put it as in the case 'b.'\nnr_connect\nnr_establish_data_link\nnr_start_heartbeat\nnr_release\nswitch (nr->state)\ncase NR_STATE_3\nnr->state = NR_STATE_2\nsock_set_flag(sk, SOCK_DESTROY);\nnr_rx_frame\nnr_process_rx_frame\nswitch (nr->state)\ncase NR_STATE_2\nnr_state2_machine()\nnr_disconnect()\nnr_sk(sk)->state = NR_STATE_0\nsock_set_flag(sk, SOCK_DEAD)\nnr_heartbeat_expiry\nswitch (nr->state)\ncase NR_STATE_0\nif (sock_flag(sk, SOCK_DESTROY) ||\n(sk->sk_state == TCP_LISTEN\n&& sock_flag(sk, SOCK_DEAD)))\nsock_hold() // ( !!! )\nnr_destroy_socket()\nTo fix the memory leak, let's call sock_hold() only for a listening socket.\nFound by InfoTeCS on behalf of Linux Verification Center\n(linuxtesting.org) with Syzkaller.\n[0]: https://syzkaller.appspot.com/bug?extid=d327a1f3b12e1e206c16
See more information about CVE-2024-41006 from MITRE CVE dictionary and NIST NVD
NOTE: The following CVSS v3.1 metrics and score provided are preliminary and subject to review.
Base Score: | 4.7 | CVSS Vector: | CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H |
Attack Vector: | Local network | Attack Complexity: | High |
Privileges Required: | Low | User Interaction: | None |
Scope: | Unchanged | Confidentiality Impact: | None |
Integrity Impact: | None | Availability Impact: | High |
Platform | Errata | Release Date |
Oracle Linux version 7 (kernel-uek) | ELSA-2024-12610 | 2024-09-10 |
Oracle Linux version 7 (kernel-uek) | ELSA-2024-12779 | 2024-10-11 |
Oracle Linux version 7 (kernel-uek-container) | ELSA-2024-12612 | 2024-09-11 |
Oracle Linux version 8 (kernel-uek) | ELSA-2024-12610 | 2024-09-10 |
Oracle Linux version 8 (kernel-uek) | ELSA-2024-12618 | 2024-09-12 |
Oracle Linux version 8 (kernel-uek-container) | ELSA-2024-12612 | 2024-09-11 |
Oracle Linux version 9 (kernel-uek) | ELSA-2024-12618 | 2024-09-12 |
This page is generated automatically and has not been checked for errors or omissions. For clarification or corrections: