Description
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 products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
48b1de4c110a7afa4b85862f6c75af817db26fad to < e1eb98cfeafdd85537e7e3cefe93ca9bfbcc3ea8affected48b1de4c110a7afa4b85862f6c75af817db26fad to < 576c1526b4d83c44ad7b673cb841f36cbc6cb6c4affected48b1de4c110a7afa4b85862f6c75af817db26fad to < 674b5f0c6a4fc5d3abce877048290cea6091fcb1affected48b1de4c110a7afa4b85862f6c75af817db26fad to < 7d9a9a1a88a3da574e019b4de756bc73337b3b0baffected48b1de4c110a7afa4b85862f6c75af817db26fad to < 6defc77d48eff74075b80ad5925061b2fc010d98affected48b1de4c110a7afa4b85862f6c75af817db26fad to < 9cdf299ba4e153b5e56187648420de22c6216f02affected48b1de4c110a7afa4b85862f6c75af817db26fad to < f648089337cb8ed40b2bb96e244f72b9d97dc96baffected48b1de4c110a7afa4b85862f6c75af817db26fad to < 5fc177ab759418c9537433e63301096e733fb915affected
Linux Linux
Default version status: affected
3.12affected0 to < 3.12unaffected4.4.274 to ≤ 4.4.*unaffected4.9.274 to ≤ 4.9.*unaffected4.14.238 to ≤ 4.14.*unaffected4.19.196 to ≤ 4.19.*unaffected5.4.128 to ≤ 5.4.*unaffected5.10.46 to ≤ 5.10.*unaffected5.12.13 to ≤ 5.12.*unaffected5.13 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/e1eb98cfeafdd85537e7e3cefe93ca9bfbcc3ea8 ↗
- https://git.kernel.org/stable/c/576c1526b4d83c44ad7b673cb841f36cbc6cb6c4 ↗
- https://git.kernel.org/stable/c/674b5f0c6a4fc5d3abce877048290cea6091fcb1 ↗
- https://git.kernel.org/stable/c/7d9a9a1a88a3da574e019b4de756bc73337b3b0b ↗
- https://git.kernel.org/stable/c/6defc77d48eff74075b80ad5925061b2fc010d98 ↗
- https://git.kernel.org/stable/c/9cdf299ba4e153b5e56187648420de22c6216f02 ↗
- https://git.kernel.org/stable/c/f648089337cb8ed40b2bb96e244f72b9d97dc96b ↗
- https://git.kernel.org/stable/c/5fc177ab759418c9537433e63301096e733fb915 ↗