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

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

Банки могут заблокировать переводы из-за старой ОС и прошивки с сюрпризом

С 1 марта 2027 года российские банки могут начать блокировать переводы, если мобильное приложение обнаружит признаки небезопасного устройства. В зоне риска — смартфоны с устаревшей операционной системой, root-правами, jailbreak и неофициальными прошивками.

О возможном применении новых критериев РИА Новости рассказал руководитель отдела информационной безопасности Sitronics Group Артём Герасимов.

По его словам, старые версии ОС нередко содержат известные уязвимости без исправлений, которыми активно пользуются злоумышленники. Модифицированные прошивки и неофициальные сборки также повышают вероятность взлома, поэтому могут стать дополнительным фактором риска.

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

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

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

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

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