In the Linux kernel, the following vulnerability has been resolved: sctp: diag: reject stale associations in dump_one path The SCTP exact sock_diag lookup can hold a transport reference, block on lock_sock(sk), and then resume after sctp_association_free() has marked the association dead and freed its bind address list. When that happens, inet_assoc_attr_size() and inet_diag_msg_sctpasoc_fill() can still dereference association state that is no longer valid for reporting. In particular, inet_diag_msg_sctpasoc_fill() may read an empty bind-address list as a real sctp_sockaddr_entry and trigger an out-of-bounds read from unrelated association memory. Reject the association after taking the socket lock if it has been reaped or detached from the endpoint, and report the lookup as stale. This keeps the exact dump-one path from formatting torn association state.
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
| Attack Vector | LOCAL |
|---|---|
| Attack Complexity | LOW |
| Privileges Required | LOW |
| User Interaction | NONE |
| Scope | UNCHANGED |
| Confidentiality Impact | HIGH |
| Integrity Impact | NONE |
| Availability Impact | HIGH |
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Type: Secondary
Exploitability Score: 1.8
Impact Score: 5.2
| Source | Type | Description |
|---|---|---|
| [email protected] | Primary |
en
CWE-125
|
| Vendor | Product | Version | Update | Type |
|---|---|---|---|---|
| linux | linux_kernel | * | <built-in method update of dict object at 0x7fd34011e7c0> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7fd29053bdc0> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7fd3854b1140> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7fd319dc4500> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7fd34011ca40> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7fd34011e740> | Operating System |
| linux | linux_kernel | * | <built-in method update of dict object at 0x7fd39c4b7e40> | Operating System |
| linux | linux_kernel | 7.1 | <built-in method update of dict object at 0x7fd39c4b7940> | Operating System |
| linux | linux_kernel | 7.1 | <built-in method update of dict object at 0x7fd2982b3ac0> | Operating System |
| linux | linux_kernel | 7.1 | <built-in method update of dict object at 0x7fd34011e5c0> | Operating System |
| linux | linux_kernel | 7.1 | <built-in method update of dict object at 0x7fd39c4b7880> | Operating System |
| linux | linux_kernel | 7.1 | <built-in method update of dict object at 0x7fd39c4b5080> | Operating System |
| linux | linux_kernel | 7.1 | <built-in method update of dict object at 0x7fd39c4b5380> | Operating System |
| Vulnerable | CPE |
|---|---|
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:7.1:rc3:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:7.1:rc4:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:7.1:rc5:*:*:*:*:*:* |
| Yes | cpe:2.3:o:linux:linux_kernel:7.1:rc6:*:*:*:*:*:* |