Kerentanan dalam strongSwan IPsec yang membawa kepada pelaksanaan kod jauh

strongSwan, pakej VPN berasaskan IPSec yang digunakan pada Linux, Android, FreeBSD dan macOS, mempunyai kerentanan (CVE-2023-41913) yang boleh dieksploitasi untuk pelaksanaan kod jauh oleh penyerang. Kerentanan ini disebabkan oleh pepijat dalam proses charon-tkm dengan pelaksanaan TKMv2 (Pengurus Kunci Dipercayai) protokol Key Exchange (IKE), mengakibatkan limpahan penimbal apabila memproses nilai skema DH (Diffie–Hellman) yang diformat khas. Kerentanan hanya muncul pada sistem yang menggunakan keluaran charon-tkm dan strongSwan bermula dari 5.3.0. Masalahnya telah dibetulkan dalam kemas kini strongSwan 5.9.12. Untuk membetulkan kelemahan dalam cawangan bermula dari 5.3.x, tampalan juga telah disediakan.

Ralat disebabkan oleh tidak menyemak saiz nilai Diffie-Hellman awam sebelum menyalinnya ke penimbal saiz tetap pada timbunan. Limpahan boleh dimulakan dengan menghantar mesej IKE_SA_INIT yang direka khas yang diproses tanpa pengesahan. Dalam versi lama strongSwan, semakan saiz telah dijalankan dalam pengendali muatan KE (Key Exchange), tetapi dalam versi 5.3.0 perubahan telah ditambahkan yang mengalihkan semakan nilai awam​​ke sisi pengendali protokol DH ( Diffie-Hellman) dan menambah fungsi generik untuk memudahkan pemeriksaan kesahihan kumpulan D.H. Disebabkan oleh kesilapan, mereka terlupa untuk menambah fungsi semakan baharu pada proses charon-tkm, yang berfungsi sebagai proksi antara proses IKE dan TKM (Pengurus Kunci Dipercayai), akibatnya fungsi memcpy() mengandungi nilai yang tidak disemak. yang membenarkan sehingga 512 bait ditulis kepada data penimbal 10000 bait.

Sumber: opennet.ru

Tambah komen