Исследователи Token Security выстроили цепочку из пяти известных антипаттернов и превратили бесплатный аккаунт Zapier в доступ на запись к публичным и внутренним NPM пакетам, начав с побега из песочницы Lambda и закон... Zapier отработал отчет за четыре дня, отозвал скомпрометированный токен и подтвердил полное устр...

Create a landscape editorial hero image for this Studio Global article: What was the "Zapocalypse" exploit chain in Zapier, how did each of its five stages work from sandbox escape to NPM publish access, what vul. Article summary: Here is a comprehensive breakdown of the "Zapocalypse" exploit chain, based on the disclosure by Token Security researchers and the reporting by Help Net Security [5].. Topic tags: general, documentation, general web. Reference image context from search candidates: Reference image 1: visual subject "# Welcome to IT-Branschen – The Channel for IT News, Cybersecurity and Digital Trends. ## For Companies, Suppliers and Decision Makers in the IT Industry. ### Digital strategy and" source context "Zapier's NPM account hacked, 425 packages infected" Reference image 2: visual subject "A newly disclosed exploit chain dubbed Zapocalypse shows how a low-privilege code-ex
В мае 2026 года исследователи Token Security раскрыли пятиступенчатую цепочку атак, получившую название «Zapocalypse». Они показали, как можно объединить несколько известных антипаттернов и превратить бесплатный аккаунт Zapier в доступ на запись к публичным SDK-пакетам разработчика и внутренним пакетам компании. Каждое звено цепочки по отдельности было хорошо изученной проблемой, которую отдельная команда могла бы счесть допустимой. Сама уязвимость заключалась не в каком-то одном компоненте системы, а в их композиции, охватившей пять разных команд, которые никогда не отслеживали вектор атаки совместно .
Цепочка началась с функции «Code by Zapier» (редактор кода), в которой пользовательский код на Python и JavaScript выполняется внутри контейнеров AWS Lambda. Обработчик Lambda пытался очистить переменные окружения от учётных данных AWS, удаляя их из os.environ с помощью команды Python del os.environ[k]exec(). Однако такой подход лишь вызывает библиотечную функцию unsetenv и не затирает байты, оставшиеся в куче процесса .
Исследователи воспользовались этим, прочитав /proc/self/mem и применив четыре регулярных выражения к доступным для чтения областям памяти. Так им удалось восстановить действующие STS-токены сессии AWS для роли IAM, связанной с функцией Lambda, полностью обойдя песочницу .
Восстановленная роль AWS называлась allow_nothing_role (роль «ничего не разрешено»), что вводило в заблуждение. На самом деле она обладала четырьмя разрешениями для сервиса Elastic Container Registry (ECR): ecr:DescribeRepositories, ecr:ListImages, ecr:BatchGetImage и ecr:GetDownloadUrlForLayer. Этих четырёх прав оказалось достаточно, чтобы выгружать образы контейнеров напрямую через API AWS, вообще не запрашивая токен аутентификации Docker-реестра. С их помощью исследователи перечислили 1111 продуктовых репозиториев и выгрузили образы контейнеров, используя API для получения слоёв .
Внутри одного из выгруженных образов контейнера исследователи обнаружили токен для публикации в NPM-реестре, который утёк в историю конфигурации образа. Токен был передан в процесс сборки через инструкцию Dockerfile ARG, которая навсегда сериализуется в неизменяемое поле history[] образа. Это означало, что токен мог извлечь любой, кто получал доступ к образу .
Найденный NPM-токен обладал тремя критическими свойствами: action: writename: nullbypass_2fa: truezapier-platform-core, zapier-platform-cli и zapier-design-system. Флаг bypass_2fa: true.
Самым критическим пакетом в цепочке оказался zapier-design-system — он загружается в каждой аутентифицированной сессии на сайте zapier.com. Исследователи подтвердили путь его загрузки через инструменты разработчика браузера и остановились на этом этапе — вредоносный пакет они не публиковали .
Если бы злоумышленник опубликовал отравленную версию, при следующем обновлении на сайте zapier.com выполнился бы контролируемый атакующим JavaScript внутри аутентифицированной сессии. С такой позиции атакующий мог бы создавать Zaps, таблицы и MCP-серверы, а также управлять существующими интеграциями через платформу от лица аутентифицированных пользователей. OAuth-токены и API-ключи подключённых сервисов остаются на серверной стороне и не были бы напрямую доступны в браузере, однако операционный ущерб мог бы оказаться крайне серьёзным .
Token Security направила отчёт 12 февраля 2026 года. Уже через четыре дня специалисты Zapier провели первичную оценку, отозвали скомпрометированный NPM-токен и ужесточили роль AWS. К 5 марта 2026 года устранение проблемы было подтверждено как полностью завершённое. Компания сообщила, что не обнаружила доказательств эксплуатации уязвимости в реальной среде .
Исследователи получили максимальное вознаграждение по программе в размере $3000, а Zapier обязалась пересмотреть «потолок» выплат при следующем аудите программы .
Важно отметить: это разглашение исследовательских данных — не то же самое, что реальная атака на цепочку поставок через NPM-аккаунт Zapier, произошедшая 24 ноября 2025 года. Тогда червь Shai Hulud 2.0 скомпрометировал учётную запись и заразил 425 пакетов .
Яир Балилти, руководитель группы исследований безопасности Token Security, сформулировал ключевой вывод:
«Каждое звено цепочки было известным паттерном. Сама уязвимость заключалась в их композиции, а композиция — это ровно то, что проваливается между командами. Песочница Lambda, ECR и IAM, токен GitLab CI, публикация в NPM, браузер — каждым из этих компонентов владеет своя группа, и каждая из них может посмотреть на свой кусок и резонно заключить, что всё в порядке. Риск проявляется лишь тогда, когда отслеживаешь путь сквозь все эти компоненты»
.
Вывод: ни одна отдельная команда не «владела» уязвимостью. Команда песочницы Lambda не видела проблемы в возможности чтения памяти — предполагалось, что токен в любом случае находится вне её периметра. Команда IAM видела роль с правами только на чтение ECR. CI/CD-команда передала NPM-токен как сборочный аргумент. Команда NPM управляла токеном с правами на запись. Команда браузерного интерфейса загружала дизайн-системный пакет. Каждое решение по отдельности было рациональным — но цепочка, выстроенная через все пять систем, оказалась катастрофической .
Это наглядно показывает: проверки идентификации и доступа должны отслеживать векторы атак через границы систем, а не аудировать разрешения каждого компонента изолированно. Организациям необходимы кросс-командные проверки безопасности, которые изучают, каким образом безобидные на первый взгляд конфигурации объединяются в опасные цепочки атак при взаимодействии систем .
Studio Global AI
Use this topic as a starting point for a fresh source-backed answer, then compare citations before you share it.
Исследователи Token Security выстроили цепочку из пяти известных антипаттернов и превратили бесплатный аккаунт Zapier в доступ на запись к публичным и внутренним NPM пакетам, начав с побега из песочницы Lambda и закон...
Исследователи Token Security выстроили цепочку из пяти известных антипаттернов и превратили бесплатный аккаунт Zapier в доступ на запись к публичным и внутренним NPM пакетам, начав с побега из песочницы Lambda и закон... Zapier отработал отчет за четыре дня, отозвал скомпрометированный токен и подтвердил полное устранение проблемы к 5 марта 2026 года; следов эксплуатации в реальной среде не обнаружено.
Главный урок: уязвимость не принадлежала ни одной команде — специалисты по Lambda, IAM, CI, NPM и браузерным интерфейсам приняли по отдельности рациональные решения, объединение которых в цепочку оказалось катастрофич...