Уязвимост в libcue, която води до изпълнение на код при зареждане на файлове в GNOME.

В библиотеката libcue, използвана за разширяване на метаданни с информация за реда и продължителността на звуковите тракове, е открита уязвимост (CVE-2023-43641), която позволява изпълнението на код при обработката на специално оформени cue-файлове. Библиотеката се използва в някои мултимедийни плеъри и аудио редактори, включително Audacious, и може да бъде използвана за компрометиране на системата при отваряне на непроверени данни в тях.

Още повече, библиотеката libcue се използва в търсачката tracker-miners, която се прилага в потребителската среда GNOME. Тъй като tracker-miners автоматично индексира нови мултимедийни файлове в домашната директория, за атака срещу системите с GNOME и организиране на изпълнението на код на злонамеренец е достатъчно потребителят просто да качи специално оформен файл в директория ~\/Downloads, ~\/Music или ~\/Videos, без да е необходимо отварянето му (например, в някои случаи е достатъчно да се натисне линк в браузъра).

Проучващите уязвимостта изследователи подготвиха работен експлойт и демонстрираха възможността за експлоатация на среди базирани на Ubuntu 23.04 и Fedora 38. Кодът на експлойта ще бъде публикуван по-късно, за да се даде време на потребителите да инсталират обновление за отстраняване на уязвимостта. Експлойтът е стабилен в работата, но изисква адаптация за всяко дистрибутивно.

Уязвимостта е причинена от препълване на цели числа в кода за парсинг на параметъра INDEX и се проявява при задаване на твърде големи числови стойности в този параметър, които не могат да се вместят в типа „int“. За преобразуване на низ в число се използва функцията atoi; например, при задаването на числото 4294567296, то ще бъде преобразувано в -400000. Необходимата проверка на получената стойност да не е отрицателна е пропусната. В резултат, в кода след преобразуването с atoi се извършва операцията „track->index[i] = ind“, в която „i“ може да бъде зададено отрицателно число за презаписване на паметна област извън буфера със стойността „ind“, която също се зарежда от обрабатываемия файл.

В повечето дистрибуции с GNOME компонентът tracker-miners се активира по подразбиране и се зарежда като зависимост на файловия мениджър Nautilus (GNOME Files). За да деактивирате tracker-miners за текущия потребител, можете да използвате следните команди: systemctl —user mask tracker-store.service tracker-miner-fs.service tracker-miner-rss.service tracker-extract.service tracker-miner-apps.service tracker-writeback.service tracker reset —hard

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster