Популярный веб-сервер приложений PHP оказался подвержен новой и довольно опасной уязвимости, проявляющейся в момент, когда происходит обработка больших чисел с плавающей запятой. В данный момент в сервере происходит переполнение буфера с последующим крахом программного обеспечения. По словам ИТ-специалистов, данной проблемой в PHP могут воспользоваться злоумышленники, чтобы получить несанкционированный доступ к серверам, где PHP работает.
Баг возникает в тот момент, когда PHP обрабатывает большие цифры и пытается преобразовать их из строчного формата в формат с плавающей запятой. В этот момент в сервере приложений может произойти сбой и программа может войти в бесконечный цикл, быстро выйдя за пределы отведенной памяти.
На форуме разработчиков PHP сообщается, что на базе данной ошибки довольно просто создать злонамеренный код который будет рушить сервер под управлением PHP. Для реализации условий бага северу просто достаточно через стандартную функцию get () передать "волшебное" число. Однако баг, судя по всему, работает только на PHP 5.2 и 5.3, а также только на 32-битных системах с процессорной архитектурой x86. Другие системы, а также серверы x86_64 этой уязвимости не подвержены.
Для решения проблемы разработчики PHP предлагают либо обновить исходники PHP 5.2/5.3, скачав новые файлы по адресу http://svn.php.net/viewvc?view=revision&revision=307095, либо перекомпилировать существующую версию PHP, выставив в конфигурационных файлах дополнительные флаги для обработки цифр с плавающей запятой.
Источник: CyberSecurity
|