В очередной раз в новом релизе PHP 5.2.2 (http://www.php.net/releases/5_2_2.php) исправлено более 10 ошибок связанных с безопасностью.
Исправления проблем общих для PHP 5.2.2 (http://www.php.net/releases/5_2_2.php) и 4.4.7 (http://www.php.net/releases/4_4_7.php):
- Целочисленное переполнение (http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-1001) в функциях createwbmp и readwbmp библиотеки GD, позволяет запустить код через подстановку специально скомпонованных значений в поля размеров Wireless Bitmap (WBMP) изображений;
- ASCIIZ байт (\0) воспринимался функцией mail() (http://www.php-security.org/MOPB/MOPB-33-2007.html) как конец сообщения, что может быть использовано для подстановки заголовков злоумышленника;- Ошибка в функции mb_parse_str() (http://www.php-security.org/MOPB/MOPB-26-2007.html) позволяющая злоумышленнику временно включить режим register_globals;
- Доступ к нераспределенным блокам памяти (http://www.php-security.org/MOPB/MOPB-24-2007.html) через функцию array_user_key_compare();
- Двойной вызов функции free() (http://www.php-security.org/MOPB/MOPB-22-2007.html) в коде session_regenerate_id(), может быть использован для выполнения кода злоумышленника;
- Пропуск проверок open_basedir и safe_mode (http://www.php-security.org/MOPB/MOPB-21-2007.html) в zip:// and bzip:// врапперах.
- Возможность переполнения стека (http://www.php-security.org/MOPB/MOPB-03-2007.html) в Zend Engine;
- Возможность подстановки символов CRLF в ftp_putcmd();
- Перезапись super-global переменных через import_request_variables();
- Удаленное переполнение буфера через библиотеку libxmlrpc.
Проблемы исправленные только в PHP 5.2.2:
- Возможность подстановки служебных заголовков (http://www.php-security.org/MOPB/MOPB-34-2007.html) через параметры Subject и To переданные функции mail();- Неверный расчет размера для типа данных S (http://www.php-security.org/MOPB/MOPB-29-2007.html) (serialisation format), приводящий к возможности утечки информации при выполнении unserialize();
- Утечка информации (http://www.php-security.org/MOPB/MOPB-14-2007.html) через функции substr_compare() и substr_count();
- Переполнение буфера через функции make_http_soap_request() и user_filter_factory_create().
Проблемы исправленные только в PHP 4.4.7:
- XSS (межсайтовый скриптинг) уязвимость в phpinfo();
Из улучшений добавленных в PHP 5.2.2 можно отметить обновление библиотек GD, SQLite и PCRE; оптимизацию выполнения realloc() в Memory Manager; добавление новых методов в классы SPL DirectoryIterator и SplFileInfo; исправление более 120 ошибок не связанных с безопасностью.
URL: http://www.php.net/releases/5_2_2.php
Новость: http://www.opennet.me/opennews/art.shtml?num=10684
жуть, даже в phpinfo что-то нашли :)
Я начинал программировать в своё время и посмотрев на дыры в рнр решил писать свои творения на перле. ИМХО полезно и для системного программирования и для веба.
+1
Я начинал программировать в своё время и посмотрев на дыры в рнр решил писать свои творения на перле.
-------------------------------------------
И как получается? А чём тебе C не нравится, писал бы на нём. Дыры есть не только в рнр, если нужно взломать, взломят и сайт на перле.
В самом перле ошибок меньше на порядки, в отличие от :)
сишный синтаксис - это, все-таки, классика
smalltalk и то красивее перлового уе..ща
> сишный синтаксис - это, все-таки, классика
хороший повод променять содержание на форму.
smalltalk и то красивее перлового уе..щаЭт у тебя руки. Вообще, синтаксис - вещь, конечно, спорная, но на perl действительно можно писать компактно, и при этом читабельно. Сужу по нашему перловому отделу. 17 человек. Половина студентов. Могут же?
Что касается языков как таковых, из PHP/Perl - Perl даже не думая.
>perl действительно можно писать компактно, и при этом читабельно. Сужу по
>нашему перловому отделу. 17 человек. Половина студентов. Могут же?все могут. а нужно ли? :)
>Что касается языков как таковых, из PHP/Perl - Perl даже не думая.
а я - если низя на PHP, то на чем угодно, кроме Перла. заказчик требует повышенной безопастности - Java/JSP, требуется embedded - Shema или Tcl. Вот Smalltalk тоже, например, cуществует давно, отличный обьектный язык. Ну почему студенты предпочитают Перл??? Потому что в университетах учат паскалю и формируют особый тип мышления - "лучшая среда разработки - Делфи, лучший язык для сайтов - Перл".
>... заказчик требует повышенной безопастности - Java/JSP,...ADA.
>>... заказчик требует повышенной безопастности - Java/JSP,...
>
>ADA."не смешите мои копыта" :) то, что ада сертифицирована еще не значит, что ею приятно/удобно/можно пользоваться. Java, кстати, тоже сертифицирована. но исторически сложилось, что много проектов было написано военными под ДОС именно на АДА. только поэтому этот язык кто-то еще сейчас помнит и любит.
кстати, вы в курсе, сколько стоит сертифицировать продукт? это проще, чем сдать кандидатскую (по трудозатратам) и примерно так же, как купить хороший автомобиль S-класса
Ребята, изучайте C++ пока не поздно, а то жизнь пройдёт зря. Есть и библиотеки на халяву http://cgicc.org/ , и хоть понять его красоту достаточно сложно, но доступно при некотором упорстве. Вот пример реализации собственного потока ввода-вывода на базе стандартной библиотеки
http://code.google.com/p/logostream/
Вся реализация занимает несколько десятков строк, причём 99% - каркас из стандарных шаблонов, который можно чуть ли не копи-пэйстом копировать, а собственный код только в 4-х функциях - открыть, закрыть, прочитать и записать. Т.е. надо не просто писать на C++, а хорошенько изучить возможности STL и приёмов программирования на примере таких гигантов, как GCC, например.PHP - детский сад, а Perl вообще-то по своей сути - язык скриптовый и не может отражать хорошо структурированный грамотно выстроенный набор объектов, который в итоге несложно развивать и модернизировать. И к тому же интерпретатор.
Я тоже вырос на Бэйсике, но надо ведь рости. Если решил, что всё на свете знаешь - можешь забыть про программирование.
>Ребята, изучайте C++ пока не поздно, а то жизнь пройдёт зря. Есть
"скажи-ка, дядя, ведь не даром"? :) а в целом - да. С/C++ дисциплинирует. его можно любить и даже нужно. Не побоюсь сказать громких слов, но ... пишу на C++ и ощущаю реальный кайф. Для себя, для души... Иногда по работе...>и библиотеки на халяву http://cgicc.org/ , и хоть понять его красоту
>достаточно сложно, но доступно при некотором упорстве. Вот пример реализации собственного
>потока ввода-вывода на базе стандартной библиотеки
> http://code.google.com/p/logostream/
>Вся реализация занимает несколько десятков строк, причём 99% - каркас из стандарных
>шаблонов, который можно чуть ли не копи-пэйстом копировать, а собственный код
>только в 4-х функциях - открыть, закрыть, прочитать и записать. Т.е.
>надо не просто писать на C++, а хорошенько изучить возможности STL
>и приёмов программирования на примере таких гигантов, как GCC, например.
>
>PHP - детский сад, а Perl вообще-то по своей сути - язык
>скриптовый и не может отражать хорошо структурированный грамотно выстроенный набор объектов,
>который в итоге несложно развивать и модернизировать. И к тому же
>интерпретатор.
зря. не надо поучительного тона. люди колбасят сайты и рубят бабло, мало кого заботит, как оно написано и на чем. а вы говорите "бросьте ваше имущество и идите со мной, я покажу вам...". можно, можно, все можно. было бы только понимание, зачем оно нужно, чтобы это понимание соответствовало таланту программиста, назначению программы и ожиданиям заказчика.
просто спорщики из лагеря "за ПХП" боятся признать, что они пишут на ПХП, лишь потому что так удобнее баблосы рубить. некотрые тупо упираются: "мы, мол, пишем хорошие сайты на ПХП". спорщики из лагеря "за Перл" боятся признать аналогичное и упорно пропагандируют что другие - сакс, хотя по сути все одно: два языка совершенно одного уровня и сути с разным синтаксисом. тупо-конечники и остро-конечники. я - за ПХП. он синтаксически близок C/C++ и только.>Я тоже вырос на Бэйсике, но надо ведь рости. Если решил, что
>всё на свете знаешь - можешь забыть про программирование.
"рАсти". такой большой, а описки (надеюсь) лепит. верно. нужно учиться. и получать от процесса обучения удовольствие.
Спасиба за свежий анекдот 8)Кстати даже интересно, когда в перле последний раз уязвимости находили
лично знаю несколько серваков которых сломали через \0 в в mail() и спамили как из пушки. php как сказал один кореш воняет линуксом - точно подмечено. :)
Бредишь, читай описание на сайте.
>Бредишь, читай описание на сайте.
описание чего? Java? PHP? Smalltalk? Tcl? Shema? Ruby? перл как был вном, так и остался
Народ, а на что лучше всего перейти с php? (perl не предлагать - я его ненавижу, хоть и приходится иногда на нем писать). php хорош своей простотой, но список дыр пугает, да и иногда даже хорошие поделки не хотят покупать только потому что на php...
php хорош простАтой, а сигареты тоже привычка такая, бросить сложно, но оно того стоит. Альтернатив полно начиная от С++ кончая перлами, питонами и прочими жабами. PHP это общественная дырко. Вот сам за свои сервера боюсь но перетащить CMS на другую платформу нереально конечно... а php мне кажецо не умрет, по той же причине что и виндовс, и там и там все делаетцо гораздо проще чем на других платформах.
посмотри в сторону python + django.
Ruby
Для веба - Ruby-on-Rails
Однозначно Python - с php перелезть можно очень безболезненно, на Ruby сложнее. Да и Python быстрее Руби намного. Mod_python - это тоже большой плюс по сравнению с Руби.
Хех... Питон то еще... называется вспомни молодость и Фортан, с его дурацим синтаксисом. Символы табуляции как синтаксическая конструкция языка - это финиш. Кастинг к нужным типам, свои проверки всего и вся, фильтрация пользовательского ввода и все бдет более менее терпимо (правда от "простоты PHP" ничего не остается и код ничем не лучше чем на С или Perl).
>Символы табуляции как синтаксическая конструкция языка - это финиш.
Вот это и правда сильно раздражает=)Зато питон любят в Google и Yandex, а это значит, что всё далеко не так печально. Не потому, что там хочется или не хочется работать, просто вполне практичный язык.
> Хех... Питон то еще... называется вспомни молодость и Фортан, с его дурацим синтаксисом.Перевожу: некто DimGun не видел / не Асилил ни Python'a ни Fortran'a :)
На вскидку - как в фортране с интроспекцией? Объектная модель? Да пропасть между ними! Но вот МЕGАc00Lексперты видят только что там idents (не табы - заметь!) is must ....Смешно? Чесно - уже нет, уже грусно :(
>> Хех... Питон то еще... называется вспомни молодость и Фортан, с его дурацим синтаксисом.
>
>Перевожу: некто DimGun не видел / не Асилил ни Python'a ни Fortran'a
>:)
>На вскидку - как в фортране с интроспекцией? Объектная модель? Да пропасть
>между ними! Но вот МЕGАc00Lексперты видят только что там idents (не
>табы - заметь!) is must ....
>
>Смешно? Чесно - уже нет, уже грусно :(Я высказался по поводу синтаксиса Python, не более. Ничего действительно нового в нем не обнаружилось. Даже сравнение с Java (десятилетней давности) не в его пользу. Все указанные выше "новые" языки одного класса. Ждать от них обратной совместимости, логической и концептуальной стройности не стоит. В питоне например есть пакеты классов, но с областью видимости, модификаторами доступа и много чем еще (работа с БД например) - все слишком примитивно.
Парни, пусть каждый пишет на том что ему подходит. Большинство проблем можно обойти не полагаюсь полность на возможности интерпретатора и стандартных библиотек. Делайте свои обертки для функции.
вот здесь =- http://plone.org/about/movies -= есть видео о том как один человек тоже выбирал на чем ему писать дальше... а начинал он тоже на "сипипи", потом на "джаве"... победил "питон"... познавательное такое видео "Better Web App Development"...
>вот здесь =- http://plone.org/about/movies -= есть видео о том как один человек
>тоже выбирал на чем ему писать дальше... а начинал он тоже
>на "сипипи", потом на "джаве"... победил "питон"... познавательное такое видео "Better
>Web App Development"...Имейте свое мнение. Фраза "... Один человек тоже выбирал ..." - это не аргумент.
>>вот здесь =- http://plone.org/about/movies -= есть видео о том как один человек
>>тоже выбирал на чем ему писать дальше... а начинал он тоже
>>на "сипипи", потом на "джаве"... победил "питон"... познавательное такое видео "Better
>>Web App Development"...
>
>Имейте свое мнение. Фраза "... Один человек тоже выбирал ..." - это
>не аргумент.не передергивайте, пожалуйста...
> perl не предлагать - я его ненавижу
может, вы его просто не умеете готовить? :)
> Народ, а на что лучше всего перейти с php?Насчёт перла ты это зря - очень красивый язык, надо только научиться. Просто у каждого инструмента - своё место, и если в реале никто не заколачивает гвозди напильником, то в мире ИТ всё иначе - мало кто утруждает себя попробовать поюзать молоток. Времени нет на образование.
и ещё раз:
изучайте C++ пока не поздно, а то жизнь пройдёт зря. Есть и библиотеки на халяву http://cgicc.org/ , и хоть понять его красоту достаточно сложно, но доступно при некотором упорстве. Вот пример реализации собственного потока ввода-вывода на базе стандартной библиотеки
http://code.google.com/p/logostream/
Вся реализация занимает несколько десятков строк, причём 99% - каркас из стандарных шаблонов, который можно чуть ли не копи-пэйстом копировать, а собственный код только в 4-х функциях - открыть, закрыть, прочитать и записать. Т.е. надо не просто писать на C++, а хорошенько изучить возможности STL и приёмов программирования на примере таких гигантов, как GCC, например.
>> Народ, а на что лучше всего перейти с php?
>
>Насчёт перла ты это зря - очень красивый язык, надо только научиться.
>Просто у каждого инструмента - своё место, и если в реале
>никто не заколачивает гвозди напильником, то в мире ИТ всё иначе
>- мало кто утруждает себя попробовать поюзать молоток. Времени нет на
>образование.не слушай дядю, выбирай сам:
Scripting programming languages:
http://en.wikipedia.org/wiki/Category:Scripting_languagesObject-oriented programming languages:
http://en.wikipedia.org/wiki/Category:Object-oriented_progra...они вокруг нас!
не давай никому завладеть твоим мозгом, вступай в http://community.livejournal.com/vkaske/profile
Ну компилируется,уcho > ext/pcre/php_pcre.lo
In file included from /usr/local/tmp/php-4.4.7/Zend/zend.h:244,
from /usr/local/tmp/php-4.4.7/main/php.h:34,
from /usr/local/tmp/php-4.4.7/ext/pcre/php_pcre.c:25:
/usr/local/tmp/php-4.4.7/Zend/zend_hash.h:119: error: syntax error before "va_list"
In file included from /usr/local/tmp/php-4.4.7/Zend/zend.h:245,
perl для всего хорош если есть подходящий мозг.Кстати его тоже любят в google yandex rambler mail итд тд тд..
Как они уже задрали со своими багами, кто бы знал...
Скорей бы mediawiki переписали на чем-нибудь нормальном...
>Скорей бы mediawiki переписали на чем-нибудь нормальном...на smalltalk'e?
>>Скорей бы mediawiki переписали на чем-нибудь нормальном...
>
>на smalltalk'e?на brainfucke
C++ лучший язык. Быстро. Просто. Безопасно. Надёжно. Расширяемо. Поддерживаемо.
Только почти никто его толком не знает.
Я Web-систему разрабатываю на C++ и ни на чего другое бы не променял.
> Я Web-систему разрабатываю на C++ и ни на чего другое бы не променял.И когда планируешь закончить строительство своего мега-велосипеда?
Кстати, а зачем собственно если процентов 80% уже наверняка реализовано на нормальных языках, гораздо более пригодных для веба - perl, ruby, python? (пыхпых не в счёт - это для тех, кто программировать не умеет).
Молодец! Если будешь искать работу, есть вакансии вот здесь http://www.sniip.ru/
http://vacancies.itpeople.ru/E1180771360003/извиняюсь за спам.
А имеет ли смысл переходить с версии пхп 4.4.2 на новую 4.4.7 ? Серьёзные ли ошибки и есть к ним эксплоиты (просто очень слабо за этим слудил :(, теперь расплачиваюсь )? Кто знает посоветуйте, плиз.