CVE-2023-52906 in Linux
Сводка
по VulDB • 30.05.2026
В ядре Linux устранена следующая уязвимость:
net/sched: act_mpls: Исправление предупреждения при неудачной проверке атрибутов
Атрибут 'TCA_MPLS_LABEL' имеет тип 'NLA_U32', но тип проверки установлен как 'NLA_VALIDATE_FUNCTION'. Согласно комментарию над структурой 'struct nla_policy', это недопустимая комбинация:
" Значение поля `validate`, используемое через NLA_POLICY_VALIDATE_FN: NLA_BINARY Функция проверки вызывается для атрибута. Все остальные Не используется — обратите внимание, что это объединение (union) "
Это может вызывать предупреждение [1] в функции nla_get_range_unsigned() при сбое проверки атрибута. Несмотря на то, что атрибут имеет тип 'NLA_U32', связанные поля 'min'/'max' в политике имеют отрицательные значения, так как они псевдонимизированы полем 'validate'.
Исправление заключается в изменении типа атрибута на 'NLA_BINARY', что соответствует приведенному выше комментарию и всем другим пользователям NLA_POLICY_VALIDATE_FN(). В результате проверка длины перенесена в функцию проверки.
Отсутствуют регрессии в тестах MPLS:
# ./tdc.py -f tc-tests/actions/mpls.json [...]
# echo $? 0
[1]
WARNING: CPU: 0 PID: 17743 at lib/nlattr.c:118 nla_get_range_unsigned+0x1d8/0x1e0 lib/nlattr.c:117 Modules linked in: CPU: 0 PID: 17743 Comm: syz-executor.0 Not tainted 6.1.0-rc8 #3 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.13.0-48-gd9c812dda519-prebuilt.qemu.org 04/01/2014 RIP: 0010:nla_get_range_unsigned+0x1d8/0x1e0 lib/nlattr.c:117 [...]
Call Trace: __netlink_policy_dump_write_attr+0x23d/0x990 net/netlink/policy.c:310 netlink_policy_dump_write_attr+0x22/0x30 net/netlink/policy.c:411 netlink_ack_tlv_fill net/netlink/af_netlink.c:2454 [inline]
netlink_ack+0x546/0x760 net/netlink/af_netlink.c:2506 netlink_rcv_skb+0x1b7/0x240 net/netlink/af_netlink.c:2546 rtnetlink_rcv+0x18/0x20 net/core/rtnetlink.c:6109 netlink_unicast_kernel net/netlink/af_netlink.c:1319 [inline]
netlink_unicast+0x5e9/0x6b0 net/netlink/af_netlink.c:1345 netlink_sendmsg+0x739/0x860 net/netlink/af_netlink.c:1921 sock_sendmsg_nosec net/socket.c:714 [inline]
sock_sendmsg net/socket
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.