CVE-2025-68785
Təsvir
Linux kernel-də aşağıdakı zəiflik aradan qaldırılmışdır: net: openvswitch: push_nsh() hərəkətində orta atributun validasiyası düzəldildi push_nsh() hərəkət strukturu belə görünür: OVS_ACTION_ATTR_PUSH_NSH(OVS_KEY_ATTR_NSH(OVS_NSH_KEY_ATTR_BASE,...)) Ən xarici OVS_ACTION_ATTR_PUSH_NSH atributu __ovs_nla_copy_actions() daxilindəki nla_for_each_nested() tərəfindən təsdiqlənir. Ən daxili OVS_NSH_KEY_ATTR_BASE/MD1/MD2 isə nsh_key_put_from_nlattr() daxilindəki nla_for_each_nested() tərəfindən təsdiqlənir. Lakin ortadakı atributun düzgün olub-olmadığını yoxlayan heç bir mexanizm yoxdur. Hətta bu atributun OVS_KEY_ATTR_NSH olub-olmadığına da baxılmır. Sadəcə iki dəfə nla_data() çağırışları ilə açma əməliyyatı yerinə yetirilir - birinci dəfə validate_push_nsh() çağırılanda birbaşa, ikinci dəfə isə nla_for_each_nested() makrosunun tərkibində. Bu təhlükəsiz deyil və atributun ölçüsü yanlış olduqda potensial olaraq etibarsız yaddaş girişinə səbəb ola bilər. Xəta daha böyük netlink buferi səbəbindən validasiya zamanı müşahidə edilməyə bilər, lakin buferin tam ölçüsünə uyğun ayrıldığı hərəkətin icrası mərhələsində problemlərə yol aça bilər: BUG: KASAN: slab-out-of-bounds in nsh_hdr_from_nlattr+0x1dd/0x6a0 [openvswitch] Read of size 184 at addr ffff88816459a634 by task a.out/22624 CPU: 8 UID: 0 PID: 22624 6.18.0-rc7+ #115 PREEMPT(voluntary) Call Trace: <TASK> dump_stack_lvl+0x51/0x70 print_address_description.constprop.0+0x2c/0x390 kasan_report+0xdd/0x110 kasan_check_range+0x35/0x1b0 __asan_memcpy+0x20/0x60 nsh_hdr_from_nlattr+0x1dd/0x6a0 [openvswitch] push_nsh+0x82/0x120 [openvswitch] do_execute_actions+0x1405/0x2840 [openvswitch] ovs_execute_actions+0xd5/0x3b0 [openvswitch] ovs_packet_cmd_execute+0x949/0xdb0 [openvswitch] genl_family_rcv_msg_doit+0x1d6/0x2b0 genl_family_rcv_msg+0x336/0x580 genl_rcv_msg+0x9f/0x130 netlink_rcv_skb+0x11f/0x370 genl_rcv+0x24/0x40 netlink_unicast+0x73e/0xaa0 netlink_sendmsg+0x744/0xbf0 __sys_sendto+0x3d6/0x450 do_syscall_64+0x79/0x2c0 entry_SYSCALL_64_after_hwframe+0x76/0x7e </TASK> Atributun ölçüsünün düzgün olduğunu və onun hərəkət daxilindəki yeganə atribut olduğunu yoxlayan bəzi yoxlamalar əlavə edilsin. Texniki cəhətdən, artıq NSH başlığını göndərdiyimizi bildiyimiz üçün OVS_KEY_ATTR_NSH-ın orada olmasına real ehtiyac yoxdur, bu sadəcə əlavə iç-içə struktur yaradır, lakin hazırda uAPI belə işləyir. Buna görə də, mövcud vəziyyət saxlanılır.
Necə düzəltmək olar
- Linux Linuxd0c135b8bbbcf92836068fd395bebeb7ae6c7bef, 3bc2efff20a38b2c7ca18317649715df0dd62ced, 1b569db9c2f28b599e40050524aae5f7332bc294, 10ffc558246f2c75619aedda0921906095e46702, 2ecfc4433acdb149eafd7fb22d7fd4adf90b25e9, c999153bfb2d1d9b295b7010d920f2a7c6d7595f, 5ace7ef87f059d68b5f50837ef3e8a1a4870c36e və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| Linux Linux | b2d0f5d5dc53532e6f07bc546a476a55ebdfe0f3 ≤ v < d0c135b8bbbcf92836068fd395bebeb7ae6c7bef, b2d0f5d5dc53532e6f07bc546a476a55ebdfe0f3 ≤ v < 3bc2efff20a38b2c7ca18317649715df0dd62ced, b2d0f5d5dc53532e6f07bc546a476a55ebdfe0f3 ≤ v < 1b569db9c2f28b599e40050524aae5f7332bc294, b2d0f5d5dc53532e6f07bc546a476a55ebdfe0f3 ≤ v < 10ffc558246f2c75619aedda0921906095e46702, b2d0f5d5dc53532e6f07bc546a476a55ebdfe0f3 ≤ v < 2ecfc4433acdb149eafd7fb22d7fd4adf90b25e9, b2d0f5d5dc53532e6f07bc546a476a55ebdfe0f3 ≤ v < c999153bfb2d1d9b295b7010d920f2a7c6d7595f, b2d0f5d5dc53532e6f07bc546a476a55ebdfe0f3 ≤ v < 5ace7ef87f059d68b5f50837ef3e8a1a4870c36e, 4.15 | d0c135b8bbbcf92836068fd395bebeb7ae6c7bef, 3bc2efff20a38b2c7ca18317649715df0dd62ced, 1b569db9c2f28b599e40050524aae5f7332bc294, 10ffc558246f2c75619aedda0921906095e46702, 2ecfc4433acdb149eafd7fb22d7fd4adf90b25e9, c999153bfb2d1d9b295b7010d920f2a7c6d7595f, 5ace7ef87f059d68b5f50837ef3e8a1a4870c36e |
Versiyanızı yoxlayın
Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.
Attack Surface Management
Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.