Найдена уязвимость удаленного выполнения кода в CouchDB

Найдена уязвимость удаленного выполнения кода в CouchDB

Найдена уязвимость удаленного выполнения кода в CouchDB

В CouchDB была обнаружена уязвимость, вызванная несоответствием между собственным парсером JSON и JSON-парсером Javascript, используемым во время проверки документа. Поскольку базы данных CouchDB открыты для доступа через интернет, эта брешь может поспособствовать эскалации привилегий и удаленному выполнению кода на большом количестве установок.

CouchDB написана на языке Erlang, но позволяет указывать сценарии проверки документов в Javascript. Эти сценарии автоматически оцениваются при создании или обновлении документа. CouchDB управляет учетными записями пользователей через специальную базу данных — _users.

Когда вы создаете или изменяете пользователя в базе данных CouchDB, сервер проверяет изменение с помощью функции Javascript validate_doc_update, чтобы удостовериться, что это не попытка сделать себя администратором, например.

«Проблема в том, что существует расхождение между JSON-парсером Javascript (используемым в скриптах проверки) и тем, что используется внутри CouchDB, называемым jiffy», — пишет эксперт, обнаруживший брешь.

Далее специалист привод куски кода для демонстрации этой разницы:

Erlang:

> jiffy:decode("{\"foo\":\"bar\", \"foo\":\"baz\"}"). 
{[{<<"foo">>,<<"bar">>},{<<"foo">>,<<"baz">>}]}

Javascript:

> JSON.parse("{\"foo\":\"bar\", \"foo\": \"baz\"}")
{foo: "baz"}

Для данного ключа парсер Erlang сохранит оба значения, а вот Javascript-парсер сохранит только последнее, что позволит обойти все соответствующие проверки ввода и создать пользователя с правами администратора.

Исследователь указывает на то, что использовать несколько парсеров для обработки одних и тех же данных не очень правильно. Он предлагает сделать все возможное, чтобы не было никаких функциональных различий между парсерами, если есть необходимость использовать несколько.

Подпишитесь на новости

Mail.ru отменяет подаренный навсегда терабайт и оставляет лишь 8 ГБ

У некоторых старых пользователей «Облака Mail» заканчивается место: бесплатный терабайт, полученный по акции 2013-2014 годов, сокращают до стандартных 8 ГБ. Файлы сверх нового лимита предлагают скачать или сохранить, оплатив дополнительное место.

Как выяснил «Код.ру», пользователи получают уведомления с индивидуальными сроками. В одном письме сокращение назначено на 30 октября, а удаление лишних файлов — на 30 января 2027 года. Другому пользователю указали дату удаления 3 февраля.

Поэтому ориентироваться стоит на собственное уведомление: единого дня, когда у всех исчезнут данные, на сегодняшний день нет.

В Mail.ru сообщили изданию, что изменения затронули менее 0,5% пользователей Облака. Базовые функции и стандартная бесплатная квота сохраняются.

По справке сервиса, при превышении 8 ГБ ограничиваются загрузка, редактирование и отправка файлов. На скачивание данных или покупку места дают три месяца. Затем часть файлов перемещается в корзину, откуда через 14 дней удаляется окончательно.

Терабайт раздавали за установку приложения с 20 декабря 2013-го по 20 января 2014 года. В ответ на вопрос об изменении условий поддержка сослалась на лицензионное соглашение.

С бесплатными вечными 100 ГБ сервис уже поступал похожим образом в 2024 году. Теперь очередь дошла до терабайта.

RSS: Новости на портале Anti-Malware.ru