Accessibility Features

Adversaries may establish persistence and/or elevate privileges by executing malicious content triggered by accessibility features. Windows contains accessibility features that may be launched with a key combination before a user has logged in (ex: when the user is on the Windows logon screen). An adversary can modify the way these programs are launched to get a command prompt or backdoor without logging in to the system.

Two common accessibility programs are C:\Windows\System32\sethc.exe, launched when the shift key is pressed five times and C:\Windows\System32\utilman.exe, launched when the Windows + U key combination is pressed.

The sethc.exe program is often referred to as "sticky keys", and has been used by adversaries for unauthenticated access through a remote desktop login screen.

Depending on the version of Windows, an adversary may take advantage of these features in different ways. Common methods used by adversaries include replacing accessibility feature binaries or pointers/references to these binaries in the Registry. In newer versions of Windows, the replaced binary needs to be digitally signed for x64 systems, the binary must reside in %systemdir%\, and it must be protected by Windows File or Resource Protection (WFP/WRP). The Image File Execution Option Injection debugger method was likely discovered as a potential workaround because it does not require the corresponding accessibility feature binary to be replaced.

For simple binary replacement on Windows XP and later as well as Windows Server 2003/R2 and later, for example, the program (e.g:C:\Windows\System32\utilman.exe) may be replaced with "cmd.exe" (or another program that provides backdoor access). Subsequently, pressing the appropriate key combination at the login screen while sitting at the keyboard or when connected over Remote Desktop Protocol will cause the replaced file to be executed with SYSTEM privileges.

Other accessibility features exist that may also be leveraged in a similar fashion:

· On-Screen Keyboard: C:\Windows\System32\osk.exe

· Magnifier: C:\Windows\System32\Magnify.exe

· Narrator: C:\Windows\System32\Narrator.exe

· Display Switcher: C:\Windows\System32\DisplaySwitch.exe

· App Switcher: C:\Windows\System32\AtBroker.exe

Example:

Note: Now in the newer Windows 10 some come with a Trusted Installer Group from the start, mostly on Enterprise Version it's a security feature not even SYSTEM has access the only approach I found was the takeover utility

We find the Accessibility Feature we are trying to abuse for our persistence in this sample OSK(On-Screen Keyboard)

We demonstrated where this Accessibility Feature is located we can also use more easier ones such as Utilman.exe this executable has a shortcut of Windows + U

What happens when we replace the binary with a cmd.exe binary and use the Shortcut?

Windows + U

Last updated