VU#293714: Произвольная переза... Заметка

VU#293714: Произвольная перезапись файла в Develar app-builder (zipx.Unzip) через следование символическим ссылкам на macOS (APFS)

Обнаружена уязвимость в app-builder от Develar, инструменте командной строки для сборки и распространения пакетов приложений для macOS, Windows и Linux. Проблема возникает из-за сочетания коллизий нормализации Unicode и небезопасного поведения при следовании символическим ссылкам в процедуре извлечения zipx.Unzip. Это позволяет злоумышленнику перезаписывать произвольные файлы в системах macOS, использующих Apple File System (APFS), путем создания ZIP-архивов, сочетающих коллизии нормализации Unicode с вредоносными символическими ссылками. Уязвимость эксплуатируема во время извлечения ZIP-архивов без необходимости повышенных привилегий и может привести к потере целостности, отказу в обслуживании или потенциальному выполнению кода. App-builder от Develar широко используется как зависимость в экосистеме, затрагивая множество нижестоящих репозиториев, и несколько проектов уже снизили свою подверженность. Полное устранение требует исправления уязвимости у источника, и был разработан Pull Request на GitHub, чтобы предоставить нижестоящим клиентам эталонное исправление. Pull Request устраняет вариант уязвимости, связанный с отслеживанием символических ссылок, отклоняя любые символические ссылки, целевой путь которых выходит за пределы предполагаемой выходной директории, и добавляя O_NOFOLLOW при записи обычных файлов. Докладчик, Томас Иллюминати, помог многим нижестоящим поставщикам и разработчикам в устранении этой проблемы, а Electron-Userland быстро отреагировал и внедрил меры по защите своих нижестоящих пользователей. Уязвимость может быть использована путем сочетания коллизий нормализации Unicode с поведением при отслеживании символических ссылок, что позволяет злоумышленнику обойти проверки валидации путей и перенаправить записи за пределы предполагаемой директории извлечения. CERT/CC подготовил заметку об уязвимости, чтобы проинформировать пользователей о проблеме и предоставить рекомендации по смягчению последствий и устранению. В целом, уязвимость имеет серьезные последствия для безопасности систем macOS, использующих APFS, и пользователям рекомендуется предпринять шаги для снижения своей подверженности.