Idea: UAC evil twin escalation
(Just an idea, I don’t have time/inclination to actually do a proof of concept.)
Say you’re an evil script or binary that has managed to run as a user, and you want to elevate yourself.
new_app
= Process list contains a new, unknown elevated application.screen_off
= Check the screen off timeout and compare with idle time.no_fg = GetForegroundWindow == NULL
screensaver = SystemParametersInfo(SPI_GETSCREENSAVERRUNNING ...
- If
new_app
andno_fg
, but notscreen_off
orscreensaver
:- Load the binary and extract metadata.
- Create a new binary in temp with the same name, but your own behaviour.
- Give it a couple of seconds, and request elevation for your own app.
- If not elevated, GOTO 1
So the user gets a double UAC request and accepts it.
If it works, it works because it hides among the stream of frustration and nags that define the Windows user experience; a hypodermic needle in a matted, second hand haystack.