В компоненте растеризации шрифтов Freetype обнаружена уязвимость переполнения буфера, позволяющая запускать произвольный код. Пока атакуют только пользователей браузера Chrome, однако под угрозой может быть миллиард устройств. Freetype используется в Linux, Android, iOS и macOS.
За пределами 32 бит
Уязвимость нулевого дня в браузере Google Chrome активно эксплуатируется киберзлоумышленниками. Уязвимость CVE-2020-15999 относится к разновидности heap buffer overflow (переполнение буфера кучи, где «куча» — вид структуры данных). Ее источником стал Freetype, опенсорсный компонент для растеризации шрифтов в Google Chrome.
Уязвимость обнаружил 19 октября 2020 г. сотрудник Google Project Zero Сергей Глазунов. По его данным, проблема заключается в некорректной обработке PNG-изображений, встраиваемых в шрифты: функция Load_SBit_Png допускает запуск произвольного кода, для чего потребуется создать новый файл шрифта со встроенным PNG.
«Проблема в том, что libpng использует 32-битные величины, которые сохраняются в png_struct, — пояснил Глазунов. — В результате если оригинальные ширина и/или высота (PNG-изображения; — прим CNews) превышают значения 65535, bitmap-изображение не поместится в выделенный буфер памяти».
Браузеры Google Chrome атакуют большими шрифтами
Информации о CVE-2020-15999 была раскрыта почти сразу в связи с тем, что она уже активно экплуатируется злоумышленниками для атак на пользователей Chrome.
На официальном сайте проекта Freetype было выложено обновление 2.10.4 для срочного использования. 21 октября 2020 г. Google выкатил обновление 86.0.4240.111 для исправления бага и серии других высокоопасных уязвимостей. Его также рекомендуется установить как можно скорее.
Не только в Chrome
Эксперты предупреждают, однако, что Freetype может быть источником проблем не только в Google Chrome, но и в других проектах, использующих этот компонент.
«FreeType используются для растеризации шрифтов в GNU/Linux, FreeBSD и NetBSD, а также в Android, iOS и macOS и даже в игровых консолях PlayStation 3,4 и Vita, — говорит Михаил Зайцев, эксперт по информационной безопасности компании SEC Consult Services. — По оценкам разработчиков самого FreeType, в мире насчитывается около миллиарда устройств, где используется FreeType, и в теории все они могут быть атакованы, используя эту уязвимость. А следовательно нуждаются в скорейшем обновлении, благо оно уже выпущено. Вопрос в том, насколько быстро оно распространится по конечным точкам».