User Account Control (UAC) is a Windows OS security feature, it permits normal user to perform limited administrator functions if they’ve been granted the authority to do so. It also serves a secondary, but equally important purpose, of preventing normal users from performing specific actions that could pose a security risk to the system, by requiring users to have administrator-level permissions to perform specific functions.
UAC was created by Microsoft as an additional security control feature designed to limit the spread of malware and to keep users from making the system vulnerable. Have you experienced a situation where you need to install a program, but Windows won’t allow you because you’re not an administrator? "That is it"! Welcome to User Account Control (UAC).
UAC is a token-based access system where administrator accounts have full-access tokens issued upon successful login and standard users do not. The Security Identifier or SID-500 which end in 500 denotes the admin account while "501" denotes the guest account, etc.)
For a UAC bypass to be successful the following components need to be met: ● An intermediate-level integrity process. ● Login credentials acquired for a standard user account belonging to an administrators group on the system. ● The Windows executable must be signed by Microsoft code signing certificate. ● Windows executable must be located in a secure directory. ● Windows executable also must specify the auto-elevate property in their manifest
Bypassing UAC is similar to picking a lock to achieve privilege escalation. There are many windows UAC bypasses, below are a few of them:
The “fodhelper.exe” binary links to two unique registry keys, one of which is editable and can be weaponized to use in combination with malware capable of running scripts in the background in elevated administrator access.
HKCU:\software\classes\ms-settings\shell\open\command\(default) - (this Editable Registry Key associated with “fodhelper.exe” binary), it executes in memory, so there’s no file dropping or DLL hijacking involved. However, for this bypass to work properly, the user account must be part of the local administrator group.
This bypass is a bit more advanced and requires advanced knowledge of the Kali Linux OS and the Metasploit Framework (MSF) tool. Watch the YouTube video for step-by-step instructions or read Enigma0x3’s (Matt Nelson) “CVE-2018–8414: A case study in responsible disclosure.”