https://fourcore.io/blogs/no-more-access-denied-i-am-trustedinstaller According to Microsoft, Tamper protection essentially locks Microsoft Defender Antivirus to its secure default values and prevents your security settings from being changed through apps and methods such as: Configuring settings in Registry Editor on your Windows device Changing settings through PowerShell cmdlets on your device Therefore, disabling the service or modifying the configuration won’t work. (...) We wrote a small POC which starts TrustedInstaller, opens a handle to it, and creates a new child process. The code spawns a cmd.exe shell with the privileges of TrustedInstaller and the user as NT Authority/System.
Find a file
2023-02-16 16:10:53 +05:30
functions.go Add TrustedInstaller POC 2023-02-16 16:09:18 +05:30
go.mod Add TrustedInstaller POC 2023-02-16 16:09:18 +05:30
go.sum Add TrustedInstaller POC 2023-02-16 16:09:18 +05:30
main.go Add TrustedInstaller POC 2023-02-16 16:09:18 +05:30
README.md Update README.md 2023-02-16 16:10:53 +05:30

TrustedInstaller

A simple Proof of Concept in Golang to start a new shell as TrustedInstaller. This code accompanies FourCore's blog about TrustedInstaller. It is important to note that you need to run this as a user which has SeDebugPrivileges. Upon running, it will automatically ask for UAC in case you are not running as an Administrator.

Use the RunAsTrustedInstaller function to pass any executable to be run with TrustedInstaller privileges.

To run

  1. git clone the repository
  2. ensure you have go compiler installed
  3. You can either build a binary using go build ti or run it directly using go run ti

It will spawn a new cmd shell as TrustedInstaller which you can check by running whoami /all demo