CIS Apple Safari 18 Benchmark

Secure configuration guidelines for Apple Safari 18 on macOS

v1.1.0 January 2026

Overview

▶

This CIS Benchmark provides prescriptive guidance for establishing a secure configuration posture for Apple Safari 18 on macOS. Recommendations cover privacy settings, JavaScript handling, autofill, extensions, HTTPS enforcement, developer tools, and data protection.

~60Recommendations
6Sections
2Profile Levels
SectionAreaFocus
1Privacy & SecurityITP, fraud protection, plugins
2AutoFill & SearchPassword/credit card autofill
3ExtensionsExtension management, permissions
4HTTPS & CertsHTTPS upgrade, trust settings
5DeveloperDev menu, automation, tabs
6Data ProtectionCookies, camera, history

Profile Definitions

▶
ProfileDescriptionIntended Use
L1Level 1 — StandardEssential security for all Apple Safari 18 deployments; minimal performance impact.
L2Level 2 — HardenedAdvanced hardening for PCI-DSS, HIPAA, or high-security environments.

1 — Privacy & Security

▶

1.1 Privacy Settings

▶
1.1.1 Ensure Fraudulent Website Warning Is Enabled (Automated)
L1 Auto
Description

This recommendation verifies that Fraudulent Website Warning Is Enabled on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
defaults read com.apple.Safari WarnAboutFraudulentWebsites
# Should return: 1

# MDM profile check:
profiles -C -o stdout | grep -A2 WarnAboutFraudulentWebsites
Remediation
defaults write com.apple.Safari WarnAboutFraudulentWebsites -bool true

# Via MDM configuration profile:
# PayloadType: com.apple.Safari
# Key: WarnAboutFraudulentWebsites
# Value: true
1.1.2 Ensure Do Not Track Header Is Sent (Automated)
L2 Auto
Description

This recommendation verifies that Do Not Track Header Is Sent on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
defaults read com.apple.Safari SendDoNotTrackHTTPHeader
# Should return: 1
Remediation
defaults write com.apple.Safari SendDoNotTrackHTTPHeader -bool true
1.1.3 Ensure Preload Top Hit Is Disabled (Automated)
L2 Auto
Description

This recommendation verifies that Preload Top Hit Is Disabled on the Apple Safari 18 web browser. Disabling or removing unnecessary components reduces the attack surface and limits potential vectors for exploitation.

Rationale

Running unnecessary components on the Apple Safari 18 web browser increases the attack surface and the risk of exploitation. Disabling or removing them follows the principle of least functionality and reduces exposure to known vulnerabilities.

Audit
defaults read com.apple.Safari PreloadTopHit
# Should return: 0 (disabled)
Remediation
defaults write com.apple.Safari PreloadTopHit -bool false
1.1.4 Ensure Full Website Address Is Displayed (Automated)
L1 Auto
Description

This recommendation verifies that Full Website Address Is Displayed on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
defaults read com.apple.Safari ShowFullURLInSmartSearchField
# Should return: 1
Remediation
defaults write com.apple.Safari ShowFullURLInSmartSearchField -bool true
1.1.5 Ensure Intelligent Tracking Prevention Is Enabled (Automated)
L1 Auto
Description

This recommendation verifies that Intelligent Tracking Prevention Is Enabled on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
defaults read com.apple.Safari WebKitPreferences.privateClickMeasurementEnabled
# Should return: 1 (Intelligent Tracking Prevention enabled)
Remediation
defaults write com.apple.Safari WebKitPreferences.privateClickMeasurementEnabled -bool true

# Safari > Settings > Privacy > Prevent cross-site tracking: Enable

1.2 JavaScript & Plugins

▶
1.2.1 Ensure Pop-Up Windows Are Blocked (Automated)
L1 Auto
Description

This setting ensures that Pop-Up Windows Are Blocked on the Apple Safari 18 web browser. Restricting this capability limits potential abuse and enforces the principle of least privilege across the environment.

