В opensource-софте strongSwan, который Linux, FreeBSD, macOS, Android используют для VPN-связи, была найдена уязвимость, позволяющая удаленно выполнить любой код в системе. Патч включен в состав сборки 5.9.12 и доступен в других затронутых ветках.
Проблема, зарегистрированная как CVE-2023-41913, связана с переполнением буфера в стеке, которое может возникнуть при работе IKE-демона charon-tkm. Эту ошибку можно вызвать с помощью специального созданного сообщения IKE_SA_INIT.
Как оказалось, charon-tkm не проверяет размер данных, получаемых в ходе обмена открытыми ключами. В итоге при выполнении функции memcpy() демон может попытаться записать в 512-байтовый буфер до 10 Кбайт данных (дефолтный максимум для IKE-сообщений).
В своей блог-записи разработчики многократно напоминают: подобные ошибки открывают возможность для удаленного исполнения стороннего кода.
Уязвимости подвержены пакеты strongSwan релизов 5.3.0 и выше; установкам, не использующим charon-tkm, она не страшна. Проблема устранена с выпуском обновления 5.9.12. Патчи также вышли в других затронутых ветках продукта.