;;; Copyright (c) 2021 Apple Inc. All Rights reserved. (version 1) (deny default) (deny file-map-executable process-info* nvram*) (deny dynamic-code-generation) (deny mach-priv-host-port) (import "system.sb") (import "com.apple.corefoundation.sb") (corefoundation) ;;; Homedir-relative path filters (define (home-regex home-relative-regex) (regex (string-append "^" (regex-quote (param "HOME")) home-relative-regex))) (define (home-subpath home-relative-subpath) (subpath (string-append (param "HOME") home-relative-subpath))) (define (home-prefix home-relative-prefix) (prefix (string-append (param "HOME") home-relative-prefix))) (define (home-literal home-relative-literal) (literal (string-append (param "HOME") home-relative-literal))) (allow process-info* (target self)) (allow process-info-dirtycontrol (target self)) ;; For resolving symlinks, realpath(3), and equivalents. (allow file-read-metadata) ;; For validating the entitlements of clients. (allow process-info-codesignature) ;; Your preference domain (allow user-preference-read user-preference-write (preference-domain "com.apple.intelligenceplatform")) (allow managed-preference-read (preference-domain "kCFPreferencesAnyApplication")) (allow user-preference-read (preference-domain "com.apple.GEO") (preference-domain "com.apple.mobilecal") (preference-domain "com.apple.AppSupport") (preference-domain "com.apple.mobileslideshow") (preference-domain "com.apple.photos.shareddefaults") (preference-domain "kCFPreferencesAnyApplication") (preference-domain "com.apple.iCal") (preference-domain "com.apple.suggestions") ) ;; Read/write access to a temporary directory. (allow file-read* file-write* (subpath (param "TMPDIR")) (subpath (param "DARWIN_CACHE_DIR")) (mount-relative-literal "/.TemporaryItems") (mount-relative-regex #"^/\.TemporaryItems/folders.[0-9]+(/|$)")) ;; Read/write cache access (let ((cache-path-filter (home-subpath "/Library/Caches/com.apple.knowledgeconstructiond"))) (allow file-read* file-write* cache-path-filter) (allow file-issue-extension (require-all (extension-class "com.apple.app-sandbox.read" "com.apple.app-sandbox.read-write") cache-path-filter))) (allow file-read* file-write* (home-subpath "/Library/IntelligencePlatform") (home-subpath "/Library/Caches/com.apple.proactive.eventtracker") (home-subpath "/Library/Caches/com.apple.HomeKit/com.apple.knowledgeconstructiond") ) (allow file-read* (home-subpath "/Library/Caches/GeoServices/") (home-subpath "/Pictures/Photos Library.photoslibrary/private/photoanalysisd/GraphService/PhotosGraph/photosgraph.kgdb") (home-subpath "/Pictures/Photos Library.photoslibrary/private/photoanalysisd/GraphService/PhotosGraph/photosgraph.kgdb-wal") (home-subpath "/Pictures/Photos Library.photoslibrary/private/photoanalysisd/GraphService/PhotosGraph/photosgraph.kgdb-shm") ) (allow mach-lookup (global-name "com.apple.coreduetd.people")) (allow file-read* (literal "/private/var/db/CoreDuet/People/interactionC.db") (literal "/private/var/db/CoreDuet/People/interactionC.db-shm") (literal "/private/var/db/CoreDuet/People/interactionC.db-wal")) (allow file-write* (literal "/private/var/db/CoreDuet/People/interactionC.db-shm")) (allow iokit-open (iokit-user-client-class "AppleKeyStoreUserClient") (iokit-user-client-class "IOSurfaceRootUserClient") (iokit-user-client-class "H11ANEInDirectPathClient") ) (allow mach-lookup (global-name "com.apple.SystemConfiguration.configd") (global-name "com.apple.geod") (global-name "com.apple.lsd.mapdb") (global-name "com.apple.lsd.modifydb") (global-name "com.apple.routined.registration") (global-name "com.apple.proactive.PersonalizationPortrait.Contact") (global-name "com.apple.proactive.PersonalizationPortrait.Location.readOnly") (global-name "com.apple.proactive.PersonalizationPortrait.NamedEntity.readOnly") (global-name "com.apple.proactive.PersonalizationPortrait.Topic.readOnly") (global-name "com.apple.calaccessd") (global-name "com.apple.photos.service") (global-name "com.apple.privacyaccountingd") (global-name "com.apple.suggestd.contacts") (global-name "com.apple.suggestd.events") (global-name "com.apple.tccd") (global-name "com.apple.tccd.system") (global-name "com.apple.accountsd.accountmanager") (global-name "com.apple.DiskArbitration.diskarbitrationd") (global-name "com.apple.remindd") (global-name "com.apple.CalendarAgent") (global-name "com.apple.coreduetd.knowledge") (global-name "com.apple.system.opendirectoryd.api") (global-name "com.apple.mediaanalysisd.analysis") (global-name "com.apple.familycircle.agent") (global-name "com.apple.intelligenceplatform.Internal") (global-name "com.apple.intelligenceplatform.Coordination") (global-name "com.apple.intelligenceplatform.EntityResolution") (global-name "com.apple.homed.xpc") (global-name "com.apple.locationd.registration") (global-name "com.apple.biome.access.user") (global-name "com.apple.duetactivityscheduler") (global-name "com.apple.spotlight.SearchAgent") (global-name "com.apple.spotlight.IndexAgent") (global-name "com.apple.modelmanager") (global-name "com.apple.biome.compute.source.user") ) ;; Contacts (import "contacts.sb") (contacts-client (param "HOME") (param "TMPDIR")) ;; Allow read-only access to $HOME/Library/Trial (allow file-read* (home-subpath "/Library/Trial")) ;; Allow posting distributed notifications (allow distributed-notification-post) ;; Consume sandbox extensions (with-filter (extension "com.apple.app-sandbox.read") (allow file-read*) (allow file-issue-extension (extension-class "com.apple.app-sandbox.read"))) (with-filter (extension "com.apple.app-sandbox.read-write") (allow file-read* file-write*) (allow file-issue-extension (extension-class "com.apple.app-sandbox.read" "com.apple.app-sandbox.read-write"))) ;; MobileAsset / MobileAutoAsset support (allow mach-lookup (global-name "com.apple.modelcatalog.catalog") (global-name "com.apple.siri.uaf.service") (global-name "com.apple.mobileasset.autoasset") (global-name "com.apple.mobileassetd.v2") ) (allow file-read* (subpath "/private/var/db/com.apple.modelcatalog/sideload/") (subpath "/System/Library/AssetsV2/locks/com.apple.UnifiedAssetFramework/") (subpath "/System/Library/AssetsV2/com_apple_MobileAsset_UAF_FM_GenerativeModels/purpose_auto/") (subpath "/System/Library/AssetsV2/com_apple_MobileAsset_UAF_FM_Overrides/purpose_auto/") (subpath "/private/var/MobileAsset/PreinstalledAssetsV2/InstallWithOs/com_apple_MobileAsset_UAF_FM_GenerativeModels/") (subpath "/System/Library/PreinstalledAssetsV2/RequiredByOs/com_apple_MobileAsset_UAF_FM_GenerativeModels/") (subpath "/System/Library/PreinstalledAssetsV2/RequiredByOs/com_apple_MobileAsset_UAF_FM_Overrides/") ) (allow user-preference-read (preference-domain "com.apple.SoftwareUpdate") (preference-domain "com.apple.UnifiedAssetFramework") (preference-domain "com.apple.modelcatalog.ajax") ) ;; GenerativeModels (allow user-preference-read (preference-domain "com.apple.GenerativeFunctions.GenerativeFunctionsInstrumentation") (preference-domain "kCFPreferencesAnyApplication") )