YiiFramework Yii 1.1.15 (исправление безопасности)

fixxxer

К.О.
Партнер клуба
Мы не раскрываем подробностей сразу чтобы дать время обновиться. По нашим данным детали пока известны только основной команде разработчиков фреймворка.
Вы действительно считаете всех окружающих идиотами?

Очевиднее некуда.
 

Redjik

Джедай-мастер
не считаю это уявзимостью, если кто-то пихает $_GET или $_POST в value - это сугубо его проблемы
 

Sam Dark

Новичок
fixxxer, чем меньше скрипт-киддисов начнёт щупать проекты, тем лучше. Естественно, нормальным разработчикам и так понятно, в чём дело.
 

WMix

герр M:)ller
Партнер клуба
не считаю это уявзимостью, если кто-то пихает $_GET или $_POST в value - это сугубо его проблемы
чесно не читал откуда беруться аттрибуты, но с гетом можно написать что-то в этом роде
Код:
/?attribute[value]=eval
 

Sam Dark

Новичок
Не, ну по дефолту, естественно, такое не сделано. Но программисты вполне могут. Я и не такое видел.
 

fixxxer

К.О.
Партнер клуба
fixxxer, чем меньше скрипт-киддисов начнёт щупать проекты, тем лучше. Естественно, нормальным разработчикам и так понятно, в чём дело.
Да просто глупо очень звучит эта фраза. Что-то вроде "The vulnerability is in the value property of CDetailsView, details will be disclosed later" было бы лучше, кмк.
 

fixxxer

К.О.
Партнер клуба
Не, тут как раз все правильно, секьюрити фикс это и есть патч-левел.

Меня другое смущает: если почитать файлик UPGRADE, то видно, что обновления даже в рамках патч-левел (1.1.х) могут требовать изменений кода. А учитывая популярность yii среди говноко^W фрилансеров - я уверен, что есть куча сайтов, сделанных "под ключ" и работающих на каком-нибудь там 1.1.10, обслуживаемых в лучшем случае сисадмином - так что неплохо было бы иметь патчи для каждой из версий, или хотя бы инструкцию вида "в таком-то файле найти такую-то строку и поменять на вот такую-то".
 

Sam Dark

Новичок
Если возникнут с обновлениями проблемы, оно всплывёт на форумах и всяких stackoverflow очень быстро. Вообще это у нас первый опыт такого патча. В следующий раз сделаем лучше, хотя я надеюсь, что следующего не будет.
 

fixxxer

К.О.
Партнер клуба
Как минимум, надо обязательно указать диапазон уязвимых версий. На сайте написано, что уязвима только 1.1.14, но вроде как is_string и в 13-й уже был?

* Callables and anonymous functions (PHP 5.3+ only) could be
* used for calculating value since 1.1.13.
 

Sam Dark

Новичок
Вариант с is_string очень тяжело использовать. Программист должен отстрелить себе не только одну ногу, но и вторую. А вот вариант с is_callable да, затрагивает более-менее реальный сценарий и действительно опасен.
 

fixxxer

К.О.
Партнер клуба
А is_string, похоже, ни в один релиз не попал. Впрочем (это так уже отвлеченно), есть подозрение, что и с is_string можно эксплуатировать с формой записи через class::method при отключенном strict/deprecated ;)
 

fixxxer

К.О.
Партнер клуба
А, тьфу, я протупил что там где в тернарнике.
Ну, тогда надо найти в yii метод, который сделает eval или call_user_func_array из аргумента-массива, в value скормить array(class, method), а в data аргумент :)
 

Sam Dark

Новичок
Я это и назвал двумя выстрелами в обе ноги. Это надо постараться самому программисту. Да ещё и взять значения из реквеста.
 
Сверху