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

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

От бесплатного чита до поджога: как мошенники вербуют детей в интернете

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

Классическая приманка, по данным «Известий», — бесплатная игровая валюта, моды, читы и взломанные версии игр.

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

По данным «Лаборатории Касперского», с апреля 2024-го по апрель 2025 года было зафиксировано более 19 млн попыток распространить вредоносные и нежелательные файлы под видом популярных игр.

На устройства детей загружают шпионские программы и RAT-трояны, позволяющие читать переписку, следить за нажатиями клавиш и управлять камерой и микрофоном.

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

Но кражей аккаунтов дело больше не ограничивается. Подростков убеждают, что они помогают силовикам, запугивают арестом родителей или шантажируют ранее отправленными данными. Затем требуют фотографировать квартиру, передавать ключи, поджигать объекты и нападать на людей. В июле 12-летнего мальчика из Ленобласти таким способом вынудили напасть на полицейского, а 13-летнего подростка из Подольска — поджечь колонку на АЗС.

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

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

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