wesuex使用说明

wesuex 是一款用来辅助用户来管理系统权限的软件,支持最新的 Windows 10。通过 wesuex 可以使指定的进程运行在指定的权限或者账户下,以此可以达到保护系统安全,保障隐私等目的。
本产品为开源软件,采用 MIT License 进行发布。
目前发布的版本仅支持64位操作系统,并且要求系统版本高于 Windows 7 SP1 如果不能满足系统要求则无法正常使用。并且值得注意的是,由于依赖于 Windows 自身的权限管理机制,Windows 内核上的漏洞将会直接降低权限管理的安全性,所以并不推荐使用过旧的操作系统,建议采用最新的 Windows 10,并且务必为系统打好补丁。
有关源码请访问:https://github.com/wevsty/wesuex
安装包下载地址:https://github.com/wevsty/wesuex/releases
安装程序采用 NSIS 进行打包发布,安装过程十分简单,过程不再赘述。
安装完毕后在任意文件上右键可以看到 wesuex 的菜单,如下图所示。

单击菜单后程序将根据要启动的程序寻找启动配置文件。
比如:对 regedit.exe 右键选择 wesuex 打开,那么 wesuex 会在自己的安装目录中寻找 regedit.exe.ini,如果 regedit.exe.ini 这个配置文件不存在,则会使用程序默认自带的 default.ini。
default.ini 如下图所示,配置文件中可以记录程序的启动方法,用来详细管理权限。

wesuex 将会寻找 START_MODE 项下的 Program 作为启动程序 Command 作为传递给启动程序的命令行并以 MODE 选项下的指定模式来启动程序。
默认配置文件中 wesuex_starts.exe 是一个启动器,通过启动器使得程序可以开打 .docx 这样的非可执行文件,如果需要自定义启动程序也可以指定位其他的程序。
Command选项在传递过程中将会自动替换%command%为传入的命令。
START_MODE 项下的 MODE 选项用于指定程序将以什么样的权限来支持,目前支持3种选项。
LOW_PERMISSIONS:程序将默认按照低权限来启动指定的程序,这时程序会加载LOW_PERMISSIONS项下的选项。
integrity_level_sid用来指定进程完整性级别(Process integrity levels),UAC 通过进程完整性级别来限制程序,UAC开启的状态下程序启动通常为 Medium Mandatory Level 权限,这个权限将限制程序修改系统中的关键文件或者配置,作为默认配置,推荐使用。
Administrators_SID 用来去除 Administrators 组的权限,此选项无论是否存在都将强制禁用程序的 Administrators 权限。
AuthenticatedUser_SID 选项为 ”DISABLE” 是,将会禁用程序的 AuthenticatedUser 权限,如果选项不存在则不会禁用此权限。Authenticated Users 代表的是 Windows 系统中所有使用用户名、密码登录并通过身份验证的账户。
通过限制这些权限,我们就可以阻止对系统进行修改。
举例,按照默认配置低权限启动 taskmgr.exe (任务栏管理器)后我们就可以很明显的观察到,任务栏管理器中无法显示很多进程的用户组,并且也无法结束那些进程。
效果如下图所示:

也可以使用 procexp 来详细确认程序的权限。
procexp下载地址:https://technet.microsoft.com/en-us/sysinternals/bb896653/

当配置文件 START_MODE 项下的 MODE 为 LOGIN_WITH_USER 时将会加载 LOGON_INFO 中的配置,按照指定的用户名和密码登录账户并以此权限执行程序。(程序并不会自动创建账户,默认配置文件中仅作为示例)
注:配置文件中指定的账户可能需要至少登陆过一次,否则启动将可能会出现错误。
运行 taskmgr.exe (任务栏管理器)的效果如下图所示:

当配置文件 START_MODE 项下的 MODE 为 SYSTEM 时,wesuex 将会以 system 权限来启动该程序。

注:一般来说不需要使用 system 权限,如果使用此选项那么程序将拥有较大权限,这可能会产生安全问题。

我们可以为指定的程序创建指定的配置文件,这样使用右键菜单执行程序时,可以让程序以最合适的权限来进行启动。
唯一需要注意的是,如果程序已经以一个权限正在运行,那么在使用 wesuex 右键执行时可能无法降低或提高程序的权限。
比如 explorer.exe (资源管理器),如果直接对 explorer.exe 使用 wesuex ,由于 explorer.exe 并不会创建新进程而是以已经存在的进程打开一个新窗口,所以实际上更改权限的操作可能无效。