Компания Perplexity объявила о запуске Bumblebee — нового инструмента с открытым исходным кодом, предназначенного для обеспечения безопасности разработчиков. Этот сканер не требует использования искусственного интеллекта и не предполагает подписки. Основная его задача — выявление потенциально опасных пакетов, расширений и конфигураций на рабочих станциях программистов, что особенно актуально на фоне участившихся атак на цепочки поставок программного обеспечения.
В последние годы сфера разработки столкнулась с множеством успешных кибератак на программные компоненты. Среди известных инцидентов – компрометация пакетов Axios npm, атака на PyPI LiteLLM AI и инцидент с npm-пакетом CanisterSprawl. В условиях, когда даже базовые строительные блоки программного обеспечения могут быть ненадежны, поиск эффективных решений становится критически важным.
Содержание
Назначение и возможности Bumblebee
По словам представителей Perplexity, Bumblebee представляет собой «сканер в режиме только чтения, используемый для проверки машин разработчиков на предмет рискованных пакетов, расширений и конфигураций ИИ-инструментов во время инцидентов в цепочке поставок». Компания подчеркнула, что этот инструмент является одним из внутренних средств, используемых для защиты систем разработчиков, стоящих за такими проектами, как Perplexity, Comet и Computer.
Основной вопрос, на который призван ответить Bumblebee после появления нового уведомления об угрозе в цепочке поставок: «Установлен ли этот компонент у кого-либо из наших программистов?». Инструмент работает на операционных системах macOS и Linux, являясь проектом с открытым исходным кодом, написанным на языке Go. Его результаты можно интегрировать в уже используемые системы безопасности.
В отличие от инструментов, ориентированных на анализ самого кода или поведения во время выполнения, Bumblebee сосредоточен на четырех конкретных областях проверки. Perplexity отмечает, что существующие опенсорсные решения обычно охватывают одну или две из этих областей, тогда как Bumblebee способен одновременно работать со всеми четырьмя:
- Менеджеры языковых пакетов: npm, pnpm, Yarn, Bun, PyPI, Go modules, RubyGems и Composer.
- Конфигурации ИИ-агентов: протокол контекста модели (Model Context Protocol, MCP).
- Расширения редакторов: семейство VS Code (Visual Studio Code, Cursor, Windsurf, VSCodium).
- Расширения браузеров: семейство Chromium (Chrome, Comet, Edge, Brave, Arc) и Firefox.
Таким образом, инструмент ориентирован на разработчиков, работающих с JavaScript/TypeScript, Python, Go, Ruby и PHP, а также на тех, кто экспериментирует с конфигурациями ИИ-протокола MCP и активно использует редакторы в стиле VS Code и браузеры на базе Chromium.
Интеграция в рабочий процесс
Bumblebee является частью более крупного внутреннего рабочего процесса, который в Perplexity описывают следующим образом:
- Идентификация сигнала угрозы через публичные раскрытия, сторонние аналитические источники или внутренние исследования.
- Проект Perplexity Computer создает черновик обновления каталога, вносит сигнал в структурированную запись (экосистема, имя, версия), а затем открывает запрос на слияние (pull request) в GitHub со ссылками на источник.
- Обнаружение отправляется на человеческую проверку, после чего запрос на слияние утверждается.
- Bumblebee запускается на конечных точках с обновленным каталогом.
- Результаты передаются команде безопасности.
Пользователи не обязаны использовать JSON-каталог Perplexity; Bumblebee может работать с собственными каталогами и процессами проверки. Каждое обнаружение «отслеживаемо, показывая, какая запись каталога вызвала сообщение, когда оно было добавлено, и любые доказательства», — подчеркивают в Perplexity.
Открытый каталог Bumblebee доступен на GitHub в каталоге `threat_intel/`. В нем содержатся регулярно обновляемые каталоги уязвимостей, составленные на основе публичных отчетов об угрозах, связанных с недавними кампаниями в цепочке поставок. Каждый файл в этом каталоге представляет собой список в стандартном формате JSON. Файл README содержит информацию о текущем списке каталогов и рекомендации по проверке. Для использования каталогов необходимо клонировать репозиторий и передать этот каталог сканеру.
Альтернативно можно создать собственный каталог Bumblebee в виде простого JSON-файла, перечисляющего точные совпадения для интересующих потенциально опасных компонентов, таких как экосистема, имя пакета и затронутые версии. Bumblebee затем сравнивает инвентаризацию локальной машины с этим каталогом и отмечает только точные совпадения (экосистема, имя, версия), поэтому каталог намеренно узок и детерминирован.
Сканер поддерживает три профиля, которые четко соответствуют представлениям разработчиков и команд безопасности о масштабе проверки:
- Базовый профиль: плановое сканирование стандартных расположений на ноутбуке. Команды планируют сканирование через свои собственные системы.
- Проектный профиль: целенаправленное сканирование определенных репозиториев или рабочих областей.
- Глубокий профиль: комплексная проверка в ответ на активные инциденты.
Perplexity позиционирует этот инструмент как решение для уровня «среды разработчика». В то время как ведомости материалов программного обеспечения (SBOM) и сканеры уязвимостей работают с репозиториями и артефактами сборки, а продукты для инвентаризации конечных точек охватывают установленные приложения, Bumblebee работает непосредственно на ноутбуке разработчика. Его ключевая функция: «Он сообщает, установлены ли на данной машине конкретный пакет, версия, расширение или конфигурация MCP при появлении предупреждения в цепочке поставок».
Безопасность благодаря режиму «только чтение»
Компания особо подчеркивает концепцию «только чтение» как ключевое свойство безопасности, а не просто деталь реализации. В Perplexity заявляют: «Bumblebee работает в режиме только чтения. Он напрямую считывает файлы метаданных и никогда не позволяет потенциально скомпрометированным инструментам запускаться, что предотвращает превращение сканирования в дополнительный риск». Также было добавлено, что «режим только чтения помогает избежать проблем с выполнением кода во время установки».
В публикации прямо упоминаются атаки типа ‘postinstall’ в npm: «Пакеты npm могут содержать скрипты postinstall, которые запускаются автоматически, как только npm install касается их. Именно так распространялись самые последние черви цепочки поставок». Предупреждение для сканеров, работающих на стороне разработчика, прямолинейно: «Сканер, который вызывает npm для проверки уязвимостей, уже активировал искомую атаку».
Гарантии безопасности Bumblebee проистекают из того, что он отказывается делать, по словам Perplexity:
- Он никогда не запускает скрипты установки или хуки жизненного цикла.
- Он никогда не запускает менеджер пакетов.
- Bumblebee никогда не читает исходные файлы приложений; он считывает метаданные, такие как файлы блокировки (lockfiles), манифесты и метаданные установленных пакетов.
- Bumblebee не является программой обнаружения и реагирования на конечных точках (EDR).
Таким образом, Bumblebee не пытается заменить инструменты обнаружения конечных точек или сканеры времени сборки. Это скорее целевой инвентаризационный зонд, сфокусированный на конкретных метаданных, которые позволяют определить, использует ли конкретный компьютер разработчика уязвимый код.
Отличия от Chainguard
Bumblebee отличается от подхода Chainguard, где основное внимание уделяется обеспечению безопасности цепочки поставок программного обеспечения путем укрепления контейнеров и конвейеров, а не рабочих станций разработчиков. Рекомендации Chainguard сосредоточены на таких концепциях, как минимальные, усиленные базовые образы, автоматические пересборки при раскрытии уязвимостей и политика, блокирующая отправку несоответствующих артефактов.
Bumblebee находится на более раннем этапе жизненного цикла и ближе к месту фактической работы разработчиков. В Perplexity отметили, что «безопасность начинается с локальной среды разработчика» и что «целостность продуктов должна обеспечиваться на более ранних этапах цепочки поставок, чем производство». В то время как средства контроля Chainguard окружают контейнеры и выходные данные сборки, Perplexity заявляет, что Bumblebee «работает на ноутбуке разработчика» и используется «для проверки машин разработчиков на предмет рискованных пакетов, расширений и конфигураций ИИ-инструментов во время инцидентов в цепочке поставок».
Для разработчиков такой подход означает разные точки соприкосновения. Chainguard проявляется в виде базовых образов, политик и требований к ведомостям материалов программного обеспечения (SBOM) в конвейерах. Bumblebee — это программа, которую команда безопасности запускает на ноутбуке для определения установленных пакетов, расширений и конфигураций MCP, а также для выявления уязвимых компонентов.
Оба подхода имеют свои преимущества. Отмечается, что подход Chainguard был расширен для работы с ИИ-инструментами и кодом, однако Bumblebee также демонстрирует значительную полезность. Дополнительным преимуществом является то, что инструмент бесплатен и распространяется с открытым исходным кодом под лицензией Apache 2.0.
Womenis.ru Для современной Женщины с большой буквы