Критическая уязвимость в PolarSSL

Критическая уязвимость в PolarSSL

В популярной на мобильных устройствах библиотеке шифрования PolarSSL была обнаружена уязвимость, позволяющая удаленно выполнить произвольный код через специальным образом подготовленный сертификат.

Уязвимость заключается в ошибке при обработке полей ASN.1 сертификата: в функции asn1_get_sequence_of(), указатель на связный список asn1_sequence не инициализируется, что может привести к вызову функции polarssl_free() с неинициализированным указателем и, в конечном итоге, к выполнению вредоносного кода.

Уязвимость проявляется в момент анализа сертификата, а значит, вредоносный код может быть выполнен как на стороне клиента, так и на стороне сервера, сообщает habrahabr.ru.

Уязвимы все актуальные версии PolarSSL. Официального патча, исправляющего уязвимость, все еще нет, однако есть неофициальный.

Библиотека PolarSSL чаще всего используется в мобильных и встраиваемых устройствах. Например, OpenVPN использует именно ее для iOS и Android-клиентов, а также для роутеров под OpenWRT.

Критическая уязвимость в плагине WPvivid Backup затронула 900 000 сайтов

Уязвимость, выявленная в популярном WordPress-плагине для создания резервных копий, позволяет без аутентификации загрузить на сайт вредоносный код PHP и запустить его на исполнение. Патч включен в состав WPvivid Backup & Migration 0.9.124.

Уязвимости подвержены все прежние версии продукта. Ввиду высокой опасности и масштабности проблемы (на счету WPvivid Backup уже свыше 900 тыс. установок) пользователям настоятельно рекомендуется произвести обновление.

Правда, в блог-записи Wordfence сказано, что CVE-2026-1357 (9,8 балла CVSS) критична лишь для тех, у кого настройки плагина предусматривают обработку сгенерированным ключом — в обеспечение загрузки резервных копий с других сайтов. По умолчанию эта возможность отключена, а срок действия ключа ограничен 24 часами.

Согласно описанию, причин появления уязвимости две: неадекватная обработки ошибок при расшифровке по RSA и отсутствие санации пути при записи загруженных файлов.

Как оказалось, когда плагин тщетно пытался расшифровать сеансовый ключ, он не завершал выполнение, а передавал ложное значение $key в phpseclib для инициализации шифрования.

Криптобиблиотека воспринимала его как строку нулевых байтов, что открыло возможность для шифрования полезной нагрузки дефолтным, легко угадываемым 0-байтовым ключом.

 

Ситуацию усугубило отсутствие проверок типа файлов и их расширений в функции send_to_site(). Это провоцировало выход за пределы защищенного каталога резервных копий — загрузку на сервер произвольного PHP-кода с записью в публично доступные места с тем, чтобы он каждый раз отрабатывал в браузере.

Апдейт, устраняющий эти недостатки, вышел 28 января. Автор опасной находки получил 2145 долларов в рамках программы Wordfence Bug Bounty.

RSS: Новости на портале Anti-Malware.ru