5.1.4 Ensure Library Validation Is Enabled

Information

Library Validation is a security feature introduced in macOS 10.10 Yosemite. Library Validation protects processes from loading arbitrary libraries. This stops root from loading arbitrary libraries into any process (depending on SIP status),and keeps root from becoming more powerful. Security is strengthened, because some user processes can no longer be fooled to run additional code without root's explicit request, which may grant access to daemons that depend on Library Validation for secure validation of code identity.

Rationale:

Running without Library Validation on a production system runs the risk of the modification of system binaries or code injection of system processes that would otherwise be protected by Library Validation.

Impact:

System binaries and processes could load arbitrary libraries.

Solution

Perform the following to enable library validation:
Terminal Method:
Run the following command to set library validation:

$ sudo /usr/bin/defaults write /Library/Preferences/com.apple.security.libraryvalidation.plist DisableLibraryValidation -bool false

Profile Method:

Create or edit a configuration profile with the PayLoadType of com.apple.security.libraryvalidation

Add the key Forced

Set the key to the following:

<array>
<dict>
<key>mcx_preference_settings</key>
<dict>
<key>DisableLibraryValidation</key>
<false/>
</dict>
</dict>
</array>

See Also

https://workbench.cisecurity.org/files/3569