Comparison between gsudo and Microsoft sudo
gsudo
was born in 2019 as a productivity tool and is open-source. It has been downloaded over 700k times so far and has enjoyed a warm reception from users. It is very easy to install and works from Windows 7 SP1 up to Windows 11.
Microsoft initially declined to create a similar tool, citing security concerns. However gsudo
's documentation challenged this view arguing that absolute security is unattainable without altering Windows itself, and that the default same-desktop UAC is not completely secure either.
In February 2024, Microsoft reversed its stance and released Sudo for Windows.
Surprisingly, Microsoft's sudo does not leverage new OS features to enhance security. Its mechanisms are akin to gsudo
, making their security models comparable. The question of which one is more secure depends on which version of each are you comparing, and how many open bugs it has. The initial release of Microsoft's sudo presented some critical issues that they will hopefully address very soon. gsudo
has fixed similar issues in the past and may in the future.
Sudo Tools Feature Comparison
Is it a proper Sudo tool?
Feature | gsudo | Sudo for Windows |
---|---|---|
Executes command with elevated permissions | Yes | Yes |
Supports output redirection (sudo dir > file.txt ) | Yes | Yes |
Supports input redirection (`echo md SomeFolder | sudo cmd`) | Yes |
Returns the command exit code | Yes | Requires v1.0.0 / Windows insider build 26080 |
Preserves the current directory | Yes | It depends |
Source code available | Yes | Not for sudo.exe , but promised |
Security Impersonation Features
Feature | gsudo | Sudo for Windows |
---|---|---|
Run with custom Integrity | Yes (-i , --integrity ) | No |
Run as System | Yes (-s , --system ) | No |
Run as TrustedInstaller | Yes (--ti ) | No |
Run as user | Yes (-u user ) | No |
User Experience
Feature | gsudo | Sudo for Windows |
---|---|---|
Easy to install and update | Yes (winget, choco, scoop) | No (Windows Insider build required) |
See less UAC Pop-ups | Yes (Credentials Cache) | No |
Elevate current shell | Yes | No |
Elevate commands using current shell | Yes | No |
Red # indicator for elevation on CMD | Yes | No |
Additional Features
Feature | gsudo | Sudo for Windows |
---|---|---|
Run in new window | Yes | Yes |
Option to keep new window open until a key is pressed | Yes | No |
Option to keep new window's shell open | Yes | No |
Run with Input Disabled | Yes | Yes |
Elevate last command with sudo !! | Yes | No |
PowerShell
Feature | gsudo | Sudo for Windows |
---|---|---|
Elevation syntax | gsudo { scriptblock } -args $a,$b syntax | Unknown, possibly: sudo pwsh { scriptblock } -args $a,$b |
Auto-complete of last 3 commands | Yes (with gsudoModule) | No |
Auto-complete of options | Yes (with gsudoModule) | No |
Red # indicator for elevation | Yes (with gsudoModule) | No |
What if I install both?
If you have both Microsoft Sudo and gsudo
installed, they both should work independently.
The sudo
keyword will run Microsoft's sudo instead of gsudo
because the typical install of Sudo for Windows
(which is via a Windows Insider build) puts it in c:\Windows\System32\sudo.exe
. This folder appears first in the PATH
environment variable, therefore when running sudo
, the Microsoft sudo.exe
will take precedence over gsudo's sudo
alias.