Rationale

Unrestricted access to this capability could allow unauthorized users or processes to perform actions beyond their intended scope. Applying least-privilege principles to the Apple Safari 18 web browser is essential for defense in depth.

Audit
defaults read com.apple.Safari com.apple.Safari.ContentPageGroupIdentifier.WebKit2JavaScriptCanOpenWindowsAutomatically
# Should return: 0
Remediation
defaults write com.apple.Safari com.apple.Safari.ContentPageGroupIdentifier.WebKit2JavaScriptCanOpenWindowsAutomatically -bool false

# Safari > Settings > Websites > Pop-up Windows: Block and Notify
1.2.2 Ensure Plug-Ins Are Disabled (Automated)
L1 Auto
Description

This recommendation verifies that Plug-Ins Are Disabled on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
defaults read com.apple.Safari WebKitPreferences.plugInsEnabled 2>/dev/null
# Should return: 0
Remediation
defaults write com.apple.Safari WebKitPreferences.plugInsEnabled -bool false

# Safari > Settings > Websites > Plug-ins: disable all
1.2.3 Ensure Java Is Disabled (Automated)
L1 Auto
Description

This recommendation verifies that Java Is Disabled on the Apple Safari 18 web browser. Disabling or removing unnecessary components reduces the attack surface and limits potential vectors for exploitation.

Rationale

Running unnecessary components on the Apple Safari 18 web browser increases the attack surface and the risk of exploitation. Disabling or removing them follows the principle of least functionality and reduces exposure to known vulnerabilities.

Audit
defaults read com.apple.Safari WebKitJavaEnabled 2>/dev/null
# Should return: 0 (or domain not found — Java deprecated)
Remediation
defaults write com.apple.Safari WebKitJavaEnabled -bool false

2 — AutoFill & Search

▶

2.1 AutoFill Settings

▶
2.1.1 Ensure AutoFill Passwords Is Disabled (Automated)
L2 Auto
Description

This recommendation verifies that AutoFill Passwords Is Disabled on the Apple Safari 18 web browser. Disabling or removing unnecessary components reduces the attack surface and limits potential vectors for exploitation.

Rationale

Running unnecessary components on the Apple Safari 18 web browser increases the attack surface and the risk of exploitation. Disabling or removing them follows the principle of least functionality and reduces exposure to known vulnerabilities.

Audit
defaults read com.apple.Safari AutoFillPasswords
# Should return: 0
Remediation
defaults write com.apple.Safari AutoFillPasswords -bool false

# Safari > Settings > AutoFill > User names and passwords: Uncheck
2.1.2 Ensure AutoFill Credit Cards Is Disabled (Automated)
L2 Auto
Description

This recommendation verifies that AutoFill Credit Cards Is Disabled on the Apple Safari 18 web browser. Disabling or removing unnecessary components reduces the attack surface and limits potential vectors for exploitation.

Rationale

Running unnecessary components on the Apple Safari 18 web browser increases the attack surface and the risk of exploitation. Disabling or removing them follows the principle of least functionality and reduces exposure to known vulnerabilities.

Audit
defaults read com.apple.Safari AutoFillCreditCardData
# Should return: 0
Remediation
defaults write com.apple.Safari AutoFillCreditCardData -bool false

# Safari > Settings > AutoFill > Credit cards: Uncheck
2.1.3 Ensure AutoFill Contact Info Is Disabled (Automated)
L2 Auto
Description

This recommendation verifies that AutoFill Contact Info Is Disabled on the Apple Safari 18 web browser. Disabling or removing unnecessary components reduces the attack surface and limits potential vectors for exploitation.

Rationale

Running unnecessary components on the Apple Safari 18 web browser increases the attack surface and the risk of exploitation. Disabling or removing them follows the principle of least functionality and reduces exposure to known vulnerabilities.

