Info Security
0,1
рейтинг
10 января 2013 в 16:34

Разработка → Выполнение произвольного кода в Rails

Вкратце: Rails 2,3 и 4 приложения подвержены выполнению произвольного кода(RCE) без исключения. Шел, чтение и очистка базы данных, все что душе угодно.

Чуть подробнее. Не так давно многие обратили внимание на то что рельсы по умолчанию принимают не только x-www-form-urlencoded параметры, но и XML/JSON. А XML внутри себя принимает также такой тип данных как YAML:
<foo type="yaml">
...
</foo>


А YAML в свою очередь очень гибкий формат и позволяет создавать инстансы произвольных классов с последующей задачей через [] метод произвольных параметров — например.
А в свою очередь в огромной классовой архитектуре Rails и сопутствующих джемов можно найти такой класс чтобы во время его инициализации(initialize) или назначения аттрибутов через [] был выполнен произвольный код из этого самого YAML текста.
Умельцы нашли несколько способов — например через класс ActionDispatch::Routing::RouteSet::NamedRouteCollection
Статья с описанием на официальном блоге и рекомендации по обновлению.

P.S. эксплоит в сети вот уже часов 12. эпично. вас предупреждали
Sakurity.com @Chikey
карма
348,0
рейтинг 0,1
Info Security
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (140)

  • 0
    Это действительно эпично. И печально.
    Я правильно понимаю, об уязвимости теоретически кто-то мог знать давно?

    Сам на Rails не пишу, но использую часто.
    • +32
      почти уверен что до 2013 о ней никто не знал. там эпичная цепочка генераторов и мы всем твиттером залезли в psych/params parser только когда искали очередной обход предыдущей CVE. И нашли МИФРИЛ В ГЛУБИНАХ МОРИИ АХАХА
      • +2
        Обновление до 3.2.11 решит проблемы?
        • +13
          Да. Обновление до django unchained решит уж точно
          • +5
            До Django получится graceless degradation, мы так не работаем.
            • +7
              Я даже знаю, что открываю ящик Пандоры, но не могли бы знающие и знакомые с обеими технологиями люди обьективно прояснить по хардкору в чем рельсы принципиально лучше и хуже джанго?
              Из чисто научного интереса спрашиваю.
              • +3
                Научный интерес не способен охватить вопросы предпочтений, иначе жизнь была бы сильно проще и лучше.

                Лично мне очень не нравятся отступы и ряд других традиций в Python, вроде стиля именования приватных методов. Недавно видел, что Django ругают за то, что к нему сложно прикрутить поддержку нереляционных хранилищ и всякие CKEditor (не проверял эту информацию).

                Ruby решает поставленные задачи, и решает их очень хорошо. Я говорю в первую очередь не о Web-разработке. Предлагаю закрыть тему, иначе начнётся ад и мусор.
                • +3
                  ты не 'eveel' в тексте нету ни единого «бл*ть»!
                • 0
                  А где ruby преуспел кроме веб разработки?
                  • 0
                    DSL же. Rake, Chef как минимум.
                    • –1
                      Chef — да, согласен.
                  • +1
                    Можно подумать, что веб-разработка – это какая-то одна задача
                    • –1
                      Если перефразировать — Ruby без Rails редко используется.
                      • 0
                        Много чаще, чем вы думаете.
                        • 0
                          Ну я сам программист на Rails, не вижу просто ничего на ruby без rails, ни консольных утилит ни демонов/серверов, ни десктопных приложений. Может какие-то и есть, но не в таком количестве как python/perl.
                          • 0
                            Вообще-то Ruby задумался как альтернатива Perl в Unix-системах. То, что вы не видите, это еще не означает, что этого нет. Многие люди разрабатывают просто на Ruby — почитайте хотя бы официальный форум Ruby.
                            Факт в том, что в самом Ruby заложены очень мощные возможности как самостоятельного скриптового языка.
                            А то, что появился Ruby on Rails еще раз доказывает универсальность и гибкость языка Ruby.
                            И еще один момент. Сколько людей сейчас занимаются разработкой скриптов и демонов, а сколько веб-разработкой… почувствуйте разницу, как говорится.
                            • +1
                              Я вообще не рубист и не питонист. Ну то есть абсолютно и совсем, но видно, что питон явно используется чаще чем руби, «как альтернатива Perl в Unix-системах»
                              • 0
                                Всему свое время. Очень большую роль играет привычка как таковая. Я вот в свое время скрипты только на Perl писал и ни о каком python не думал.
                                Сейчас перешел на Ruby и для меня Perl уже не существует, а python как не было так и нет — я в нем АБСОЛЮТНО НИКОГДА не нуждался.
                                Один лишь раз посмотрел в сторону python ради научного интереса — увидел форматирование с помощью отступов — плюнул и сразу отвернулся.
                                • +1
                                  Ну, наверное, вы — исключение. Я вот регулярно вижу какие-то утилитки на питоне. И никогда — на руби)
                                  • 0
                                    У меня вообще нет привычки рыться без надобности в системе и высматривать какие-то утилитки — бесполезная трата времени. Для меня ОС — это инструмент, которым я пользуюсь. Один раз правильно настроил и этого достаточно.
                                    Возможно, на Ruby значительно меньше утилит, но он нашел себе более достойное и востребованное применение на просторах Интернет.
                                    И могу сказать совершенно уверенно — Ruby on Rails — очень удобная и качественная система разработки веб-приложений, и я считаю, именно благодаря тому, что написана она на Ruby.

                                    А насчет уязвимостей… покажите мне хоть одну систему, в которой ни разу было не найдено ни одной уязвимости.
                                    Надежность системы характеризуется тем, как быстро реагируют разработчики и исправляют баги.
                                    • 0
                                      У меня вообще нет привычки рыться без надобности в системе и высматривать какие-то утилитки — бесполезная трата времени. Для меня ОС — это инструмент, которым я пользуюсь

                                      Вы это сейчас к чему сказали то, а? Ну вот просто вообще не понимаю, при чём тут это.

                                      Я лишь говорю о том, что руби нифига не популярный в качестве никсового языка в отличии от питона, а вы тут мне начинаете рассказывать, как вы ОС пользуетесь)
                                      • –1
                                        Я уже сказал, что дело времени…
                                        • 0
                                          Питон — 91й год, Руби — 95й. Правда думаете, что дело в этой разнице в 4 года?
                                          • –1
                                            Да, очень вероятно. Дело времени и дело привычки. Кто-то в свое время заметил python и понеслось, а Ruby совсем недавно «вынырнул», кстати, благодаря Rails. Язык должен быть замечен, опробован, тогда его начинают использовать.
                                            Мне вот без разницы, какой язык используется чаще в никсах как скриптовый. Сейчас python, потом другой на смену придет… все так изменчиво в этом мире.
                                            Ну возьмем, к примеру, Perl. Ведь сначала подавляющее большинство сайтов писалось именно на нем. И? Появился PHP и очень просто вытеснил Perl с этой ниши.
                                      • 0
                                        Я знаю весьма популярный homebrew например…
                                  • 0
                                    На какой системе сидите?
                                    • 0
                                      Кубунту
                                      • 0
                                        Про маковый homebrew не слышали?
                                        • 0
                                          Я не отрицаю, что приложения на руби есть. Я говорю о том, что Питон в качестве скриптового языка в никсах используется значительно чаще руби. Да щас уже Нод.жс используется, наверное, чаще руби.
                                  • 0
                                    Поддерживаю, ни Руби ни Скала не станут языками для разработки скриптов потому как они элементарно стартуют очень медленно. Никому не нужны такие мучения. А с Питоном таких проблем нету. Только нажал Enter, сразу ответ в консоли.
                                    • 0
                                      Ээмс. Объясните?

                                      shock@notebook:~$ time python -c "print 123"
                                      123
                                      real    0m0.023s
                                      user    0m0.016s
                                      sys     0m0.004s
                                      
                                      shock@notebook:~$ time ruby -e "print 123"
                                      123
                                      real    0m0.025s
                                      user    0m0.020s
                                      sys     0m0.000s
                                      

                                      • 0
                                        Ну, добавьте пару импортов стандартных гемов и почувствуйте разницу.
                                        Я пробовал Selenium-тесты запускать под руби и под питоном, питон по-любому быстрее стартовал. Я уже не говорю про юнит-тесты для рейлс, без костылей ими пользоваться просто утомительно.
                                      • 0
                                        # time ruby -e «print 123»
                                        123
                                        real 0m0.037s
                                        user 0m0.010s
                                        sys 0m0.000s
                                        # time python -c «print 123»
                                        123

                                        real 0m0.016s
                                        user 0m0.000s
                                        sys 0m0.010s
                                        # time perl -e «print 123»
                                        123
                                        real 0m0.003s
                                        user 0m0.000s
                                        sys 0m0.000s

                                    • 0
                                      Какую ерунду вы говорите! Руби везде используется как скриптовый язык — и все со стартом там нормально.
                                      • +2
                                        везде используется как скриптовый язык

                                        Везде — это где?
                                • –1
                                  Да это индивидуально всё. Пишу веб приложения на rails, скрипты на perl, и делать наоборот нет никакого желания.
                          • 0
                            Эпическая управлялка portinstall/portupgrade пакетами/портами в FreeBSD написана полностью на руби.
                            Puppet, Chef тот же уже упоминали. Довольно много утилит, и главное, их очень удобно писать.
                            • 0
                              Итого насчитали 3 штуки.
                              А есть примеры демонов? Или того что можно запустить в цикле или а-ля xargs и оно будет работать быстро.
                              Как на счёт деплоя? Пакет ruby 1.8 не совместим с ruby 1.9 в моём дистре.

                              Про chef у меня подозрение что это отдельной статьёй идёт — DSL — на ruby любят писать DSL (с поводом и без повода), хотя он и в любом другом языке нормально реализуется.
                              • 0
                                Bluepill и God — управление демонами. Альтернатива — Monit на Perl.

                                В деплое — Chef, Puppet, Capistrano, Vlad the Deployer.

                                Даже для Git — Gitlab, git-commit-notifier, Gitorious.
                              • 0
                                Ну и касательно DSL, — все-таки на Ruby проще.

                                Пишут аналоги RSpec, Cucumber и других популярных Ruby DSL и на других языках, но получается многословнее.
                • –1
                  > всякие CKEditor
                  оО
                  Это же яваскрипт-редактор, как его может быть сложно прикрутить к чему бы то ни было? (Прикручивал CKEditor и TinyMCE к джанге без каких-либо проблем)
          • +9
            Обновляемся до джанго и через месяц понимаем, что у нас теперь 5 критических уязвимостей.
            • +3
              В джанго никогда не было подобных дыр. С другой стороны сравнивать эти фреймворки по мощности я бы остерегся.
              • +3
                Вы представляете, о рельсах тоже так думали. До сего момента.
                • +2
                  Да нет, тут место очевидно. В джанго нет такой гибкости, нет такого количества хелперов и такой заботы о времени программиста. В ней просто меньше возможностей получить дыру с одной стороны, и комьюнити больше думает о таких вопросах с другой.

                  Ну что ж, теперь у нас есть ребята, которые озаботились вопросом поиска дыр в RoR, спасибо.

                  А главное не теряйте фокус — я джанго не люблю, и не принижаю рельсы на фоне — ну нашли, пофиксили, работаем дальше. На джанго достаточно геморно решаются многие повседневные задачи, и админка ее мусор. И шаблоны. И формы. И ORM.
                  • 0
                    Это только постфактум стало очевидно. Через много лет.
            • 0
          • +1
            На время, пока ты и до него не доберешься? %)
      • +25
        Хомяков! Хватит ломать интернет! :)
        • +2
          а чё я то, петька иванов charliesome первый начал. а серега белов ben murphy вообще под все платформы написал
          • +3
            ^ ^
            • +1
              хахах, всплыло это имя+фамилия))
      • +1
        Егор, мы знали, что без тебя это не могло обойтись! Ты большой молодец, что находишь эти дыры и репортишь разработчикам.

        Скажи пожалуйста, у тебя только на Rail глаз наметан, или ты еще где-то проблемы ищешь? Интересуют Socket.io, Django и Express.
        • +1
          никаких Socket.io, Django и Express только Rails. Я — патриот
  • +4
    Решето... Комменты в оффициальном блоге доставляют.
  • +7
    понеслась…
    image
    • +4
      я делаю `touch homakov_at_gmail_com_hire_me_plz_i_can_Fix_dat
      • –4
        Скрипткиддис
        • +4
          Скрипткиддис — это мое второе имя
        • +4
          Оставил машину, возвращаешься, а там разбито окно и внутри кирпич с запиской: «homakov_at_gmail_com_hire_me_plz_i_can_Fix_dat».
          Толи хулиганство, толи вымогательство.
          Не понимал и не понимаю подобные выходки. Если приписываешь себя к экспертам по безопасности, подобное — это низко.

          А по природе этого шума — все как обычно, в погоне за упрощением конфигурации в угоду новичкам, включили все ненужное и отключили все нужное. Было бы не так, таких ужасных масшабов у этой уязвимости бы не было. Но тогда быть может и о рельсах никто бы не слышал :)
          • –1
            мсье не распознал шутки? делать мне нехер скрипткидничать
  • +40
    Абсолютная уязвимость. Все версии. Все полномочия. Просто шедевр. Браво!
    • –1
      Не все. В RoR < 2.0 уязвимости нет :)
      • +1
        Все актуальные ;)
        • –1
          Простите — 2.3.10 — актуальна?
          • 0
            ВСЕ
            • 0
              Я знаю, что в 2.3.10 уязвимость, я говорю, эта версия как фреймворк вообще актуальна сейчас?
              • 0
                Писать на вторых рельсах что-то новое никому не взбредет, разве что поддерживать уже готовый сайт.

                Или вы вообще не в курсах?:) 8 января как раз таки 3.2.11 вышла, а четвертые рельсы в активной разработке.
                • 0
                  Эм, простите, что возможно ввел вас в заблуждение своим вопросом. Я вкурсе. Я к тому, что половино, того что пишется под рельсы так сказать third-party уже под вторые не работает. Мой гем, которому уже 1 год примерно вообще не писался под вторые рельсы и впринципе там работать не может.
              • +2
                Она имеет место быть на продакшенах)
                • 0
                  Мне кажется только ленивый еще не переехал.
                  • +5
                    Ну причины могут быть разными)) «Работает — не мучай»
                    • –10
                      Ну, вы знаете, Windows 98, Gentoo, Mac Os IX тоже ведь работают да?
                      • +6
                        Вы так говорите, будто это что-то плохое ;)
                        • –2
                          Перфокарты и накопители на магнитных дисках тоже были когда-то удобным изобретением и я с трепетом вспоминаю те дни, но их как-то уже не видно ведь правильно. Это не что-то плохое, просто есть что-то более новое и современное.
                      • +12
                        а при чём тут gentoo?
                        • +1
                          Это перечислены операционки из ночных кошмаров.
                        • +1
                          Гентушники оскорблены?
    • –2
      там что то типа 1.2.1 непомню. Уязвимость появилась 6 лет назад )

      Браво? Я теперь отвожу глаза когда люди говорят про rails security. хотя еще пару недель назад я бы начал доказывать что XSS защита, CSRF защита блабла(
      • +4
        Ну и что? Все точно также говорили про самый защищенный форум IPB! А только я там нашел две 0day бреши.
        Ошибки есть везде! Надо их только искать и то что в последнее время столько усилий уделяется Rails Security — это очень хорошо! Чем больше уязвимостей найдено, тем вероятнее меньше будет в продакшене.
        • +1
          Где это говорили про защищенность IPB? В каждой версии уязвимости.
      • 0
        Теперь можно делать тоже самое, но с поправкой на версию =)
        Тут вспоминается предыдущая статья на эту тему, где было указано как отключить обработку всего кроме www-forms, так что думаю затронет большенство, но не пароноиков =)
  • +2
    А что эпичного в том, что эксплойт доступен 12 часов, если исправление выпущено 48 часов назад?
    • 0
      может в том что не все читают хакер ньюс и даже 50 процентов эппов сейчас не обновились? Я думаю кроме топовых рельс ресурсов никто особо не пошевелился
      • 0
        Не все, конечно. Но есть ведь ещё weblog.rubyonrails.org :)
      • +2
        Ни и плевать на эти 50%. Если в Windows находят что-то типа уязвимости в RPC dcom вам, как админу, не плевать на то, что остальные 90% не ваших пользователей подвержены риску? Мне было бы как-то абсолютно.
        Если ты серьезный Developer — ты следишь за новостями. Меня вообще очень сильно поразило то, что для 2й ветки выпустили обновление.
      • +2
        Но, но! Я уже обновил половину своих приложений (самых выставленных в мир)!
        Самое обидное — одновременно с такими важными обновлениями выходит обновление какого-нибудь гема (в данном случае whenever 0.8.1), которое ломает что-нибудь до кучи и начинаешь с весельем одно обновлять, другое откатывать, писать в багтрекер третьего :-)
        • 0
          рекомендую фиксировать в таких случаях версию гема через "~> version" пока он не доломан обновлением :)
    • –1
      а любой, самый застарелый сервачок с рельс эппчиком == шел. можно нафигачить кучу лома и продать
    • +22
      Эпично то, что люди узнают об этом на хабре.
      • –14
        Ссори, нет кармы, но, как вы правы!
        • –11
          Ой, ну простите, давайте вообще карму сольем, что бы я вообще никогда никому плюсков не понаставил не дай Бог. Неадекватная у вас реакция, простите!
          • +1
            Прощаем, че.
      • 0
        В твиттере уже как 7-8 дней (в зависимости от пояса) весит.
        • 0
          И все уважающие себя компании давно залатались уже сами без ожидания апдейта рельсов. А потом сделали пул реквест на апдейт рельсов. То, что вы не в состоянии поправить уязвимость в, О Боже, OpenSource проекте совсем не делает вам чести.
      • +16
        Вчера мой хостер прислал письмо про это:
        Вы получили это письмо, потому что один или несколько ваших проектов используют Ruby on rails.

        В этом популярном фреймворке была найдена уязвимость, которая позволяет выполнить любой код в контексте вашего приложения простым POST-запросом. Например, удалить всю информацию из таблицы базы данных без какой-либо проверки прав доступа. Подробнее об этой уязвимости можно прочитать в статьях на open.net и в блогах metasploit. Уязвимость получила название CVE-2013-0156.

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

        Разработчики Ruby on rails оперативно выпустили обновление безопасности для всех версий RoR, начиная с 2.3. Вам следует незамедлительно обновить версию фреймворка до 3.2.11, 3.1.10, 3.0.19, 2.3.15 или старших, в зависимости от ветки, которую вы используете.

        После обновления вы можете отключить блокировку CVE-2013-0156 на уровне прокси в настройках проекта.

        Напоминаем вам, что вы несете персональную ответственность за любые данные, размещенные вами на наших ресурсах, в том числе и за регулярную проверку на уязвимости вашего кода.
        • +3
          Так самое ж интересное, имя хостера: где оно? :)
          • +3
            locum.ru — уже сказал им спасибо в твиттере.
    • 0
      Возможно, что доступно это много дольше уже.
      Просто не все специалисты сторонники full disclosure.
      Кто-то спокойненько в течение ряда лет сливал базы с разных сайтов.
      Теперь дыра закроется.
      Как вариант, вполне может быть, что эта дыра была введена в код намеренно :)
      • +1
        Новая теория заговора? :)
        Ruby on Rails — фреймворк зла.
        Ruby — само зло.
        Rubyists — апологеты зла.
        37signals — кузница зла!
        • 0
          Я лет 15 назад выкладывал дыры публично — отсылал к Касперскому и производителям. Потом один чел меня от этого отговорил — переубедил в другую политику безопасности. Некоторы зарепорченные мною дыры, в т.ч. у Каспера, до сих пор не пропатчены :) В общем, нечего делать бесплатную работу за тех, кто продает скареваре типа Каспера и других все равно нифига не помогающих пвсевдо-антивирусов. Максимум, если добрая душа, то писать производителю — без публичных эксплоитов.
          • 0
            Rails не зарабатывает на этом ничего…
            • 0
              Ну и бог с ним. Просто знаю примеры реальной жизни. Когда в репозитарий вводились дыры специально для последующих атак.
  • +1
    Блин, это то же самое, что писать:
    eval params[:code]
    
    Когда уже разрабы поймут, что писать секьюрно, это значит проверять валидность foreign input.
    Без разницы каким способом. Всякие XSS/CSRF и со фильтры помогут в лучшем случае до следущей найденой vulnerability, типа приведенной в статье.
    Сам на релсах пишу редко, но используя «чужой» xml в этом случае, либо поотключал бы нафиг все что может загрузить любой не предусмотреный мной класс (тот же yaml если оно не надо), либо использовал бы template для десериалезации (т.е. десериализируем в пустой инстанц класса/интерфейса, все что им не предусмотрено идет лесом или вылетает с исключением).
    Простой parse xml делаем только если оно наше, или xml пришел из источника с уровнем доверия > 100500.
    • +3
      Никогда по запарке не оставляли ничего такого в коде?
      И когда уже люди поймут, что Open Source он на то и Open Source, что — не нравится — измени. Ты же знаешь как лучше — помоги любимому проекту, не останься в стороне.
      • 0
        К foreign input отношусь всегда оч. серьезно. Думаю поэтому не оставлял (хотя 100% даже бог не даст:).
        Насчет помоги, у меня таких проектов тьма, любимый Tcl и co, т. ч. с этим не ко мне.
        Но ваш посыл в принципе верный. Еще бы знать, где рыть — а то шерстить несколько десятков тысяч строчек в поисках уязвимостей — то еще удовольствие. Вот тот кто коммитил это, мог бы и подумать насчет уязвимостей. И по запарке — это не оправдание для проъекта с огромной коммюнити и десятками разрабов.
        • 0
          Это к слову сказать не оправдание для комьюнити (меня в частности), а ошибаются все. И не все сразу становятся такими прям опытными программистами. К foreign input вы вероятно начали серьезно относиться с какого-то опеределенного времени. Не реально что бы вы сразу стали учитывать этот фактор в своих программах — на начальных этапах совсем об этом не задумываешься, а так как ошибка весьма и весьма старая, то могу сказать, что Rails тогда не набрала такой критической популярности как сейчас. Оттого и малый интерес со стороны хакеров к ней был.
          И еще — если всегда отвлекаться на все сопутствующие вероятностные факторы, то можно улезть в такие дебри, так и не завершив свой проект.
          • 0
            И еще — если всегда отвлекаться на все сопутствующие вероятностные факторы, то можно улезть в такие дебри, так и не завершив свой проект.
            Это да, очень знакомо…
        • 0
          /offtop
          всегда было интересно, что заставляет людей сокращать слово «очень».
          • 0
            нехватка времени + невозможность интерпретировать это сложившееся сокращение по другому. Много раз замечал за собой и другими так же и произношение его.
  • +1
    Rails 4 при чем? Он то как раз выйдет секьюрным (от этой дыры как минимум).
    • +3
      Уже сейчас многие используют в продакшене 4-е рельсы.
      • 0
        Многие, это кто? Они ж вроде в глубокой бете ещё. Да и гемы не все их поддерживают. Я бы поостерёгся, наверное…
        • 0
          gist.github.com, 37signals новый basecamp на нём вроде пилят тоже. Сейчас поищу тот твит…

          Вот: twitter.com/dhh/status/287223713252913152

          И там же в комментариях говорят, что gist'ы тоже уже на 4-х рельсах.
  • –6
    Может пора мигрировать на другой Ruby фреймворк?
    Самый популярный не обязательно значит самый лучший.
    • +5
      Use sinatra, luke! :) На самом деле, патч выпустили очень быстро, и это радует.
      • –4
        Неужели мир Ruby фреймворков настолько о г р а н и ч е н?
        • +3
          Ну, десяток точно наберется: accidentaltechnologist.com/ruby/10-alternative-ruby-web-frameworks/

          Просто дело в том, что sinatra и rails гораздо удобнее (для меня) всего, с чем я работал ранее (yii, zend, django).
          • 0
            Спасибо, вопрос был риторическим…
            А статья сильно отдаёт нафталином … :)
        • +3
          Так вот кого радует фрагментация линукса.
  • +1
    С этим обновлением появилась такая вот проблема: github.com/rails/rails/issues/8832
    • –1
      кстати баг [1,nil] я зарепортил и у него очень мало способов применения(только пост) поэтому имхо вообще зря фиксили
  • 0
    У меня есть сайт на rails 2.3.2, я так понимаю, на нем уязвимость отсуствует? (я не программист, поэтому могу не понимать тонкости)
    • +1
      Присутствует. Обновитесь до 2.3.15
    • 0
      echo "ActionController::Base.param_parsers.delete(Mime::XML)" >> RAILS_DIR/config/environment.rb
      • 0
        эм… если это способ решения проблемы — можно это сделаете вы, а я вам, например, какую-нибудь книжку с Озона отправлю?
        • 0
          Напиши в личку
  • НЛО прилетело и опубликовало эту надпись здесь
    • +4
      При чем тут руби?
      • +1
        Действительно. Во многих языка сборка/деплой пакета предполагает выполнение произвольного кода.
      • +12
        Руби ни при чём, но автор аццкая сотона ;)
      • НЛО прилетело и опубликовало эту надпись здесь
        • 0
          IMHO автор комментария имел ввиду, что Ruby не есть Rails. Поэтому говорить что Ruby — решето, по крайней мере бред.
    • 0
      хероку уж точно решето. я в них находил CSRF вида aaa.heroku.com?rename=bbb надо было просто заставить владельца аппа посетить и его приложение переименуется
      и вот вчера была статья на ХН про баг в востановлении пароля(можно любому юзеру восстановить)
      heroku stuff? и даже никакого баунти? а вот деньги нанимать матза у них есть значит

      и наконец мой друган и пендосии тоже секурянт по рельсам нашел интересную уязвимсть
      titanous.com/posts/vulnerabilities-in-heroku-build-system
      • НЛО прилетело и опубликовало эту надпись здесь
    • 0
      Очень интересно, но почему не отдельный пост?
      • НЛО прилетело и опубликовало эту надпись здесь
  • 0
    Опубликовал краткую выжимку по поводу уязвимости в Rails
  • 0
    Обновил рельсы, поймал уйму странных багов, в том числе undefined method `to_i`
    В итоге замена в Gemfile
    gem 'rails', '3.2.11'
    на
    gem 'rails', :git=>'git://github.com/rails/rails.git', :branch => '3-2-stable'
    решила мои проблемы.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.