seatbelt-sandboxer
為 macOS 應用程式產生最小化 Seatbelt 沙盒設定,用於隔離進程與安全性分析。
簡介
seatbelt-sandboxer 是一項專為需要於 macOS 實施縱深防禦的開發者與安全工程師所設計的安全性工具。它能簡化基於許可清單 (allowlist) 的 Seatbelt 沙盒設定檔製作流程,進而有效限制應用程式權限。透過實踐最小權限原則,使用者能夠隔離進程,防止未經授權的檔案存取、網路攻擊以及系統級的篡改。本工具協助將複雜的應用程式需求映射至特定的 Seatbelt 操作,確保產生的設定檔在維持應用程式核心功能的前提下達到最高限制等級。
-
將應用程式資源需求映射至特定的 Seatbelt 類別,例如檔案讀寫、網路、Mach IPC、Sysctl、IOKit 及系統呼叫。
-
實施階層式分析方法,從預設拒絕 (deny-default) 基礎開始,根據驗證需求逐步授權。
-
提供區分廣泛權限(如 file-read-metadata)與具體資料存取(如 file-read-data)的語法指導。
-
自動化網路過濾器設定,實現對本地服務、DNS 解析與特定外連流量的精細控制。
-
針對具備多子指令的應用程式,提供拆分設定檔與建立自動切換沙盒配置的輔助腳本方案。
-
當您需要在 macOS 上對敏感工具、建置系統或未受信任的二進位執行檔進行沙盒化時使用此技能。
-
非常適合用於加固 CI/CD 管線或供應鏈安全性需求較高的本地開發環境。
-
使用者需提供應用程式的資源需求與環境變數(如 WORKING_DIR、HOME 路徑),以取得精確的設定檔。
-
請注意,此工具僅適用於 macOS Seatbelt,不適用於 Linux(應使用 AppArmor 或 seccomp)或 Windows 環境。
-
對於需要廣泛系統存取的應用程式或非關鍵的一次性腳本,應避免使用,以免增加不必要的管理開銷。
倉庫統計
- Star 數
- 4,904
- Fork 數
- 428
- Open Issue 數
- 21
- 主要語言
- Python
- 預設分支
- main
- 同步狀態
- 閒置
- 最近同步時間
- 2026年4月30日 上午09:01