LINUX.ORG.RU

Небезопасные параметры по умолчанию в проектах на базе Rails

 ,


0

1

В Rails компоненте популярного сервиса совместной разработки программных проектов Github обнаружены несколько уязвимостей. Егор Хомяков нашел и описал уязвимости в сервисе Github. Разработчики Github устранили уязвимости и уточнили пользовательское соглашение сервиса.

Уязвимости массового присвоения параметров в Rails далеко не новость. Более того, угроза массового присвоения параметров хорошо задокументирована в главном руководстве проекта Rails и в других источниках. Новость в том, что даже высококвалифицированные разработчики продолжают упускать угрозу массового присвоения параметров из виду. Реакция проекта Rails ожидается.

★★★★

Последнее исправление: Tima_ (всего исправлений: 2)

Для трушных. Типичная ситуация в опен сорс:

Since guys in rails issues ingored me and my issue I got spare time to test it on the first website i had in mind. github.

alex_custov ★★★★★
()

register_globals отключают только трусы! Ресльсы - для настоящих мужыков!

Vit ★★★★★
()

Предлагаю устроить тотализатор, как быстро появятся червяки, эксплуатирующую эту дыру.

Vit ★★★★★
()
Ответ на: комментарий от umren

Это на самом деле печально. На phpbb и openx червяки перли очень можно, когда дыры находились. А тут не отдельный скрипт, а целая платформа, которую все обновят не скоро.

Vit ★★★★★
()
Ответ на: комментарий от Vit

видимо рубисты сами виноваты в своем монотеизме

umren ★★★★★
()
Ответ на: комментарий от Vit

На phpbb и openx червяки перли очень можно, когда дыры находились.

Потому что их легко было пробить в гугле: «powered by phpbb», inurl:«viewtopic.php» и прочее. Даже базы продаются до сих для спамеров - 100k форумов на phpbb за $3. С рельсамы так уже не получится. Ну, будет взломан десяток форумов/блогов на стандартных CMS поверх рельсов, но дальше этого дела не пойдет.

ИМХО.

beka
()
Ответ на: комментарий от Vit

А тут не отдельный скрипт, а целая платформа, которую все обновят не скоро.

Да не надо её всем обновлять. Эта «уязвимость» сродни SQL инъекциям - все знают, что нельзя пихать пользовательский ввод напрямую в запрос, а пихнул - ССЗБ. Так же и здесь, все знают, что явно нужно объявлять доступные для mass assignment поля, это самые азы рельс. А не объявили - ССЗБ. Так что если кто здесь и виноват, так это разработчики гитхаба.

Равно и «фикс» ничего не фиксит, а попросту заменяет умолчательный блеклист доступных для mass assignment атрибутов на пустой вайтлист для НОВЫХ проектов. Ничего не мешает это отключить и продолжить стрелять себе в ногу.

Так что если у разработчика руки растут из предназначенного для этого природой места - эта псевдоуязвимость никак его не касается.

anonymous
()
Ответ на: комментарий от anonymous

Да я последнее время вообще боюсь чужого кода как огня, и поэтому боюсь тяжёлых фреймвёрков в которых у меня не хватит сил всё проверить. Я не знаю что за программисты пошли. И хватит срать на PHP. Я на нём пишу давно и всегда проверяю каждую мелочь во вводе пользователя. То что он некрасивый из за всяческих методов типа str_*, из-за недоООПа и прочего это понятно. Но на нём можно написать очень надёжный код если думать о безопасности. А то что на github'е такие программисты которые это всё допустили, да к тому же ещё и ошибку свою не признают это наглядно показывает что надо обходить стороной. Идиотов не спасёт фреймвёрк, и вообще чем больше фреймвёрк тем больше в нём багов. И ещё чем больше фреймвёрк тем больше у него фич тем легче при его использовании что то не предусмотреть или не узнать о какой то недокументированной фиче.

psp13
()
Ответ на: комментарий от umren

мне кажется гитхаб это не уровень форумов/блогов?

Разумеется, нет.
Я указал на то, что будет затруднительно создать инструмент массового дефейса, который будет использовать эту уязвимость. И давайте не будем играть в игру «количество vs. качество».

beka
()
Ответ на: комментарий от anonymous

Реальный мир отличается от идеального. Если дефолтный конфиг вызовет проблемы в 50% случаев - это косяк платформы, чего бы не утверждали гуры про кривые руки.

Можно филосовствовать сколько угодно, но дырки на гитхабе это не отменит.

Vit ★★★★★
()
Ответ на: комментарий от Vit

есть вещи поинтереснее, типа редмайна :)

Ох...
Признаю, что недооценил масштабы.

beka
()
Ответ на: комментарий от Vit

Если дефолтный конфиг вызовет проблемы в 50% случаев - это косяк платформы, чего бы не утверждали гуры про кривые руки.

Почему всего 50%? Может, 75? Или 90?

Можно филосовствовать сколько угодно, но дырки на гитхабе это не отменит.

Не отменит. Но дырка на гитхабе никак не указывает на качество рельс. Абсолютно никак.

