id: system_settings_find_my_disable
title: Disable Find My Service
discussion: |
  The Find My service _MUST_ be disabled.

  A Mobile Device Management (MDM) solution _MUST_ be used to carry out remote locking and wiping instead of Apple's Find My service.

  Apple's Find My service uses a personal AppleID for authentication. Organizations should rely on MDM solutions, which have much more secure authentication requirements, to perform remote lock and remote wipe.
check: |
  /usr/bin/osascript -l JavaScript << EOS
  function run() {
    let pref1 = ObjC.unwrap($.NSUserDefaults.alloc.initWithSuiteName('com.apple.applicationaccess')\
  .objectForKey('allowFindMyDevice'))
    let pref2 = ObjC.unwrap($.NSUserDefaults.alloc.initWithSuiteName('com.apple.applicationaccess')\
  .objectForKey('allowFindMyFriends'))
    let pref3 = ObjC.unwrap($.NSUserDefaults.alloc.initWithSuiteName('com.apple.icloud.managed')\
  .objectForKey('DisableFMMiCloudSetting'))
    if ( pref1 == false && pref2 == false && pref3 == true ) {
      return("true")
    } else {
      return("false")
    }
  }
  EOS
result:
  string: 'true'
fix: |
  This is implemented by a Configuration Profile.
references:
  cce:
    - CCE-94361-3
  cci:
    - CCI-000381
  800-53r5:
    - AC-20
    - CM-7
    - CM-7(1)
  800-53r4:
    - CM-7
    - CM-7(1)
    - AC-20
  srg:
    - SRG-OS-000095-GPOS-00049
  disa_stig:
    - APPL-15-002180
  800-171r3:
    - 03.01.20
    - 03.04.06
  cis:
    benchmark:
      - N/A
    controls v8:
      - 4.1
      - 4.8
      - 15.3
  cmmc:
    - AC.L1-3.1.20
    - CM.L2-3.4.6
    - CM.L2-3.4.7
  bio:
    - 7.10.02
macOS:
  - '15.0'
tags:
  - 800-53r5_low
  - 800-53r5_moderate
  - 800-53r5_high
  - 800-53r4_low
  - 800-53r4_moderate
  - 800-53r4_high
  - 800-171
  - cisv8
  - cnssi-1253_low
  - cnssi-1253_high
  - cmmc_lvl2
  - cmmc_lvl1
  - stig
  - cnssi-1253_moderate
  - nlmapgov_base
  - nlmapgov_plus
severity: medium
mobileconfig: true
mobileconfig_info:
  com.apple.applicationaccess:
    allowFindMyDevice: false
    allowFindMyFriends: false
  com.apple.icloud.managed:
    DisableFMMiCloudSetting: true
