В Linux-системах с GNOME можно выполнить код через загрузку файла

В Linux-системах с GNOME можно выполнить код через загрузку файла

В Linux-системах с GNOME можно выполнить код через загрузку файла

В опенсорсной библиотеке libcue нашли уязвимость повреждения памяти, которая позволяет атакующим выполнить вредоносный код в системах Linux с GNOME.

Задача библиотеки library в ОС — парсить файлы разметки. Она встроена в индексатор метаданных файла Tracker Miners, включённого в последние версии GNOME.

Файлы разметки (Cue Sheet) содержат текст с метаданными, передающими имена, исполнителей, длительность и последовательность треков на дисках CD. Как правило, такие файлы идут вместе с FLAC.

Обнаруженная уязвимость получила идентификатор CVE-2023-43641, с её помощью злоумышленники могут выполнить код, используя автоматическое индексирование Tracker Miners всех загруженных файлов.

«Фактически эта брешь в libcue стала RCE-уязвимостью класса 1-click. Если вы используете среду рабочего стола GNOME, обязательно обновитесь сегодня», — описывает проблему Кевин Бэкхаус из команды GitHub.

Для эксплуатации описанного бага целевого пользователя надо заставить загрузить специально подготовленный файл .CUE, который сохраняется в директории ~/Downloads.

Повреждение памяти происходит в момент парсинга сохранённого файла индексаторов метаданных Tracker Miners. Другими словами, переход по вредоносной ссылке может спровоцировать выполнение вредоносного кода в системе.

Бэкхаус подготовил демонстрационный эксплойт и поделился им в соцсети X (Twitter). Работа PoC показана в этом видео.

Разработчик запустил Doom на беспроводных наушниках без экрана

Кажется, список устройств, на которых запускали Doom, снова пополнился, на этот раз беспроводными наушниками. Разработчик Арин Саркисян (Arin-S) сумел портировать легендарный шутер на пару PineBuds Pro. Тех самых TWS-наушников, у которых вообще нет экрана.

Звучит как очередная шутка из серии «Doom запустили на тостере», но всё по-настоящему.

PineBuds Pro — редкий случай на рынке: это одни из немногих наушников с открытой прошивкой, чем Арин и воспользовался. Эти наушники выпускает Pine64 — та же компания, что стоит за RISC-V-паяльниками вроде Pinecil.

Внутри каждого наушника скрывается Arm Cortex-M4F, и именно он стал сердцем проекта DoomBuds. Ради эксперимента разработчик разогнал процессор с 100 до 300 МГц и полностью отключил энергосберегающий режим. Сегодня такой разгон для встраиваемых чипов звучит почти как экстремальный спорт.

 

Отдельной головной болью стали память и хранилище. Чтобы игра вообще влезла в наушники, Арину пришлось серьёзно перекроить код: заранее сгенерировать таблицы, сделать часть переменных константами, отключить систему кеширования и выкинуть всё лишнее. В результате сам движок Doom уложился менее чем в 1 МБ. А WAD-файл Doom 1 пришлось ужать с 4,2 до 1,7 МБ — благо в сети давно есть «облегчённые» версии ресурсов.

Ну и главный вопрос: как играть в Doom без экрана? Решение оказалось неожиданно практичным. Арин использовал UART-подключение PineBuds Pro, чтобы стримить картинку на внешнее устройство или даже в интернет. Bluetooth тоже рассматривался, но по совокупности факторов UART оказался быстрее и стабильнее.

В итоге картинка передаётся в формате MJPEG, а производительность достигает примерно 18 кадров в секунду. Теоретически можно было бы выжать около 25 fps, но процессору банально не хватает сил быстро перекодировать видеопоток.

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