CVE-2022-49728

ipv6: Fix signed integer overflow in __ip6_append_data

published February 26, 2025

CVSS
—
EPSS
0%
Percentile
21.0
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

ipv6: Fix signed integer overflow in __ip6_append_data

Resurrect ubsan overflow checks and ubsan report this warning,

fix it by change the variable [length] type to size_t.

UBSAN: signed-integer-overflow in net/ipv6/ip6_output.c:1489:19

2147479552 + 8567 cannot be represented in type 'int'

CPU: 0 PID: 253 Comm: err Not tainted 5.16.0+ #1

Hardware name: linux,dummy-virt (DT)

Call trace:

dump_backtrace+0x214/0x230

show_stack+0x30/0x78

dump_stack_lvl+0xf8/0x118

dump_stack+0x18/0x30

ubsan_epilogue+0x18/0x60

handle_overflow+0xd0/0xf0

__ubsan_handle_add_overflow+0x34/0x44

__ip6_append_data.isra.48+0x1598/0x1688

ip6_append_data+0x128/0x260

udpv6_sendmsg+0x680/0xdd0

inet6_sendmsg+0x54/0x90

sock_sendmsg+0x70/0x88

____sys_sendmsg+0xe8/0x368

___sys_sendmsg+0x98/0xe0

__sys_sendmmsg+0xf4/0x3b8

__arm64_sys_sendmmsg+0x34/0x48

invoke_syscall+0x64/0x160

el0_svc_common.constprop.4+0x124/0x300

do_el0_svc+0x44/0xc8

el0_svc+0x3c/0x1e8

el0t_64_sync_handler+0x88/0xb0

el0t_64_sync+0x16c/0x170

Changes since v1:

-Change the variable [length] type to unsigned, as Eric Dumazet suggested.

Changes since v2:

-Don't change exthdrlen type in ip6_make_skb, as Paolo Abeni suggested.

Changes since v3:

-Don't change ulen type in udpv6_sendmsg and l2tp_ip6_sendmsg, as

Jakub Kicinski suggested.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00295 · 21.0th percentile
Published
2025-02-26T02:24Z
EPSS history
Timeline
  • 26 FEB 02:24Z
    ipv6: Fix signed integer overflow in __ip6_append_data
    cvelistv5