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

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

Учёные научились передавать связь на глубину до 100 метров под землёй

Южнокорейские исследователи из Electronics and Telecommunications Research Institute (ETRI) разработали новую технологию подземной беспроводной связи, способную работать на глубине до 100 метров. Речь идёт о вполне реальной разработке, результаты которой уже опубликованы в IEEE Xplore.

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

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

Испытательный комплект у исследователей получился сравнительно компактным. В него вошли передающая рамочная антенна размером 0,9x0,9 метра, небольшой сенсор для приёма магнитного поля и беспроводная система связи с модуляцией QPSK.

Правда, скорость передачи данных пока очень скромная — всего 2 Кбит/с. Но для аварийной связи, телеметрии или передачи коротких сообщений этого уже может быть достаточно.

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

Вообще, работа над этой идеей началась не вчера. Ещё в 2023 году исследователи показали, что подземная беспроводная связь в принципе возможна, но тогда использовался метод с управлением по напряжению, а у него были ограничения по дальности.

После перехода к схеме с управлением по току и применением магнитной индукции дальность сначала удалось довести до 40 метров, а затем и до 100 метров.

Важно и то, что системы связи класса «сквозь землю» уже существуют. Но обычно они добиваются нужной дальности за счёт очень высокой мощности передатчика. Новый подход, напротив, открывает путь к более компактным и менее энергоёмким устройствам. А значит, область применения такой технологии может оказаться куда шире.

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

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

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