CVE-2024-47659
Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
09/10/2024
Last modified:
03/11/2025
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
smack: tcp: ipv4, fix incorrect labeling<br />
<br />
Currently, Smack mirrors the label of incoming tcp/ipv4 connections:<br />
when a label &#39;foo&#39; connects to a label &#39;bar&#39; with tcp/ipv4,<br />
&#39;foo&#39; always gets &#39;foo&#39; in returned ipv4 packets. So,<br />
1) returned packets are incorrectly labeled (&#39;foo&#39; instead of &#39;bar&#39;)<br />
2) &#39;bar&#39; can write to &#39;foo&#39; without being authorized to write.<br />
<br />
Here is a scenario how to see this:<br />
<br />
* Take two machines, let&#39;s call them C and S,<br />
with active Smack in the default state<br />
(no settings, no rules, no labeled hosts, only builtin labels)<br />
<br />
* At S, add Smack rule &#39;foo bar w&#39;<br />
(labels &#39;foo&#39; and &#39;bar&#39; are instantiated at S at this moment)<br />
<br />
* At S, at label &#39;bar&#39;, launch a program<br />
that listens for incoming tcp/ipv4 connections<br />
<br />
* From C, at label &#39;foo&#39;, connect to the listener at S.<br />
(label &#39;foo&#39; is instantiated at C at this moment)<br />
Connection succeedes and works.<br />
<br />
* Send some data in both directions.<br />
* Collect network traffic of this connection.<br />
<br />
All packets in both directions are labeled with the CIPSO<br />
of the label &#39;foo&#39;. Hence, label &#39;bar&#39; writes to &#39;foo&#39; without<br />
being authorized, and even without ever being known at C.<br />
<br />
If anybody cares: exactly the same happens with DCCP.<br />
<br />
This behavior 1st manifested in release 2.6.29.4 (see Fixes below)<br />
and it looks unintentional. At least, no explanation was provided.<br />
<br />
I changed returned packes label into the &#39;bar&#39;,<br />
to bring it into line with the Smack documentation claims.
Impact
Base Score 3.x
8.80
Severity 3.x
HIGH
Vulnerable products and versions
| CPE | From | Up to |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.19.322 (excluding) | |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.20 (including) | 5.4.284 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.5 (including) | 5.10.226 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (including) | 5.15.167 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.16 (including) | 6.1.109 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.2 (including) | 6.6.50 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.7 (including) | 6.10.9 (excluding) |
To consult the complete list of CPE names with products and versions, see this page
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/0776bcf9cb6de46fdd94d10118de1cf9b05f83b9
- https://git.kernel.org/stable/c/0aea09e82eafa50a373fc8a4b84c1d4734751e2c
- https://git.kernel.org/stable/c/2fe209d0ad2e2729f7e22b9b31a86cc3ff0db550
- https://git.kernel.org/stable/c/4be9fd15c3c88775bdf6fa37acabe6de85beebff
- https://git.kernel.org/stable/c/5b4b304f196c070342e32a4752e1fa2e22fc0671
- https://git.kernel.org/stable/c/a948ec993541db4ef392b555c37a1186f4d61670
- https://git.kernel.org/stable/c/d3703fa94116fed91f64c7d1c7d284fb4369070f
- https://git.kernel.org/stable/c/d3f56c653c65f170b172d3c23120bc64ada645d8
- https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html