Audit
defaults read com.apple.Safari AutoFillFromAddressBook
# Should return: 0
Remediation
defaults write com.apple.Safari AutoFillFromAddressBook -bool false

# Safari > Settings > AutoFill > Using information from my contacts: Uncheck
2.1.4 Ensure AutoFill Other Forms Is Disabled (Automated)
L2 Auto
Description

This recommendation verifies that AutoFill Other Forms Is Disabled on the Apple Safari 18 web browser. Disabling or removing unnecessary components reduces the attack surface and limits potential vectors for exploitation.

Rationale

Running unnecessary components on the Apple Safari 18 web browser increases the attack surface and the risk of exploitation. Disabling or removing them follows the principle of least functionality and reduces exposure to known vulnerabilities.

Audit
defaults read com.apple.Safari AutoFillMiscellaneousForms
# Should return: 0
Remediation
defaults write com.apple.Safari AutoFillMiscellaneousForms -bool false

# Safari > Settings > AutoFill > Other forms: Uncheck

2.2 Search Settings

▶
2.2.1 Ensure Search Engine Suggestions Are Suppressed (Automated)
L2 Auto
Description

This recommendation verifies that Search Engine Suggestions Are Suppressed on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
defaults read com.apple.Safari SuppressSearchSuggestions
# Should return: 1 (suggestions suppressed)
Remediation
defaults write com.apple.Safari SuppressSearchSuggestions -bool true

# Safari > Settings > Search > Include search engine suggestions: Uncheck
2.2.2 Ensure Spotlight Suggestions Are Disabled in Safari (Automated)
L2 Auto
Description

This recommendation verifies that Spotlight Suggestions Are Disabled in Safari on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
defaults read com.apple.Safari UniversalSearchEnabled
# Should return: 0
Remediation
defaults write com.apple.Safari UniversalSearchEnabled -bool false

# Safari > Settings > Search > Include Spotlight Suggestions: Uncheck

3 — Extensions

▶

3.1 Extension Management

▶
3.1.1 Ensure Only Required Extensions Are Installed (Manual)
L1 Manual
Description

This recommendation ensures that Only Required Extensions Are Installed on the Apple Safari 18 web browser. Enforcing this requirement establishes a minimum security standard and prevents insecure configurations.

Rationale

Without this enforcement, the Apple Safari 18 web browser may accept insecure configurations that weaken overall security posture. Mandating this control ensures consistent protection against common attack vectors.

Audit
defaults read com.apple.Safari ExtensionsEnabled
# Review whether extensions are enabled

# List installed extensions:
ls ~/Library/Safari/Extensions/ 2>/dev/null
ls /Library/Safari/Extensions/ 2>/dev/null
Remediation
# Review and remove unnecessary extensions:
# Safari > Settings > Extensions
# Disable or uninstall extensions that are not required

# Remove extension files:
rm ~/Library/Safari/Extensions/<extension>.safariextz
3.1.2 Ensure Extension Website Access Is Restricted (Manual)
L1 Manual
Description

This setting ensures that Extension Website Access Is Restricted on the Apple Safari 18 web browser. Restricting this capability limits potential abuse and enforces the principle of least privilege across the environment.

Rationale

Unrestricted access to this capability could allow unauthorized users or processes to perform actions beyond their intended scope. Applying least-privilege principles to the Apple Safari 18 web browser is essential for defense in depth.

Audit
# Check per-website extension permissions:
defaults read com.apple.Safari | grep -i extension

# Safari > Settings > Extensions > select extension > Website Access
Remediation
# For each extension:
# Safari > Settings > Extensions > select extension
# Set Website Access to: Ask for Every Website or specific allowed sites
# Remove extensions with excessive permissions

4 — HTTPS & Certificates

▶

4.1 Transport Security

▶
4.1.1 Ensure HTTPS Upgrade Is Enabled (Automated)
L1 Auto
Description

