CVE-2021-47146 json
mld: fix panic in mld_newpack()
published 2024-03-25 2 y ago modified 2026-06-17 4 mo ago also EUVD-2021-33794
- cvss
- 5.5
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 14%
- public exploits
- 0
- none known
Summary
In the Linux kernel, the following vulnerability has been resolved:
mld: fix panic in mld_newpack()
mld_newpack() doesn't allow to allocate high order page, only order-0 allocation is allowed. If headroom size is too large, a kernel panic could occur in skb_put().
Test commands: ip netns del A ip netns del B ip netns add A ip netns add B ip link add veth0 type veth peer name veth1 ip link set veth0 netns A ip link set veth1 netns B
ip netns exec A ip link set lo up ip netns exec A ip link set veth0 up ip netns exec A ip -6 a a 2001:db8:0::1/64 dev veth0 ip netns exec B ip link set lo up ip netns exec B ip link set veth1 up ip netns exec B ip -6 a a 2001:db8:0::2/64 dev veth1 for i in {1..99} do let A=$i-1 ip netns exec A ip link add ip6gre$i type ip6gre \ local 2001:db8:$A::1 remote 2001:db8:$A::2 encaplimit 100 ip netns exec A ip -6 a a 2001:db8:$i::1/64 dev ip6gre$i ip netns exec A ip link set ip6gre$i up
ip netns exec B ip link add ip6gre$i type ip6gre \ local 2001:db8:$A::2 remote 2001:db8:$A::1 encaplimit 100 ip netns exec B ip -6 a a 2001:db8:$i::2/64 dev ip6gre$i ip netns exec B ip link set ip6gre$i up done
Splat looks like: kernel BUG at net/core/skbuff.c:110! invalid opcode: 0000 [#1] SMP DEBUG_PAGEALLOC KASAN PTI CPU: 0 PID: 7 Comm: kworker/0:1 Not tainted 5.12.0+ #891 Workqueue: ipv6_addrconf addrconf_dad_work RIP: 0010:skb_panic+0x15d/0x15f Code: 92 fe 4c 8b 4c 24 10 53 8b 4d 70 45 89 e0 48 c7 c7 00 ae 79 83 41 57 41 56 41 55 48 8b 54 24 a6 26 f9 ff <0f> 0b 48 8b 6c 24 20 89 34 24 e8 4a 4e 92 fe 8b 34 24 48 c7 c1 20 RSP: 0018:ffff88810091f820 EFLAGS: 00010282 RAX: 0000000000000089 RBX: ffff8881086e9000 RCX: 0000000000000000 RDX: 0000000000000089 RSI: 0000000000000008 RDI: ffffed1020123efb RBP: ffff888005f6eac0 R08: ffffed1022fc0031 R09: ffffed1022fc0031 R10: ffff888117e00187 R11: ffffed1022fc0030 R12: 0000000000000028 R13: ffff888008284eb0 R14: 0000000000000ed8 R15: 0000000000000ec0 FS: 0000000000000000(0000) GS:ffff888117c00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f8b801c5640 CR3: 0000000033c2c006 CR4: 00000000003706f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: ? ip6_mc_hdr.isra.26.constprop.46+0x12a/0x600 ? ip6_mc_hdr.isra.26.constprop.46+0x12a/0x600 skb_put.cold.104+0x22/0x22 ip6_mc_hdr.isra.26.constprop.46+0x12a/0x600 ? rcu_read_lock_sched_held+0x91/0xc0 mld_newpack+0x398/0x8f0 ? ip6_mc_hdr.isra.26.constprop.46+0x600/0x600 ? lock_contended+0xc40/0xc40 add_grhead.isra.33+0x280/0x380 add_grec+0x5ca/0xff0 ? mld_sendpack+0xf40/0xf40 ? lock_downgrade+0x690/0x690 mld_send_initial_cr.part.34+0xb9/0x180 ipv6_mc_dad_complete+0x15d/0x1b0 addrconf_dad_completed+0x8d2/0xbb0 ? lock_downgrade+0x690/0x690 ? addrconf_rs_timer+0x660/0x660 ? addrconf_dad_work+0x73c/0x10e0 addrconf_dad_work+0x73c/0x10e0
Allowing high order page allocation could fix this problem.
Patch / fix
- Linux Linux 4.4.271, 4.9.271, 4.14.235, 4.19.193, 5.4.124, 5.10.42, 5.12.9, 5.13
- linux Debian 14, Debian 13, Debian 12 5.14.6-1
debian advisories DEBIAN-CVE-2021-47146
- linux Ubuntu 18.04 LTS 4.15.0-151.157
- linux Ubuntu 20.04 LTS 5.4.0-80.90
- linux-aws Ubuntu 18.04 LTS 4.15.0-1109.116
- linux-aws Ubuntu 20.04 LTS 5.4.0-1054.57
- linux-gcp Ubuntu 20.04 LTS 5.4.0-1049.53
- linux-kvm Ubuntu 18.04 LTS 4.15.0-1097.99
- linux-kvm Ubuntu 20.04 LTS 5.4.0-1044.46
- linux-azure Ubuntu 20.04 LTS 5.4.0-1055.57
ubuntu advisories UBUNTU-CVE-2021-47146
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel-syms SLES for SAP 12 SP5, SLES 12 SP5 4.12.14-122.216.1
- kernel-source SLES for SAP 12 SP5, SLES 12 SP5 4.12.14-122.216.1
- kernel-default SLES for SAP 12 SP5, SLES 12 SP5, SLE Workstation Extension 12 SP5 +2 more 4.12.14-122.216.1
- kernel-obs-build SLE Software Development Kit 12 SP5 4.12.14-122.216.1
- kernel-rt SLE Real Time 12 SP5 4.12.14-10.182.1
- kernel-syms-rt SLE Real Time 12 SP5 4.12.14-10.182.1
- kernel-rt_debug SLE Real Time 12 SP5 4.12.14-10.182.1
- kernel-source-rt SLE Real Time 12 SP5 4.12.14-10.182.1
suse advisories SUSE-SU-2024:1870-1SUSE-SU-2024:1646-1SUSE-SU-2024:1643-1
- git.kernel.org/stable/c/0e35b7457b7b6e73ffeaaca1a577fdf1af0feca1 commit
- git.kernel.org/stable/c/17728616a4c85baf0edc975c60ba4e4157684d9a commit
- git.kernel.org/stable/c/221142038f36d9f28b64e83e954774da4d4ccd17 commit
- git.kernel.org/stable/c/4b77ad9097067b31237eeeee0bf70f80849680a0 commit
- git.kernel.org/stable/c/37d697759958d111439080bab7e14d2b0e7b39f5 commit
- git.kernel.org/stable/c/beb39adb150f8f3b516ddf7c39835a9788704d23 commit
- git.kernel.org/stable/c/a76fb9ba545289379acf409653ad5f74417be59c commit
- git.kernel.org/stable/c/020ef930b826d21c5446fdc9db80fd72a791bc21 commit
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2021-47146 updated cvss 5.5
kernel: mld: fix panic in mld_newpack()
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 moreaffected: no fix planned “Out of support scope”
-
Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 moreaffected: no fix available
-
Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +83 morenot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 2 y ago
Exploit prediction
0.24% chance of exploitation in the next 30 days, higher than 14% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 5.5 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
Affected products
- Linux Linux
Classification
- Technology feeds
References
-
git.kernel.org
/stable/c/0e35b7457b7b6e73ffeaaca1a577fdf1af0feca1
patch
-
git.kernel.org
/stable/c/17728616a4c85baf0edc975c60ba4e4157684d9a
patch
-
git.kernel.org
/stable/c/221142038f36d9f28b64e83e954774da4d4ccd17
patch
-
git.kernel.org
/stable/c/4b77ad9097067b31237eeeee0bf70f80849680a0
patch
-
git.kernel.org
/stable/c/37d697759958d111439080bab7e14d2b0e7b39f5
patch
-
git.kernel.org
/stable/c/beb39adb150f8f3b516ddf7c39835a9788704d23
patch
-
git.kernel.org
/stable/c/a76fb9ba545289379acf409653ad5f74417be59c
patch
-
git.kernel.org
/stable/c/020ef930b826d21c5446fdc9db80fd72a791bc21
patch
Sources
- CVE List CVE-2021-47146
- NVD CVE-2021-47146
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.