CVE-2021-47010

net: Only allow init netns to set default tcp cong to a restricted algo

High · published February 28, 2024

CVSS v3.1
7.8
EPSS
0%
Percentile
16.4
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

net: Only allow init netns to set default tcp cong to a restricted algo

tcp_set_default_congestion_control() is netns-safe in that it writes

to &net->ipv4.tcp_congestion_control, but it also sets

ca->flags |= TCP_CONG_NON_RESTRICTED which is not namespaced.

This has the unintended side-effect of changing the global

net.ipv4.tcp_allowed_congestion_control sysctl, despite the fact that it

is read-only: 97684f0970f6 ("net: Make tcp_allowed_congestion_control

readonly in non-init netns")

Resolve this netns "leak" by only allowing the init netns to set the

default algorithm to one that is restricted. This restriction could be

removed if tcp_allowed_congestion_control were namespace-ified in the

future.

This bug was uncovered with

https://github.com/JonathonReinhart/linux-netns-sysctl-verify

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00257 · 16.4th percentile
Published
2024-02-28T08:13Z
EPSS history
Timeline
  • 28 FEB 08:13Z
    net: Only allow init netns to set default tcp cong to a restricted algo
    cvelistv5