Swan IPsec tizimidagi zaiflik kodni masofadan bajarishga olib keladi

Linux, Android, FreeBSD va macOS tizimlarida ishlatiladigan IPSec-ga asoslangan VPN paketi boʻlgan strongSwan tajovuzkor tomonidan masofaviy kodni bajarish uchun ishlatilishi mumkin boʻlgan zaiflikka (CVE-2023-41913) ega. Zaiflik TKMv2 (Ishonchli kalit menejeri) kalit almashinuvi (IKE) protokolini amalga oshirishda charon-tkm jarayonidagi xatolik tufayli yuzaga keladi, bu esa maxsus formatlangan DH (Diffie-Hellman) sxema qiymatlarini qayta ishlashda bufer to'lib ketishiga olib keladi. Zaiflik faqat 5.3.0 dan boshlab charon-tkm va strongSwan relizlaridan foydalanadigan tizimlarda paydo bo'ladi. Muammo strongSwan 5.9.12 yangilanishida tuzatilgan. 5.3.x dan boshlab filiallardagi zaiflikni tuzatish uchun yamoqlar ham tayyorlangan.

Xato umumiy Diffie-Hellman qiymatlarini stekdagi belgilangan o'lchamli buferga nusxalashdan oldin ularning hajmini tekshirmaslik tufayli yuzaga keladi. Autentifikatsiya qilinmasdan qayta ishlanadigan maxsus tayyorlangan IKE_SA_INIT xabarini yuborish orqali to'lib ketishni boshlash mumkin. Swanning eski versiyalarida o'lchamni tekshirish KE foydali yuk ishlovchisida (Key Exchange) amalga oshirildi, ammo 5.3.0 versiyasida umumiy qiymatlarni tekshirishni DH protokoli ishlov beruvchisi tomoniga o'tkazgan o'zgarishlar kiritildi ( Diffie-Hellman) va ma'lum guruhlarning to'g'riligini tekshirishni soddalashtirish uchun umumiy funktsiyalarni qo'shdi D.H. Nazorat tufayli ular IKE jarayoni va TKM (Ishonchli kalit menejeri) o'rtasida proksi-server sifatida ishlaydigan charon-tkm jarayoniga yangi tekshirish funktsiyalarini qo'shishni unutdilar, buning natijasida memcpy() funksiyasi tekshirilmagan qiymatlarni o'z ichiga oladi. bu 512 baytlik bufer ma'lumotlariga 10000 XNUMX baytgacha yozish imkonini berdi.

Manba: opennet.ru

a Izoh qo'shish