Изучение sandbox-exec в macOS для безопасного выполнения приложений

sandbox-exec — это утилита командной строки, встроенная в macOS, предназначенная для выполнения приложений в песочнице. Этот инструмент помогает создать безопасное, ограниченное пространство, где приложения могут работать с ограниченным доступом к системным ресурсам, минимизируя риски, связанные с вредоносным кодом или непреднамеренным поведением.
Ключевые детали
Песочница приложений с использованием sandbox-exec направлена на защиту от вредоносного кода, ограничение ущерба от скомпрометированных приложений и повышение конфиденциальности и контроля над ресурсами. Чтобы использовать sandbox-exec, вам нужен профиль песочницы, который является конфигурационным файлом, определяющим правила для безопасной среды. Основной синтаксис команды:
sandbox-exec -f profile.sb command_to_runЗдесь profile.sb определяет правила, а command_to_run — это приложение, которое будет выполняться в этих ограничениях.
Профили песочницы пишутся с использованием синтаксиса, похожего на Scheme, и включают в себя объявления версий, политики по умолчанию и конкретные правила. Существует два основных подхода к настройке этих профилей:
- Запрет по умолчанию: Изначально ограничивает все операции и разрешает только необходимые. Пример:
(version 1) (deny default) (allow file-read-data (regex "^/usr/lib")) (allow process-exec (literal "/usr/bin/python3"))- Разрешение по умолчанию: Разрешает все, кроме конкретных операций. Пример:
(version 1) (allow default) (deny network*) (deny file-write* (regex "^/Users"))Для практического использования вы можете настроить сеанс терминала песочницы без доступа к сети:
# terminal-sandbox.sb (version 1) (allow default) (deny network*) (deny file-read-data (regex "/Users/[^/]+/(Documents|Pictures|Desktop)")Запустите его с помощью:
sandbox-exec -f terminal-sandbox.sb zshКроме того, macOS предоставляет готовые профили в /System/Library/Sandbox/Profiles для распространенных сценариев ограничений, таких как профиль no-network.
Для кого это
Этот инструмент идеально подходит для разработчиков и специалистов по безопасности, которым необходимо тестировать приложения в контролируемой среде или вводить строгие политики безопасности.
📖 Читать полный источник: HN LLM Tools
👀 Смотрите также

OpenMind добавляет визуальный интерфейс ментальных карт к установкам OpenClaw.
OpenMind — это инструмент с открытым исходным кодом, который преобразует установки OpenClaw в интерактивные, редактируемые в реальном времени ментальные карты с визуализацией памяти, горячей заменой логики и полнотекстовым поиском по всем узлам.

Сообщение другим сессиям Claude Code: межсессионный обмен сообщениями
Claude Code v2.1.224+ позволяет Клоду отправлять сообщения между вашими сессиями, чтобы координировать параллельную работу, делиться находками и предупреждать о критических изменениях без копирования и вставки.

Ветка YantrikClaw добавляет когнитивную память, режим компаньона и инструменты с учётом уровней в ZeroClaw.
YantrikClaw — это форк ZeroClaw, который добавляет три основные функции: когнитивную память с YantrikDB для постоянного семантического запоминания, режим компаньона с отслеживанием связи и проактивным поведением, а также выбор инструментов с учётом уровня, адаптирующийся к размеру модели — от Raspberry Pi до крупных кластеров.

Инструмент командной строки Relay сохраняет контекст сессии Claude при превышении лимита запросов.
Relay — это CLI-инструмент на Rust, который читает .jsonl-транскрипты сессий Claude с диска и создаёт полные снимки вашей сессии, включая диалог, вызовы инструментов, задачи, состояние git и ошибки. Он генерирует контекстные подсказки для возобновления сессий после сброса лимитов запросов.