Релиз PHP 5.2.7 с исправлением 9 уязвимостей. Третья альфа версия PHP 5.3

Материал из Викиновостей, свободного источника новостей

5 декабря 2008 года

Анонсирован выход релиза PHP 5.2.7 в котором исправлено более 170 ошибок, в том числе 9 проблем безопасности:

  • Библиотека PCRE обновлена до версии 7.8, в более ранних версиях присутствует уязвимость, позволяющая организовать злоумышленником выполнение кода в момент преобразования регулярного выражения в байткод через вызов функции pcre_compile;
  • Проблема безопасности, связанная с отсутствием инициализации BG(page_uid) и BG(page_gid);
  • Проблема безопасности, связанная с некорректным порядком обработки php_value в конфигации Apache;
  • Вызов краха процесса через передачу в функцию imageloadfont() библиотеки gd, некорректного файла шрифтов;
  • Переполнение буфера в реализации функции memnstr();
  • Уязвимость, позволяющая обойти ограничение safe_mode (проверить права доступа к файлу) через передачу некорректных параметров в функцию posix_access (CVE-2008-2665);
  • Получение доступа к данным в директориях вне ограничений safe_mode, путем создания поддиректории "http:" и манипуляции с последовательностью символов "../" при ее открытии в функциях chdir и ftok (CVE-2008-2666);
  • Крах процесса при попытке работы с файлами вида URI/file..php, (содержащих две точки);
  • Переполнение буфера в функциях библиотеки для работы с IMAP;
  • В анонсе не сообщается об исправлениях двух обнаруженных после выхода PHP 5.2.6 уязвимостей, вероятно эти ошибки остаются неисправленными:
  • Возможность обойти ограничения safe_mode и установить произвольное значение параметра error_log, не имея на это прав;
  • Уязвимость, позволяющая атакующему обнулить содержимое файла БД (inifile, dbm, ndbm, qdbm, BerkeleyBD и т.п.), с которыми выполняются манипуляции через функцию dba_replace. Если злоумышленник сможет передать в качестве аргумента функции dba_replace символ с нулевым кодом ("\0"), то все содержимое обрабатываемого файла будет обнулено.

Ключевые исправления в PHP 5.2.7:

  • Устранено несколько утечек памяти в расширениях readline и sqlite;
  • Исправлены ошибки, связанные с некорректным парсингом дат в модуле date;
  • В PDO расширении исправлены ошибки, приводящие к пробелемам при возвращении данных;
  • Исправлен ряд ошибок в разных подсистемах, приводящих к краху процесса;
  • В реализации функции strip_tags() налажена нормальная обработка "
  • Налажена работа функции extract() при использовании флага EXTR_REFS;
  • Добавлена возможность сохранения данных об ошибках в лог SAPI (Apache log);

Кроме того вышла третья альфа версия PHP 5.3. Релиз PHP 5.3 намечен на 1 квартал 2009 года. В новой ветке будет реализовано:

  • Значительное увеличение производительности. Например при сравнении одного из снапшотов php 5.3 и последнего стабильного релиза, было замечено увеличение производительности Drupal на 20%, Qdig на 2%, typo3 на 30%, wordpress на 15%, xoops - на 10%.
  • Namespaces - изолированные от остального кода пространства имен для классов, функций и констант.
  • "late static binding" - привязка к вызываемому классу, вне контекста наследования (возможность получить имя класса, вызванного для выполнения статического метода);
  • Mysqlnd - новый MySQL драйвер, работающий напрямую с MySQL, без использования libmysql.
  • Из состава пакета удален модуль ext/msql, ext/ereg помечен как устаревший, ext/mhash заменен на ext/hash;
  • __callStatic
  • Поддержка OpenID
  • Изменение техники округления чисел с плавающей точкой;
  • User.ini с привязкой к директориям наподобие .htaccess,
  • XSLT профайлинг
  • Многоплатформенный getopt()
  • Поддержка Sqlite3
  • Опционально включаемый циклический сборщик мусора
  • Новый синтаксис для определения строковых блоков, ограниченная поддержка GOTO, оператор "?:".

Дополнение: Релиз PHP 5.2.7 отменен из-за наличия критической уязвимости.

Источники[править]


Creative Commons
Creative Commons
Эта статья содержит материалы из статьи «Релиз PHP 5.2.7 с исправлением 9 уязвимостей. Третья альфа версия PHP 5.3», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии[править]

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.