This recommendation verifies that HTTPS Upgrade Is Enabled on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
defaults read com.apple.Safari UpgradeHTTPSEnabled 2>/dev/null
# Should return: 1 (HTTPS upgrade enabled)

# Safari > Settings > Advanced > Privacy > HTTPS Upgrade
Remediation
defaults write com.apple.Safari UpgradeHTTPSEnabled -bool true

# Safari > Settings > Advanced > Privacy > HTTPS Upgrade: Enable
4.1.2 Ensure Certificate Status Information Is Visible (Automated)
L1 Auto
Description

This recommendation verifies that Certificate Status Information Is Visible on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
# Check EV certificate display preference:
defaults read com.apple.Safari ShowStatusBar
# Should return: 1
defaults read com.apple.Safari ShowFullURLInSmartSearchField
# Should return: 1
Remediation
defaults write com.apple.Safari ShowStatusBar -bool true
defaults write com.apple.Safari ShowFullURLInSmartSearchField -bool true
4.1.3 Ensure Trust Settings for Root Certificates Are Reviewed (Manual)
L1 Manual
Description

This recommendation verifies that Trust Settings for Root Certificates Are Reviewed on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
# Check for certificate pinning usage with:
security find-identity -v -p ssl-client
# Review system trust settings:
security dump-trust-settings -d 2>/dev/null | head -30
Remediation
# Review and remove untrusted certificates:
# Keychain Access > System Roots > Certificates
# Set untrusted CAs to 'Never Trust'

security set-trust-settings-trustroot -d <certificate>

5 — Developer & Advanced

▶

5.1 Developer Settings

▶
5.1.1 Ensure Develop Menu Is Disabled in Production (Automated)
L1 Auto
Description

This recommendation verifies that Develop Menu Is Disabled in Production on the Apple Safari 18 web browser. Disabling or removing unnecessary components reduces the attack surface and limits potential vectors for exploitation.

Rationale

Running unnecessary components on the Apple Safari 18 web browser increases the attack surface and the risk of exploitation. Disabling or removing them follows the principle of least functionality and reduces exposure to known vulnerabilities.

Audit
defaults read com.apple.Safari IncludeDevelopMenu
# Should return: 0 in production
defaults read com.apple.Safari WebKitDeveloperExtrasEnabled
# Should return: 0
Remediation
defaults write com.apple.Safari IncludeDevelopMenu -bool false
defaults write com.apple.Safari WebKitDeveloperExtrasEnabled -bool false

# Safari > Settings > Advanced > Show features for web developers: Uncheck
5.1.2 Ensure Remote Automation Is Disabled (Automated)
L1 Auto
Description

This recommendation verifies that Remote Automation Is Disabled on the Apple Safari 18 web browser. Disabling or removing unnecessary components reduces the attack surface and limits potential vectors for exploitation.

Rationale

Running unnecessary components on the Apple Safari 18 web browser increases the attack surface and the risk of exploitation. Disabling or removing them follows the principle of least functionality and reduces exposure to known vulnerabilities.

Audit
defaults read com.apple.Safari WebKitPreferences.allowsRemoteAutomation 2>/dev/null
# Should return: 0
Remediation
defaults write com.apple.Safari WebKitPreferences.allowsRemoteAutomation -bool false

# Disable Safari remote automation in Develop menu
5.1.3 Ensure JavaScript Bookmarklets Are Reviewed (Manual)
L1 Manual
Description

This recommendation verifies that JavaScript Bookmarklets Are Reviewed on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
defaults read com.apple.Safari AllowJavaScriptMarkup 2>/dev/null
# Review JavaScript bookmarklet permissions
Remediation
# Review and remove JavaScript bookmarklets:
# Bookmarks > Edit Bookmarks > identify javascript: URLs
# Delete any untrusted JavaScript bookmarks

5.2 Tab & Window Security

▶
5.2.1 Ensure External Links Open in Tabs (Automated)
L2 Auto
Description

