TIPC protokolundan istifadə edərkən baş verən Linux nüvəsində uzaqdan zəiflik

Linux nüvə modulunda TIPC (Şəffaf Proseslərarası Rabitə) şəbəkə protokolunun işini təmin edən, xüsusi hazırlanmış şəbəkə göndərməklə kodun nüvə səviyyəsində icrasına potensial imkan verən zəiflik (CVE-2022-0435) müəyyən edilib. paket. Problem yalnız tipc.ko kernel modulu yüklənmiş və adətən klasterlərdə istifadə olunan və qeyri-ixtisaslaşdırılmış Linux paylamalarında defolt olaraq aktiv edilməyən TIPC yığını konfiqurasiya edilmiş sistemlərə təsir edir.

Qeyd olunur ki, memcpy() funksiyasına əlavə sərhəd yoxlamaları əlavə edən "CONFIG_FORTIFY_SRC=y" rejimində (RHEL-də istifadə olunur) ləpəni qurarkən əməliyyat fövqəladə dayandırma ilə məhdudlaşır (kernel panikası). Əlavə yoxlamalar aparılmadan yerinə yetirilərsə və yığını qorumaq üçün istifadə edilən kanareykalar haqqında məlumat sızarsa, problem nüvə hüquqları ilə uzaqdan kod icrası üçün istifadə edilə bilər. Problemi müəyyən edən tədqiqatçılar, istismar texnikasının əhəmiyyətsiz olduğunu və paylamalarda zəifliyin geniş şəkildə aradan qaldırılmasından sonra açıqlanacağını iddia edirlər.

Zəiflik paketlərin işlənməsi zamanı baş verən stek daşması nəticəsində yaranır, domen üzvü qovşaqlarının sayı 64-dən çox olan sahənin dəyəri. Tipc.ko modulunda qovşaq parametrlərini saxlamaq üçün sabit massiv “u32 üzv[64] ]” istifadə olunur, lakin paketdə göstərilənlərin işlənməsi prosesində qovşaq nömrəsi "member_cnt" dəyərini yoxlamır, bu da 64-dən böyük dəyərlərin növbəti yaddaş sahəsində məlumatların idarə olunan üzərinə yazılması üçün istifadə edilməsinə imkan verir. yığındakı "dom_bef" strukturuna.

Zəifliyə səbəb olan səhv 15 iyun 2016-cı ildə təqdim edilib və Linux 4.8 nüvəsinə daxil edilib. Zəiflik Linux nüvə relizlərinin 5.16.9, 5.15.23, 5.10.100, 5.4.179, 4.19.229, 4.14.266 və 4.9.301-də aradan qaldırılıb. Əksər paylamaların nüvələrində problem həll olunmamış qalır: RHEL, Debian, Ubuntu, SUSE, Fedora, Gentoo, Arch Linux.

TIPC protokolu ilk olaraq Ericsson tərəfindən hazırlanmışdır, klasterdə proseslərarası əlaqəni təşkil etmək üçün nəzərdə tutulmuşdur və əsasən klaster qovşaqlarında aktivləşdirilir. TIPC ya Ethernet, ya da UDP üzərində işləyə bilər (şəbəkə portu 6118). Ethernet üzərində işləyərkən hücum yerli şəbəkədən, UDP istifadə edərkən isə port firewall ilə əhatə olunmursa, qlobal şəbəkədən həyata keçirilə bilər. Hücum həm də hostun imtiyazsız yerli istifadəçisi tərəfindən həyata keçirilə bilər. TIPC-ni aktivləşdirmək üçün siz tipc.ko kernel modulunu yükləməlisiniz və netlink və ya tipc yardım proqramından istifadə edərək şəbəkə interfeysinə bağlanmanı konfiqurasiya etməlisiniz.

Mənbə: opennet.ru

Добавить комментарий