События

В тысячах PHP-библиотек и плагинов для CMS намеренно отключена проверка SSL-сертификатов

Сотни тысяч плагинов для систем управления контентом (CMS) и PHP-библиотек намеренно отключают проверку SSL/TLS-сервификатов, тем самым подвергая риску миллионы пользователей. Ситуацию усугубляет тот факт, что многие из этих плагинов и библиотек используются для установки соединения с серверами платежных сервисов, через которое впоследствии передается конфиденциальная финансовая информация.

Источником проблемы является то, как многие разработчики CMS плагинов и PHP-библиотек конфигурируют свой код, в частности, некоторые опции cURL - утилиты командной строки, применяемой для передачи файлов по различным протоколам. Значительное количество приложений используют cURL для загрузки, отправки и выгрузки данных на удаленные серверы через консоль вместо создания браузерных сессий для каждого соединения.

Проблема, по словам специалиста Скотта Арцижевски (Scott Arciszewski), заключается в том, что многие разработчики отключают две функции cURL, поскольку они могут вызывать на серверах клиентов оповещения об ошибках, связанных с безопасностью. Речь идет функциях «CURLOPT_SSL_VERIFYHOST» и «CURLOPT_SSL_VERIFYPEER». При отключении первой опции cURL не будет проверять URL хоста, к которому подключается для загрузки или выгрузки данных. Деактивация второй означает, что web-сайт будет принимать подключения к любым HTTPS-серверам, даже если они используют самоподписанный сертификат.

Как показал поверхностный поиск на GitHub, одна или обе функции отключены в сотнях тысяч проектов, в том числе сотнях плагинов для WordPress.

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

Арцижевски предложил свое решение проблемы, создав PHP-библиотеку под названием Certainty , которая с регулярными интервалами загружает файл cacert.pem с главной страницы cURL и сохраняет локально.

Источник

Автор: Сергей Куприянов
31.10.2018 (13:05)
Пройди тест и узнай об этом!
Информер новостей
Расширение для Google Chrome

Все права защищены © 2010-2024

"alterprogs.com" - технологии будущего

Контакты  | Карта сайта

Использование любых материалов, размещенных на сайте, разрешается при условии ссылки на alterprogs.com. Для интернет-изданий - обязательна прямая открытая для поисковых систем гиперссылка. Ссылка должна быть размещена в независимости от полного либо частичного использования материалов. Материалы в рубрике "Новости партнеров" публикуются на правах рекламы.