2016-02-17 1 views
1

Я использую brakeman (3.5.1) для сканирования кода моих рельсов (4.2.1). Вещи кажутся прекрасными. но он дает проблему, как показано ниже:Отказ в обслуживании с использованием кеширования типа mime

отказ в обслуживании через кеширование типа mime. Обновите Rails 4.2.5.

Теперь я понимаю, что такое отказ в обслуживании и типы mime, принимают заголовки HTTP-запроса. Но как кэширование типа mime вызывает отказ в обслуживании.

Может кто-нибудь объяснить, как это вызвано.

Благодаря

ответ

1

Полное сообщение: Rails 4.2.1 is vulnerable to denial of service via mime type caching (CVE-2016-0751). Upgrade to Rails version 4.2.5.

Если вы искали CVE-2016-0751, или использовать отчет HTML и нажал на «отказ в обслуживании», или использовать выходные данные JSON и следовали при условии ссылки, вы бы найти Rails security advisory for CVE-2016-0751 в котором говорится:

Возможные утечки объекта и отказ в обслуживании в пакете действий

Существует возможная утечка объект, который может привести к отказу в обслуживании уязвимости в пакете действий. Эта уязвимость была назначена идентификатору CVE-идентификатора CVE-2016-0751.

Версии Пораженные: Все.

Не влияет: Нет.

Фиксированные Версии: 5.0.0.beta1.1, 4.2.5.1, 4.1.14.1, 3.2.22.1

Impact

Тщательно созданный принять заголовок может вызвать глобальный кэш типов пантомимы для неограниченного роста, что может привести к возможному отказу в атаке службы в Action Pack.

Все пользователи, работающие с соответствующим выпуском, должны либо обновить, либо использовать один обходных решений немедленно.

Когда HTTP-запрос получен, он может использовать заголовок Accept для определенных типов mime, которые он ожидает получить. Они кэшируются в Rails. Злоумышленник может отправлять множество разных типов mime (они не обязательно должны быть реальными) и заставить кэш увеличиваться и использовать всю доступную оперативную память, сбой сервера. Это классифицируется как атака «Отказ в обслуживании».

Другими словами, это уязвимость безопасности в основной части Rails. Чтобы решить проблему, выполните обновление.

+0

Спасибо .. это стало более понятным сейчас –