id: system_settings_guest_account_disable
title: Disable the Guest Account
discussion: |
  Guest access _MUST_ be disabled.

  Turning off guest access prevents anonymous users from accessing files.
check: |
  /usr/bin/osascript -l JavaScript << EOS
  function run() {
    let pref1 = ObjC.unwrap($.NSUserDefaults.alloc.initWithSuiteName('com.apple.MCX')\
  .objectForKey('DisableGuestAccount'))
    let pref2 = ObjC.unwrap($.NSUserDefaults.alloc.initWithSuiteName('com.apple.MCX')\
  .objectForKey('EnableGuestAccount'))
    if ( pref1 == true && pref2 == false ) {
      return("true")
    } else {
      return("false")
    }
  }
  EOS
result:
  string: 'true'
fix: |
  This is implemented by a Configuration Profile.
references:
  cce:
    - CCE-95374-5
  cci:
    - CCI-001813
  800-53r5:
    - AC-2
    - AC-2(9)
  800-53r4:
    - AC-2
    - AC-2(9)
  srg:
    - SRG-OS-000364-GPOS-00151
    - SRG-OS-000480-GPOS-00228
  disa_stig:
    - APPL-26-002063
  800-171r3:
    - 03.01.01
  cis:
    benchmark:
      - 2.13.1 (level 1)
    controls v8:
      - 5.2
      - 6.2
      - 6.8
  cmmc:
    - AC.L1-3.1.2
  bio:
    - 5.16.02
macOS:
  - '26.0'
tags:
  - 800-53r5_low
  - 800-53r5_moderate
  - 800-53r5_high
  - 800-53r4_low
  - 800-53r4_moderate
  - 800-53r4_high
  - 800-171
  - cis_lvl1
  - cis_lvl2
  - 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.MCX:
    DisableGuestAccount: true
    EnableGuestAccount: false
