Lucene search

K
vulnrichmentLinuxVULNRICHMENT:CVE-2021-47245
HistoryMay 21, 2024 - 2:19 p.m.

CVE-2021-47245 netfilter: synproxy: Fix out of bounds when parsing TCP options

2024-05-2114:19:43
Linux
github.com
7
netfilter
vulnerability
tcp
parser
linux kernel
out of bounds

AI Score

6.8

Confidence

Low

EPSS

0

Percentile

13.0%

SSVC

Exploitation

none

Automatable

no

Technical Impact

partial

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.

CNA Affected

[
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "48b1de4c110a",
        "lessThan": "e1eb98cfeafd",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "48b1de4c110a",
        "lessThan": "576c1526b4d8",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "48b1de4c110a",
        "lessThan": "674b5f0c6a4f",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "48b1de4c110a",
        "lessThan": "7d9a9a1a88a3",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "48b1de4c110a",
        "lessThan": "6defc77d48ef",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "48b1de4c110a",
        "lessThan": "9cdf299ba4e1",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "48b1de4c110a",
        "lessThan": "f648089337cb",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "48b1de4c110a",
        "lessThan": "5fc177ab7594",
        "versionType": "git"
      }
    ],
    "programFiles": [
      "net/netfilter/nf_synproxy_core.c"
    ],
    "defaultStatus": "unaffected"
  },
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "3.12"
      },
      {
        "status": "unaffected",
        "version": "0",
        "lessThan": "3.12",
        "versionType": "custom"
      },
      {
        "status": "unaffected",
        "version": "4.4.274",
        "versionType": "custom",
        "lessThanOrEqual": "4.4.*"
      },
      {
        "status": "unaffected",
        "version": "4.9.274",
        "versionType": "custom",
        "lessThanOrEqual": "4.9.*"
      },
      {
        "status": "unaffected",
        "version": "4.14.238",
        "versionType": "custom",
        "lessThanOrEqual": "4.14.*"
      },
      {
        "status": "unaffected",
        "version": "4.19.196",
        "versionType": "custom",
        "lessThanOrEqual": "4.19.*"
      },
      {
        "status": "unaffected",
        "version": "5.4.128",
        "versionType": "custom",
        "lessThanOrEqual": "5.4.*"
      },
      {
        "status": "unaffected",
        "version": "5.10.46",
        "versionType": "custom",
        "lessThanOrEqual": "5.10.*"
      },
      {
        "status": "unaffected",
        "version": "5.12.13",
        "versionType": "custom",
        "lessThanOrEqual": "5.12.*"
      },
      {
        "status": "unaffected",
        "version": "5.13",
        "versionType": "original_commit_for_fix",
        "lessThanOrEqual": "*"
      }
    ],
    "programFiles": [
      "net/netfilter/nf_synproxy_core.c"
    ],
    "defaultStatus": "affected"
  }
]

AI Score

6.8

Confidence

Low

EPSS

0

Percentile

13.0%

SSVC

Exploitation

none

Automatable

no

Technical Impact

partial