anonymous
()
Ответ на: комментарий от anonymous

Не отменит. Но дырка на гитхабе никак не указывает на качество рельс. Абсолютно никак.

Это указывает на качество программиста. Сколько было багов с SQL injection. А ведь если работать аккуратно SQL injection легче простого избежать. Можно просто выработать правило всегда делать escape специальных символов в параметре запроса или просто использовать ф-цию типа db.query(«UPDATE author = :author:, title = :title: WHERE id = :id:», :author => @author, :title => @title, :id => @id); Ну и ActiveRecord не спасает от проблем на 100% если человек не думает головой а просто начитался туториалов.

psp13
()
Ответ на: комментарий от psp13

Это указывает на качество программиста

программисты - люди ленивые и если язык/фреймворк делают написание безопасного кода трудоемким/неудобным, то появляются такие вот дыры. не беда, что рельсы - только фреймворк. он, по всем признакам, будет «достойной заменой» пых-пыху!

anonymous
()
Ответ на: комментарий от anonymous

Аноним, ты не понимаешь, что говоришь. Думаю, ты не имеешь понятия ни о рельсах, ни о «пых-пыхе».

anonymous
()

Раз смог сломать гитхаб, закоммитил бы фикс им сразу.

Legioner ★★★★★
()
Ответ на: комментарий от anonymous

программисты - люди ленивые и если язык/фреймворк делают написание безопасного кода трудоемким/неудобным, то появляются такие вот дыры. не беда, что рельсы - только фреймворк. он, по всем признакам, будет «достойной заменой» пых-пыху!

Плохие программисты да. И не надо их оправдывать. Что трудно было добавить 1 параметр к mass assignment? Безответственные люди допустили дыру подробно описанную в rails security guide. Плевать на безопасность это типичное свойство быдлопрограммиста. Квалифицированный разработчик думает о безопасности в первую очередь.

psp13
()

Вместо того чтобы выплатить премию, они засуспендили аккаунт?

что ж, на самом деле, такое отношение сплошь и рядом.
кажется, только гугол регулярно раздает приличные чеки

wxw ★★★★★
()
Ответ на: комментарий от anonymous

Дыра, описаная в гайде? Ололо, веб-програмыдло совсем офанарело.

О, с разморозкой, бро! Как отдохнул? А у нас за это время safe_mode в рорарэ запилили и выпилили! Тоже в гайде было, да.

anonymous
()
Ответ на: комментарий от psp13

Но на нём можно написать очень надёжный код если думать о безопасности.

Кэп хочет сказать, что основные свойства продукта закладываются на этапе проектирования? Свежо, дерзко!

И хватит срать на PHP

Ага, щас, уже радуемся и машем. Спасибо вам Создатели, что к 5.3 на нем писать стало можно без непрерывных рвотных позывов! Теперь - всего раз в полчаса! Это победа, это ПРОРЫВ!

anonymous
()
Ответ на: комментарий от psp13

Плевать на безопасность это типичное свойство быдлопрограммиста.

От оно что!

А мне говорили, что типичное свойство быдлопрограммиста - заниматься преждевременной оптимизацией. Еще говорили, что безопасность начинается с архитектуры, и что любая возможная ошибка будет сделана обязательно. Обманули, наверное, суки.

anonymous
()
Ответ на: комментарий от anonymous

Можете намекать и дальше что я быдлопрограммист. Называйте как хотите ради бога, дорогие гуру. Я просто рад тому что в моём коде ни одной ошибки связанной с безопасностью никогда не было. А вы продолжайте и дальше забивать на оптимизацию и делать ошибки, дорогие гуру.

psp13
()
Ответ на: комментарий от psp13

Я просто рад тому что в моём коде ни одной ошибки связанной с безопасностью никогда не было.

такое всегда забавно читать.

kelyar ★★★★★
()

Молодые двадцатилетние, но уже бородатые программисты гитхаба во главе с основателями получили увесистый такой кулак от школоло семнадцатилетнего не бородатого программиста из Богом забытого Саранска.

Ginki
()
Ответ на: комментарий от psp13

Можете намекать и дальше что я быдлопрограммист

Дабожепаси! Какие намеки? Вам прямым текстом сказали. Даже польстили, в части "-программист". Это лишнее.

anonymous
()
Ответ на: комментарий от anonymous

не беда, что рельсы - только фреймворк. он, по всем признакам, будет «достойной заменой» пых-пыху!

Это ты ничего не понимаешь, анон все правильно говорит.

PHP - изначально фреймфорк на перле. RoR - внезапно, фреймфорк на руби.

PHP, с обретением популярности, стал бурно развиваться, буквально как говно на дрожжах. То же можно сказать и о RoR, только процесс шел не не столь стремительно, поскольку основной объем был уже занят предыдущим вбросом, но столь же бестолково.

Особую пикантность ситуации придает то, что Ruby считается Perl'ом с Б&Ш

anonymous
()
Ответ на: комментарий от homakov

понял

это лор, кому надо, давно всё поняли. не пали контору, Игорь!

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.