Skip to content

Commit e497996

Browse files
committed
tcp_metrics: validate source addr length
jira LE-3201 cve CVE-2024-42154 Rebuild_History Non-Buildable kernel-rt-4.18.0-553.22.1.rt7.363.el8_10 commit-author Jakub Kicinski <kuba@kernel.org> commit 66be40e I don't see anything checking that TCP_METRICS_ATTR_SADDR_IPV4 is at least 4 bytes long, and the policy doesn't have an entry for this attribute at all (neither does it for IPv6 but v6 is manually validated). Reviewed-by: Eric Dumazet <edumazet@google.com> Fixes: 3e7013d ("tcp: metrics: Allow selective get/del of tcp-metrics based on src IP") Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: David S. Miller <davem@davemloft.net> (cherry picked from commit 66be40e) Signed-off-by: Jonathan Maple <jmaple@ciq.com>
1 parent 23e0a19 commit e497996

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

net/ipv4/tcp_metrics.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -596,6 +596,7 @@ static const struct nla_policy tcp_metrics_nl_policy[TCP_METRICS_ATTR_MAX + 1] =
596596
[TCP_METRICS_ATTR_ADDR_IPV4] = { .type = NLA_U32, },
597597
[TCP_METRICS_ATTR_ADDR_IPV6] = { .type = NLA_BINARY,
598598
.len = sizeof(struct in6_addr), },
599+
[TCP_METRICS_ATTR_SADDR_IPV4] = { .type = NLA_U32, },
599600
/* Following attributes are not received for GET/DEL,
600601
* we keep them for reference
601602
*/

0 commit comments

Comments
 (0)