Специалист по информационной безопасности из Secarma Labs обнаружил уязвимость в алгоритме сериализации языка PHP. Ошибка затрагивает системы управления сайтами (CMS) WordPress и TYPO3, а также одну из библиотек Contao. Эксплуатация бага может привести к утечке данных и создать условия для выполнения стороннего кода на сервере.

Сериализация используется PHP для передачи данных между скриптами. Алгоритм предполагает преобразование массива информации в строку, а также обратное декодирование объекта на стороне получателя.

Как утверждает ИБ-эксперт Сэм Томас (Sam Thomas), злоумышленник с правами на загрузку файлов может передать в CMS специальное изображение или другой вредоносный объект, который обращается к некорректно работающей функции phar://. Используя брешь, киберпреступник способен провести атаки XXE и SSRF, которые ведут к несанкционированному раскрытию информации.

Как отмечает ИБ-эксперт, брешь сложно закрыть на стороне PHP — патчи должны быть выпущены разработчиками CMS. По словам исследователя, уязвимыми являются все версии WordPress, включая актуальную сборку 4.9.8. Эксперт продемонстрировал два вида полезной нагрузки, предназначенной для разных релизов движка. Томас сообщил разработчикам о проблеме еще в феврале 2017 года, однако в данный момент брешь остается незакрытой.

Авторы библиотеки TCPDF, отвечающей за обработку PDF-файлов в Contao, тоже не торопятся выпускать заплатку. Как утверждает исследователь, он проинформировал разработчиков о баге в мае этого года.  Лишь создатели движка TYPO3 подошли к проблеме со всей серьезностью. Они получили сообщение об уязвимости 9 июня 2018 года, а уже в середине июля залатали дыру, обновив систему до версий 7.6.30, 8.7.17 и 9.3.

Язык PHP нередко подвергается критике ИБ-специалистов за недостатки в архитектуре, плохую совместимость версий и большое количество уязвимостей. Участники сообщества FriendsOfPHP собрали все надежные библиотеки для этой среды программирования в единый архив, чтобы снизить риск использования небезопасных инструментов. По информации специалистов, к репозиторию, размещенному на GitHub, обратились уже 2 млн разработчиков.

Категории: Уязвимости