Представлен (http://www.php.net/archive/2010.php#id2010-12-10-1) релиз интерпретатора языка программирования PHP 5.3.4, а также PHP 5.2.15 (http://www.php.net/archive/2010.php#id2010-12-09-1), устаревшей, но еще поддерживаемой ветки языка PHP. В версии 5.3.3 исправлено 7 проблем безопасности и более 170 ошибок, а в 5.2.14 - 7 проблем безопасности и 11 ошибок.
Из связанных с безопасностью исправлений в PHP 5.3.4 можно отметить:
- Устранен крах в модуле распаковки zip-архивов, вызванный отсутствием указания завершающего строку нулевого символа;
- Запрещено использовать в файловых путях нулевой символ (например, foo\0bar.txt);
- Устранена проблема в расширении imap, вызванная двойным освобождением одной области памяти, что потенциально может быть использовано (http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2010-4150) для выполнения кода при обращении к imap-серверу злоумышленника;
- Исправлена ошибка, приводившая к разыменованию NULL-указателя в коде ZipArchive::getAr...URL: http://www.php.net/archive/2010.php#id2010-12-10-1
Новость: http://www.opennet.me/opennews/art.shtml?num=28960
когда пхп 6 выйдет?
Сначала должен php 5.4 с поддержкой traits вйти:
_http://simas.posterous.com/new-to-php-54-traits
Они все еще навешивают костыли поверх заплаток? Упорство истинных копрофилов.
5.2.15 содержит ошибку с open_basedir в результате вообще ничего не работает, багфикс http://bugs.php.net/bug.php?id=53514
Это нормально для PHP - релиз и сразу баг. К следующему релизу будет точно такой километровый список багов, у них всегда так.Скачивая свежий релиз PHP можно быть уверенным на 99.9%, что в нем неменьше 50 багов обыкновенных, и как минимум 3-4 критических бага. ;)
Вышел 5.2.16 с фиксом опенбейздира. Но в 5.3.4 он тоже не работает! И на него фикса почему то нет.
Начал активно юзать SQlite3. Неплохо так для относительно небольших бд.
Только не на веб-сайтах!!! Он же блокирует всю базу сразу при каждом запросе, параллелелизма никакого.
Только для операций записи. В sqlite3, кстати появились блокировки записей а не всей таблицы, если мне не изменяет склероз. К тому же она рвет мускуль на чтении и транзакциях. Очень неплохой движок для небольших объемов. Для веба ИМХО самое оно.
Для homepage может и пойдет, но не более.
> Запрещено использовать в файловых путях нулевой символ (например, foo\0bar.txt);В чём профит? Давайте лучше пробелы запретим
Да и путь с ошибкой, слэш не в ту сторону наклонён...
Хотя судя из этого примера, путь пишется так: "foo/0bar.txt", а путь с пробелом так: "foo/0bar\ file.txt"
Но если брать тот путь что написан в новости, то как пробел писать? "foo\0bar\\ file.txt" так что ли?
Что-то тупизм какой-то получился..
Хотя мб я что-то не понял, и это просто напросто "ноль" экранировали так, а не файл 0bar.txt внутри каталога foo..
не знаете что такое нулевой символ?
туда он повернут, это и есть "нулевой символ" (0X00h)
Столько букв написали, а прочитать что такое null-терминированная строка не удосужились?
> Запрещено использовать в файловых путях нулевой символ (например, foo\0bar.txt)Сколько надо было пройти лет, чтобы додуматься до этого? )))))))
Да, критиковать гораздо проще чем делать чтото полезное. Сам грешил этим. Люди поддаются искушению критиковать все подряд, принципиально критиковать не разобравшись даже в сути проблемы, когда у них возникает навязчивое ощущение, что они ни на что не способны, что у них ничего ни когда не получится, это пугает людей и тогда чтобы избегать эти страхи, люди чтобы улучшить свое состояние и поднять самооценку начинают принципиально критиковать всё подряд переступая все разумные принципы. И это даже объединяет людей в большие группы, потому что критиковать всегда гораздо проще, чем делать чтото полезное.
> Да, критиковать гораздо проще чем делать чтото полезное. Сам грешил этим. Люди
> поддаются искушению критиковать все подряд, принципиально критиковать не разобравшись
> даже в сути проблемы, когда у них возникает навязчивое ощущение, что
> они ни на что не способны, что у них ничего ни
> когда не получится, это пугает людей и тогда чтобы избегать эти
> страхи, люди чтобы улучшить свое состояние и поднять самооценку начинают принципиально
> критиковать всё подряд переступая все разумные принципы. И это даже объединяет
> людей в большие группы, потому что критиковать всегда гораздо проще, чем
> делать чтото полезное.А вы сходите покритикуйте опенбзд, опеннтпд, всфтпд, я посмотрю как это у вас получится.
Несомненно на всех трех вышеперечисленных продуктах приятно и легко писать веб приложения, да ;-)
> а также PHP 5.2.15, устаревшей, но еще поддерживаемой ветки языка PHP.А сколько она ещё будет поддерживаться, кстати?
This release marks the end of support for PHP 5.2. All users of PHP 5.2 are encouraged to upgrade to PHP 5.3.Иными словами, если кому-то будет не лень, то что-нибудь пофиксят в ней :) .
Я просто всё жду когда же на требования веб-разрабов даунгрейдить PHP на свежеустановленных системах я смогу законно посылать, как бы они ни плакались начальству...
Bitrix до сих пор не умеет 5.3 корректно.
А у меня вообще написаны сотни тысяч строк кода, не совместимого с 5.3.
Писец, в общем.
> Bitrix до сих пор не умеет 5.3 корректно.Вот я надеюсь что официальное прекращение поддержки 5.3 заставит таких пейсаталей проснуться свой код поправить, а иначе сами они никогда не почешутся - будут однажды написанное продавать и продавать пока оно совсем уже явно морально не устареет.
> А у меня вообще написаны сотни тысяч строк кода, не совместимого с 5.3.
Я в PHP не специаллист (хот я как-то даже древний корпоративный PHP3-интранет-портал заставил на 5.3 корректно работать), вот может Вы меня просветите (правда интересно) как надо так писать чтобы оно было несовместимо? Мне кажется для этого в коде как минимум должны использоваться недокументированные и не рекомендованные конструкции и то, что давно уже числится как deprecated. Язык-то какой был, такой и остался, просто костыли некоторые повыкидывали (и то как минимум некоторые в конфиге можно повключать обратно) и плюшек подобавляли, на сколько я понимаю.
> Я в PHP не специаллист (хот я как-то даже древний корпоративный PHP3-интранет-портал
> заставил на 5.3 корректно работать), вот может Вы меня просветите (правда
> интересно) как надо так писать чтобы оно было несовместимо? Мне кажется
> для этого в коде как минимум должны использоваться недокументированные и не
> рекомендованные конструкции и то, что давно уже числится как deprecated. Язык-то
> какой был, такой и остался, просто костыли некоторые повыкидывали (и то
> как минимум некоторые в конфиге можно повключать обратно) и плюшек подобавляли,
> на сколько я понимаю.Да есть нюансы. Сам не кодер тоже. Просто в какой-то степени участвую в разработке и поддержке проекта.
Отлично, блин.safe_mode задепрекатили, зато "Устранена недоработка, позволяющая обойти ограничения open_basedir и получить доступ к внешним файлам"... Ну и как теперь защищать клиентов от скрипт киди на соседних вхостах, кроме чрута или VPS/VDS?
Нет уж, сидим на 5.2, пока можно.
Safe mode никогда и не был надежной защитой от.
От скрипт кидди - был, совместно с open_basedir.
Используя PHP вы добровольно подставляете свой зад. Так к чему же слезы?
> Используя PHP вы добровольно подставляете свой зад. Так к чему же слезы?О да. Конечно же, православная жаба спасет вас от всех проблем безопасности разом. Не тешьте себя, в ней тоже может быть полно дыр, просто они пока мало интересны. Кроме того - увеличивать мощность площадки в X раз для тех же задач и заставлять всех клиентов учить монструозный язык - дело как бы весьма накладное, и профита не несущее.
Кто-то говорил про жабу?
> Кто-то говорил про жабу?Варианты? Perl и Python можно даже не рассматривать, доля их использования в Web уже ниже плинтуса, и снижается далее.
Наш человек, наши лозунги. ;) Доля винды на десктопах тоже очень велика...Дальше думаю продолжите мысль сами. ;)
> Наш человек, наши лозунги. ;) Доля винды на десктопах тоже очень велика...
> Дальше думаю продолжите мысль сами. ;)Linux - не десктоп, ни разу. Это сервер, и его доля на серверах вполне себе соответствующая. Для серверов он вполне себе удобен. Точно так же, как и PHP вполне себе удобен для Web, для которого, в сущности, и предназначен.
Надеюсь, мысль ясна?
Нет, если честно. Я всегда полагал, что на серверах сначала принято думать о безопасности. Потом уже об удобствах.
> Нет, если честно. Я всегда полагал, что на серверах сначала принято думать
> о безопасности. Потом уже об удобствах.Именно. Поэтому на серверах винде не место, разве что на серверах рабочих групп для 1С и подобного изврата, да и то при желании можно заместить.
Тогда вы должны признать, что и PHP на серверах не место.
> Тогда вы должны признать, что и PHP на серверах не место.Почему? Обоснованно. PHP - это приложение, на котором работают клиенты и технологическая логика. С какой же стати ему не место на серверах. Или вы предложите писать Web-приложения на bash?
Потому, что он не безопасен для сервера и для остальных.
> Тогда вы должны признать, что и PHP на серверах не место.В facebook наверное такие дураки работают, что они имеют 3-й по посещаемости в мире сайт (на PHP)...
Когда это популярность была критерием качества и как следствие безопасности. Линукс тоже популярен.
>> Тогда вы должны признать, что и PHP на серверах не место.
> В facebook наверное такие дураки работают, что они имеют 3-й по посещаемости
> в мире сайт (на PHP)...Я не знаю, как facebook, но vkontakte тоже говорит, что у них php. А на деле на php только формочки, все высокопроизводительные и сложные операции выполняются на СИ. Да и PHP на сервере не ванильный.
>>> Тогда вы должны признать, что и PHP на серверах не место.
>> В facebook наверное такие дураки работают, что они имеют 3-й по посещаемости
>> в мире сайт (на PHP)...
> Я не знаю, как facebook, но vkontakte тоже говорит, что у них
> php. А на деле на php только формочки, все высокопроизводительные и
> сложные операции выполняются на СИ. Да и PHP на сервере не
> ванильный.Логично для такой системы. Как фронтэнд пхп - вполне себе и для серьезных проектов.
FILTER_VALIDATE_EMAIL теперь ваще не работает, использовал для логина, все полетело...