В PHP 5.2.5 (http://www.php.net/releases/5_2_5.php) исправлено более 60 ошибок, из которых 7 имеют отношение к проблемам безопасности:
- Функция dl() теперь может принимать только имена файлов;
- Размер аргументов функции dl() теперь ограничен значением MAXPATHLEN;
- В htmlentities/htmlspecialchars отныне не принимаются неполные многобайтовые последовательности символов;
- Защита от переполнения буфера через вызов, основанных на glibc, реализаций функций fnmatch(), setlocale() и glob();
- Директива "mail.force_extra_parameters" заданная в php.ini отныне не может быть изменена через .htaccess;
- Ошибка (http://bugs.php.net/bug.php?id=42869) связанная с некорректной подстановкой hidden-полей при использовании функции output_add_rewrite_var (например, идентификатор сессии может быть вставлен в форму ведущую на чужой сайт);
- Значения php_admin_* установленные в httpd.conf, теперь не могут (http://bugs.php.net/bug.php?id=41561) быть изменены посредством вызова ini_set(). (например "php_admin_value memory_limit 3145728" можно было изменить через ini_set("memory_limit", 20971520);).
Кроме того, можно отметить следующие новшества:
- Библиотека PCRE обновлена до версии 7.3;
- База timezone обновлена до версии 2007.9;
- Добавлена возможность контроля расхода памяти, через переменную окружения ZEND_MM_COMPACT;
- Увеличена скорость работы функций array_intersect_key(), array_intersect_assoc(), array_uintersect_assoc(), array_diff_key(), array_diff_assoc() and array_udiff_assoc();
- Кодирование json_encode() теперь следует стандарту, а не зависит представления символов в локали;
- ext/mysql вновь может быть собран с поддержкой libmysql 3.23.
URL: http://www.php.net/releases/5_2_5.php
Новость: http://www.opennet.dev/opennews/art.shtml?num=12744