Найдена уязвимость удаленного выполнения кода в 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-парсер сохранит только последнее, что позволит обойти все соответствующие проверки ввода и создать пользователя с правами администратора.

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

ИИ заглянул в унитаз: стартапы предлагают анализировать стул по подписке

Трекеры уже считают шаги, оценивают сон и следят за пульсом, теперь технологические компании решили проанализировать и то, что пользователь оставляет в унитазе. Kohler Health и стартап Throne продают устройства с камерами, которые изучают мочу и стул, а затем выставляют владельцу очередную оценку здоровья.

Гаджеты крепятся к унитазу и направляют камеру строго вниз (производители отдельно подчёркивают, что развернуть её вверх нельзя).

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

Удовольствие недешёвое. Устройство Kohler Health стоит $449 (почти 40 тыс. руб.), семейная подписка — ещё $130 (11 250 руб.) в год. Throne просит $399 за гаджет и $70 (чуть более 6000 руб.) ежегодно за доступ к сервису. Иными словами, даже собственные биологические данные теперь доступны по подписке.


Производители обещают выявлять закономерности и помогать людям с заболеваниями кишечника вести автоматический дневник. Kohler Health уже заявляет о функции обнаружения крови, а Throne разрабатывает модель с мультиспектральной камерой, которая теоретически сможет замечать признаки кровотечения раньше человеческого глаза.

В перспективе технологию хотят использовать для раннего выявления колоректального рака, но клиническая эффективность такого подхода пока не доказана.


Гастроэнтерологи встречают такой подход без восторга. Здоровому человеку, по их мнению, проще самому посмотреть на результат, а ИИ пока не добавляет к этому много новой науки.

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

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