Security Week 2508: уязвимости встроенного архиватора Windows

Security Week 2508: уязвимости встроенного архиватора Windows
В октябре 2023 года в Microsoft Windows была добавлена поддержка 11 форматов сжатия данных. Операционная система, долгое время нативно поддерживающая только архивы .zip, научилась разархивировать файлы в формате RAR, 7z и прочих. Реализовано это было с помощью библиотеки libarchive , которая распространяется с открытым исходным кодом. Исследователи из команды DEVCORE проанализировали эту относительно свежую функциональность и обнаружили пару новых уязвимостей.


Первая уязвимость ( CVE-2024-26185 ), которую удалось обнаружить исследователям, относится к классу Path Traversal. Это крайне распространенная ошибка, при которой «подготовленный» архив получается сохранить не во временную директорию и не куда указал пользователь, а куда угодно. Достигается это манипуляциями с абсолютным путем к файлу в архиве, которые недостаточно хорошо фильтруются при распаковке. В результате получается то, что изображено на скриншоте: при распаковке архива RAR-файл сохраняется в произвольное место в системе, в данном случае в корневую директорию.

Авторы публикации предупреждают, что эксплуатировать эту уязвимость для достижения какого-либо вреда будет достаточно сложно. С одной стороны, уязвимость CVE-2024-26185 позволяет не только записывать произвольные файлы, но и удалять их позднее — будет отрабатываться стандартный механизм архиватора, удаляющего временно распакованные файлы. С другой, запись файлов возможна только с привилегиями пользователя, что серьезно ограничивает возможности эксплуатации. Причиной возникновения такой ошибки стала банальная забывчивость разработчиков: метод очистки путей распаковки файлов от «опасных символов» реализован, но в одном из сценариев работы он просто не вызывается.

Звучит как простая ошибка, которую легко исправить, но по факту эксперты из DEVCORE нашли еще одну уязвимость (CVE-2024-38165), связанную с первой и работающую, несмотря на наличие патча для предыдущей проблемы CVE-2024-26185. Она также связана с некорректной работой санитайзера, что в одном случае даже может приводить к утечке данных NTLM: можно сконструировать архив так, что при его распаковке будет произведено обращение к удаленному серверу!

Вывод, к которому приходят авторы публикации, — внедрение libarchive в Windows несколько расширяет спектр возможных атак на пользователей этой операционной системы. В качестве примера приводятся две уже известные уязвимости: CVE-2024-20696 и CVE-2024-20697 . Обе были найдены в январе 2024 года и приводят к записи произвольных данных за пределами выделенного массива.

Еще два момента, которые отмечают эксперты DEVCORE, связаны с безопасностью самой libarchive. Во-первых, код этой библиотеки тестируется с использованием фаззинга. К сожалению, покрытие кода автоматизированным тестами недостаточное: еще недавно так тестировалось всего 14% кода, и лишь недавно покрытие было расширено и теперь включает 63% кодовой базы. Наконец, отмечается и задержка, с которой обнаруженные проблемы исправляются. Упомянутые выше уязвимости, обнаруженные в Microsoft в январе 2024 года, были закрыты в libarchive соответственно в апреле и мае того же года, с задержкой в несколько месяцев. Это потенциально опасная ситуация: кто-то мог проанализировать патч для Windows и на основе этих данных создать эксплойт для незакрытой проблемы в популярном проекте с открытым исходным кодом.

Такие уязвимости исследователи в шутку назвали «уязвимостями полудня», так как они представляют собой нечто среднее между проблемами «нулевого» и «первого дня». Авторы статьи призывают к более эффективному взаимодействию по обмену информацией об уязвимостях. Большую часть ответственности они возлагают на Microsoft: это с ее стороны работают высокооплачиваемые инженеры. Со стороны libarchive это вполне могут быть волонтеры, работа которых не оплачивается вовсе.

Что еще произошло

Большая новость прошлой недели практически лишена каких-либо технических деталей. Патч для iOS и iPadOS до версии 18.3.1 закрывает активно эксплуатируемую уязвимость, позволяющую взломать мобильное устройство Apple через порт USB. За предотвращение бесконтрольного доступа к данным пользователя «по кабелю» отвечает функция USB Restricted Mode. Она требует разблокировать телефон, чтобы разрешить передачу данных. Судя по всему, уязвимость с идентификатором CVE-2025-24200 позволяет обходить это ограничение. На момент обнаружения она «могла эксплуатироваться в крайне сложной атаке в отношении отдельных пользователей». Было бы крайне интересно узнать, как именно смогли обойти достаточно серьезную систему защиты данных, но абзац выше — это все, что известно о проблеме на момент подготовки дайджеста.

Крупные наборы патчей выпустили на прошлой неделе производители железа: компании AMD, Intel и NVIDIA. Ежемесячный набор патчей также выпустила и компания Microsoft: в нем закрыто четыре уязвимости нулевого дня.

Google закрыла две уязвимости, которые могли использоваться для раскрытия адресов электронной почты, связанных с произвольной учеткой на видеохостинге Youtube.
Libarchive windows
Alt text
Обращаем внимание, что все материалы в этом блоге представляют личное мнение их авторов. Редакция SecurityLab.ru не несет ответственности за точность, полноту и достоверность опубликованных данных. Вся информация предоставлена «как есть» и может не соответствовать официальной позиции компании.
Бэкап знаний создан успешно!

Храним важное в надежном месте

Синхронизируйтесь — подпишитесь