Критические обновления Ruby on Rails


Ruby on RailsРазработчиками Ruby on Rails после выявления опасных уязвимостей было выпущено критическое обновление фреймворка до версий 3.2.12, 3.1.11 и 2.3.17. Уязвимости были закрыты в оперативном порядке. В версиях 3.2.12 и 3.1.11 закрыта одна уязвимость, а в версии 2.3.17 — две. Всем пользователям рекомендуется установить апдейты как можно быстрее.

  • CVE-2013-0276 (3.2.12, 3.1.11, 2.3.17)
  • CVE-2013-0277 (2.3.17)


В случае с CVE-2013-0276 речь идёт об уязвимости в методе attr_protected в библиотеке ActiveRecord. Данный метод предназначен для записи списка атрибутов, которые нельзя присваивать конкретной модели. Используя специальным образом составленный запрос, злоумышленники могут обойти это ограничение и изменить значения, которые предполагалось защитить. Единственной "защитой" для уязвимых версий является отказ от метода attr_protected в пользу метода attr_accessible.

Одновременно с патчами для Rails выпущена новая версия гема JSON, где закрыта другая уязвимость CVE-2013-0269. Данную уязвимость можно использовать для DoS-атаки на фреймворк Ruby. Если более конкретно, то дефолтный парсер JSON уличили в том, что он берет из const_get(user_input) и генерирует символы Ruby, которые не убираются сборщиком мусора. Специфическое поведение парсера можно использовать для внедрения символов в любой класс Rails, что открывает возможности для массовых SQL-инъекций.

За последние недели в Ruby обнаружено несколько опаснейших уязвимостей. По мнению некоторых пользователей Ruby, данный факт говорит о "взрослении фреймворка".


Обновлено (12.02.2013 14:17)