Изучение 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
👀 Смотрите также

Beacon: Открытая телеметрия конечных точек для локальных ИИ-агентов
Beacon захватывает активность локальных AI-агентов (Claude Code, Codex CLI, Cursor и др.) и нормализует ее в события конечных точек для инспекции или пересылки в SIEM через Wazuh, Elastic, Splunk HEC.

Qhatu: Платформа превращает репозитории GitHub в микросервисы SaaS с оплатой за использование с помощью Claude
Qhatu — это платформа, которая берёт репозиторий GitHub и разворачивает его как микро-SaaS с оплатой за использование, сгенерированным фронтендом и интегрированной обработкой платежей. Система использует API Anthropic для анализа кода, генерации Dockerfiles и создания интерфейсов витрин.

Fewshell: Самостоятельно размещенный SSH-копайлот, отказывающийся выполнять команды без одобрения человека
Fewshell — это мобильный+десктопный SSH-копайлот, требующий обязательного одобрения человека для каждой команды — нет настройки для автоматического одобрения. Создан бывшим инженером Amazon AI, занимающимся исследованиями в области безопасности ИИ.

Инструментарий для путешествий: навыки ИИ и серверы MCP для поиска баллов и миль
Репозиторий на GitHub предоставляет 7 навыков в формате markdown и 6 MCP-серверов, которые обучают Claude Code и OpenCode искать авиабилеты за мили в более чем 25 программах лояльности, сравнивать цены за наличные, получать информацию о балансах бонусных счетов, а также находить отели и паромы. Для настройки требуется клонировать репозиторий и запустить setup.sh.