This recommendation verifies that External Links Open in Tabs on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
defaults read com.apple.Safari OpenExternalURLsInExistingTab 2>/dev/null
# Check how external links are handled
Remediation
# Safari > Settings > Tabs > Open pages in tabs instead of windows: Always
defaults write com.apple.Safari TabCreationPolicy -int 2
5.2.2 Ensure Push Notification Prompts Are Disabled (Automated)
L1 Auto
Description

This recommendation verifies that Push Notification Prompts Are Disabled on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
defaults read com.apple.Safari CanPromptForPushNotifications
# Should return: 0
Remediation
defaults write com.apple.Safari CanPromptForPushNotifications -bool false

# Safari > Settings > Websites > Notifications > Allow websites to ask: Uncheck

6 — Data Protection

▶

6.1 Cookie & Data Settings

▶
6.1.1 Ensure Cookie Blocking Policy Is Restrictive (Automated)
L1 Auto
Description

This recommendation verifies that Cookie Blocking Policy Is Restrictive on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
defaults read com.apple.Safari WebKitPreferences.storageBlockingPolicy
# Check cookie blocking policy
defaults read com.apple.Safari BlockStoragePolicy
# Should show restrictive value
Remediation
defaults write com.apple.Safari BlockStoragePolicy -int 2

# Safari > Settings > Privacy > Block all cookies: Enable
# (Or use ITP for balanced approach)
6.1.2 Ensure Camera & Microphone Permissions Are Restricted (Manual)
L1 Manual
Description

This setting ensures that Camera & Microphone Permissions Are Restricted on the Apple Safari 18 web browser. Restricting this capability limits potential abuse and enforces the principle of least privilege across the environment.

Rationale

Unrestricted access to this capability could allow unauthorized users or processes to perform actions beyond their intended scope. Applying least-privilege principles to the Apple Safari 18 web browser is essential for defense in depth.

Audit
defaults read com.apple.Safari WebsiteAuthorization 2>/dev/null
# Check camera/microphone permission defaults

# Safari > Settings > Websites > Camera / Microphone
Remediation
# Safari > Settings > Websites > Camera: set to Ask or Deny for all sites
# Safari > Settings > Websites > Microphone: set to Ask or Deny for all sites
# Safari > Settings > Websites > Location: set to Ask or Deny for all sites
6.1.3 Ensure Download List Is Auto-Cleared (Automated)
L1 Auto
Description

This recommendation verifies that Download List Is Auto-Cleared on the Apple Safari 18 web browser. Implementing this control strengthens the overall security configuration and reduces exposure to potential threats.

Rationale

Failure to implement this control may leave the Apple Safari 18 web browser vulnerable to attack or non-compliant with organizational security policies. This control helps establish a consistent, hardened configuration baseline.

Audit
defaults read com.apple.Safari DownloadsClearingPolicy
# Review download list auto-clearing

ls ~/Downloads/ | wc -l
# Review Downloads folder size
Remediation
defaults write com.apple.Safari DownloadsClearingPolicy -int 2

# Safari > Settings > General > Remove download list items: After one day
# Or manually: Safari > Settings > General > Remove download list items: When Safari quits
6.1.4 Ensure Browsing History Retention Is Limited (Automated)
L2 Auto
Description

This setting ensures that Browsing History Retention Is Limited on the Apple Safari 18 web browser. Restricting this capability limits potential abuse and enforces the principle of least privilege across the environment.

Rationale

Unrestricted access to this capability could allow unauthorized users or processes to perform actions beyond their intended scope. Applying least-privilege principles to the Apple Safari 18 web browser is essential for defense in depth.

Audit
defaults read com.apple.Safari HistoryAgeInDaysLimit
# Check browsing history retention period
Remediation
defaults write com.apple.Safari HistoryAgeInDaysLimit -int 30

# Safari > Settings > General > Remove history items: After one month