Ранливост за далечинско извршување на кодот на StrongSwan IPsec

Сега е достапен strongSwan 5.9.10, бесплатен пакет за создавање VPN конекции базирани на протоколот IPSec што се користи во Linux, Android, FreeBSD и macOS. Новата верзија елиминира опасната ранливост (CVE-2023-26463) што може да се користи за заобиколување на автентикацијата, но потенцијално може да доведе и до извршување на кодот на напаѓачот на страната на серверот или клиентот. Проблемот се јавува при потврдување на специјално дизајнираните сертификати во методите за автентикација базирани на TLS (ЕАП) (Extensible Authentication Protocol).

Ранливоста е предизвикана од погрешно прифаќање на јавните клучеви од сертификатот на врсниците од TLS управувачот, сметајќи ги за доверливи дури и ако сертификатот не може успешно да се потврди. Поточно, кога се повикува функцијата tls_find_public_key(), се користи избор заснован на типот на јавен клуч за да се одреди кои сертификати се доверливи. Проблемот е што променливата што се користи за одредување на типот на клучот за операцијата за пребарување е поставена во секој случај, дури и ако сертификатот не е доверлив.

Покрај тоа, со манипулирање со клучот, можете да го намалите референтниот бројач (ако сертификатот не е доверлив, референцата на објектот се ослободува по одредувањето на типот на клучот) и да ја ослободите меморијата за објектот што се уште се користи со клучот. Овој недостаток не исклучува создавање на експлоатирања за протекување информации од меморијата и извршување на приспособен код.

Нападот на серверот се врши преку клиентот кој испраќа самопотпишан сертификат за автентикација на клиентот користејќи ги методите EAP-TLS, EAP-TTLS, EAP-PEAP и EAP-TNC. Нападот на клиентот може да се изврши преку серверот кој враќа специјално дизајниран сертификат. Ранливоста се појавува во изданијата на strongSwan 5.9.8 и 5.9.9. Објавувањето на ажурирањата на пакетите во дистрибуции може да се следи на страниците: Debian, Ubuntu, Gentoo, RHEL, SUSE, Arch, FreeBSD, NetBSD.

Извор: opennet.ru

Додадете коментар