Aug 2022 Update: Use this option only if the information in Post 1 does not work for you
Enhanced the initial script to allow deactivating the locks if/when an official fix is issued, cover the spectrum of items needed and accommodate switching from the previous method in
Post 82.
First thing to do is to take a backup that can be restored if required.
There are 2 stages. The first involves removing the revoked certs and reinstalling. If this works for you then you are good and will keep your Mac's security level at what it currently is. You do not need the second stage.
If the first stage does not work for you, or you are unwilling/unable to copy and paste the commands into Terminal, then move to the second stage where you just have to run a script that will degrade the security level to allow things to work.
STAGE 1: STRIP CERTS AND REINSTALL
- Run the following command in Terminal to fetch and run a script (from GitHub) for getting Nvidia Webdrivers directly from Nvidia:
cd ~/Downloads && rm -fr ~/Downloads/Web-Driver-Toolkit && git clone https://github.com/corpnewt/Web-Driver-Toolkit && cd Web-Driver-Toolkit && chmod +x Run.command && ./Run.command
- The script will allow you to download Nvidia web drivers which will be saved in
~/Downloads/Web-Driver-Toolkit/Web Drivers
.
- Select the
Download By Build Number
option
- While it may seem counterintuitive, to be absolutely sure the certificates are stripped out, DO NOT select the version of the driver matching your actual build number, but the build number before yours and then use the script option to patch this to what you need. The certificates will be stripped out as part of this patching.
- To check your actual build number, run
sw_vers -buildVersion
in Terminal
- After the script is downloaded, use the
Patch Install Package
option in the script to patch the web driver. This will fully clear the revoked certificates from the package including from kexts used by the web driver.
-
Download the relevant CUDA package and run the following in Terminal to strip the certificates:
cd ~/Downloads && rm -fr ~/Downloads/cxda_tyzp && pkgutil --expand /FULL/PATH/TO/CUDA/PKG ~/Downloads/cxda_tyzp && rm -fr /FULL/PATH/TO/CUDA/PKG && pkgutil --flatten ~/Downloads/cxda_tyzp /FULL/PATH/TO/CUDA/PKG && rm -fr ~/Downloads/cxda_tyzp
- Paste the command into TextEdit, amend /FULL/PATH/TO/CUDA/PKG to suit and run this in Terminal
- You can get the full path to the CUDA pkg by dragging and dropping the file into Terminal
-
Fully isolate your Mac from the web and boot into Safe Mode.
- Safe Mode will enable a basic GPU driver that will, while not accelerated, allow you to operate your Mac without web drivers. Importantly, booting into Safe Mode while disconnected from the web will purge several caches.
- To boot into Safe Mode, turn on or restart your Mac, then immediately press and hold the Shift key until you see the login window. Log in to your Mac (You might be asked to log in a second time).
- You can verify you are in Safe Mode as follows:
- Go to
About This Mac >> System Report >> Software
- In the System Software Overview, look at the value listed next to the item labeled
Boot Mode
.
Safe
: The Mac is using safe mode.
Normal
: The Mac is not using safe mode.
- It might be a good idea to run
crlrefresh rp
in Terminal after logging in to ensure the caches are purged
- Install both the patched web and CUDA drivers
- Reconnect to the web, reboot into Normal Mode and activate the webdriver.
If this sorts out your issues, then you can stop here and live happily ever after. It doesn't matter whether Nvidia/Apple fix the certs or not, you are good for good without needing to compromise on security. Whatever the outcome however, pester Nvidia for a fix. If it did not sort out your issues, you need to try STAGE 2.
STAGE 2: PURGE AND LOCK TRUSTD CACHES
- Fully isolate your Mac from the web and boot into Safe Mode.
- See STAGE 1 above for details on booting into Safe Mode.
- Download the attached file, unzip it and double click to open it in
Script Editor
built into MacOS
- Once in Script Editor, click on the obvious button to run the script.
- Select the script option to activate the workaround when presented.
- If the script asks for confirmation on the paths it will work on, check the listed paths and make sure they include either of:
/C/com.apple.trustd
/T/com.apple.trustd
- Click 'No' if any path does not include one of these paths and report the issue.
- Reconnect to the web after running the script, reboot and you should be up and running.
If not up and running after this, restore the backup you took at the very start and switch to AMD or wait for a fix from Nvidia and/or Apple. Whatever the outcome, pester Nvidia for a fix.
To revert the changes made by the attached script (if/when a proper fix is available), run the script in normal boot mode and select the option to deactivate the workaround. You might also want to do this if you do decide to switch to AMD.
CREDITS:
@DTRX for the trustd cache blocking
@Macschrauber for the initial cache block script
GitHub User CorpNewt for the Web-Driver-Toolkit
Misc Others for tips and feedback
SCRIPT EDITS:
01. Lock/Unlock folders instead of contents
02. Misc Fine Tune
03. Structural Tweaks
04. Remove OCSP blocks in hosts file, Handle /Library/Keychains/crls
05. Misc Tidy Up
06. Reintroduce OCSP blocks in hosts file, Download and patch WebDriver-387.10.10.10.40.140
07. Prefers disconnection from the web, Prefers running under Safe Mode
08. Fixes missing 'WebDriver' variable
09. Misc Tidy Up
10. Remove web driver download/patching added in v06
11. Improve resilience ... allows support for LoSierra/Earlier
12. Improve support for LoSierra/Earlier
13. Adjust Some Sqlite DB Handling
14. Flush DNS to improve deactivation process