CVE-2021-47245·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: netfilter: synproxy: Fix out of bounds when parsing TCP options The TCP option parser in synproxy (synproxy_parse_options) could read one byte out of bounds. When the length is 1, the execution flow gets into the loop, reads one byte of the opcode, and if the opcode is neither TCPOPT_EOL nor TCPOPT_NOP, it reads one more byte, which exceeds the length of 1. This fix is inspired by commit 9609dad263f8 ("ipv4: tcp_input: fix stack out of bounds when parsing TCP options."). v2 changes: Added an early return when length < 0 to avoid calling skb_header_pointer with negative length.
- Severity
- high
- Software
- Kernel
- Fixed in
- 5.12.13
- Published
- 2024-05-21
Affected versions
From: 5.11
Until: 5.12.13
Fixed in: 5.12.13
How to fix this CVE
Update your Linux kernel to version 5.12.13 or later to patch a memory bounds violation in the netfilter synproxy TCP option parser. This vulnerability could allow local attackers with limited privileges to trigger out-of-bounds memory reads, leading to information disclosure or denial of service. Kernel updates should be applied and the system rebooted to take effect.
sudo dnf update kernel kernel-develDefensia detects this vulnerability
How to check if you are affected
- Check installed kernel version: uname -r
- Verify if synproxy module is loaded: lsmod | grep synproxy or grep -i synproxy /proc/modules
- Review kernel logs for memory access warnings: sudo dmesg | grep -i 'out of bounds\|bounds\|memory'
- Confirm patch application by comparing kernel version against 5.12.13 or later
- Validate netfilter configuration: sudo iptables -L -n -v | grep -i synproxy
FAQ
What is CVE-2021-47245?
This vulnerability exists in the Linux kernel's netfilter synproxy module, where the TCP option parser fails to properly validate buffer boundaries. An attacker with local access can craft malicious TCP packets that cause the parser to read memory beyond its allocated bounds, potentially exposing sensitive kernel data or crashing the system.
Is CVE-2021-47245 being actively exploited?
No, this vulnerability is not listed in CISA's KEV catalog and no public exploit code is available. However, the local privilege requirement and high severity rating mean it should still be patched promptly.
What versions of Kernel are affected by CVE-2021-47245?
Linux kernel versions 5.11 through 5.12.12 are vulnerable. The vulnerability was fixed in 5.12.13 and later stable releases.
How do I check if my server is vulnerable to CVE-2021-47245?
Run 'uname -r' to check your kernel version. If it returns a version between 5.11 and 5.12.12, your system is vulnerable. Also verify synproxy is in use with 'lsmod | grep synproxy'.
Does Defensia detect CVE-2021-47245?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If the Linux kernel is installed on a monitored server, CVE-2021-47245 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/576c1526b4d83c44ad7b673cb841f36cbc6cb6c4
- https://git.kernel.org/stable/c/5fc177ab759418c9537433e63301096e733fb915
- https://git.kernel.org/stable/c/674b5f0c6a4fc5d3abce877048290cea6091fcb1
- https://git.kernel.org/stable/c/6defc77d48eff74075b80ad5925061b2fc010d98
- https://git.kernel.org/stable/c/7d9a9a1a88a3da574e019b4de756bc73337b3b0b
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2021-47245. Free for 1 server.
Get started free