CVE-2021-47245

Summary

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.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux48b1de4c110a7afa4b85862f6c75af817db26fad < e1eb98cfeafdd85537e7e3cefe93ca9bfbcc3ea8affected
LinuxLinux48b1de4c110a7afa4b85862f6c75af817db26fad < 576c1526b4d83c44ad7b673cb841f36cbc6cb6c4affected
LinuxLinux48b1de4c110a7afa4b85862f6c75af817db26fad < 674b5f0c6a4fc5d3abce877048290cea6091fcb1affected
LinuxLinux48b1de4c110a7afa4b85862f6c75af817db26fad < 7d9a9a1a88a3da574e019b4de756bc73337b3b0baffected
LinuxLinux48b1de4c110a7afa4b85862f6c75af817db26fad < 6defc77d48eff74075b80ad5925061b2fc010d98affected
LinuxLinux48b1de4c110a7afa4b85862f6c75af817db26fad < 9cdf299ba4e153b5e56187648420de22c6216f02affected
LinuxLinux48b1de4c110a7afa4b85862f6c75af817db26fad < f648089337cb8ed40b2bb96e244f72b9d97dc96baffected
LinuxLinux48b1de4c110a7afa4b85862f6c75af817db26fad < 5fc177ab759418c9537433e63301096e733fb915affected
LinuxLinux3.12affected
LinuxLinux0 < 3.12unaffected
LinuxLinux4.4.274 <= 4.4.*unaffected
LinuxLinux4.9.274 <= 4.9.*unaffected
LinuxLinux4.14.238 <= 4.14.*unaffected
LinuxLinux4.19.196 <= 4.19.*unaffected
LinuxLinux5.4.128 <= 5.4.*unaffected
LinuxLinux5.10.46 <= 5.10.*unaffected
LinuxLinux5.12.13 <= 5.12.*unaffected
LinuxLinux5.13 <= *unaffected

Weaknesses

ADP Enrichment

CISA ADP Vulnrichment

  • SSVC:
  • Exploitation: none
    • Automatable: no
    • Technical Impact: partial

CVE Program Container

Additional References

References