微软确认将在 Build 26052 中为 Windows 11 提供 Sudo 功能

站长云网 2024-02-08 5iter.com 站长云网

Windows11Build26052很有可能在本周四或晚些时候提供下载,其中包括"SudoforWindows"的首个公开预览版。在一篇已被删除的博文中,微软确认Windows版Sudo是一种"直接从未升级的控制台会话中提升命令"的新方法,并计划在GitHub上开源该功能。

微软将Windows版Sudo描述为"一种符合人体工程学且熟悉的解决方案,用户无需首先打开新的提升控制台即可提升命令"。Windows版Sudo正处于早期开发阶段,最近在泄露的WindowsServer2025版本中被发现。

微软在一篇被删除的博文中指出,可以从"设置">"面向开发者"页面启用Sudo,并切换"启用Sudo"选项。

您也可以在提升权限后的控制台会话中运行以下命令,启用Windows版Sudo:

sudo config --enable <configuration_option> 配置选项

正如我们之前所报道的,Windows版Sudo目前支持三种不同的配置选项:

  • 在新窗口(newWindow)中:在此配置中,SudoforWindows将打开一个新的高级控制台窗口,并在该窗口中运行命令。这是启用sudo时的默认配置选项。例如,如果运行

    sudonetstat-abA将打开一个新窗口,并在该窗口中运行命令

  • 输入关闭(disableInput):在此配置中,SudoforWindows将在当前窗口中运行提升后的进程,但新进程生成时将关闭其stdinput。这意味着新进程将不接受任何用户输入,因此此配置不适用于提升后需要用户进一步输入的进程。

  • 内联(正常):这种配置与其他操作系统上的sudo行为最为相似。在此配置下,SudoforWindows将运行高架进程,其stdinput、stdoutput和stderror均与当前窗口相连。这意味着新的提升进程可以接收输入,并将输出发送到当前窗口。

  • 微软解释Windows版Sudo的工作原理

    当你使用sudo从命令行运行一个进程时,会出现UAC对话框,要求用户确认升级。你还可以在终端中使用sudo,就像在Linux或macOS上一样。

    在新窗口中

    在此配置中,sudo.exe将启动一个新的高架控制台窗口,并在该窗口中运行命令。新窗口的工作目录与当前窗口相同。

    新窗口启动时也将使用与当前窗口相同的环境变量。该配置的流程与runas命令类似。

    在这些配置中,sudo.exe将启动一个新的提升进程,即提升的sudo.exe进程,而原来未提升的sudo.exe将与新的提升进程建立RPC连接。

    换句话说,信息从未升维的sudo实例传递到升维的sudo实例。具体来说,未升维进程的控制台句柄被传递给升维进程,从而使升维进程可以读取未升维进程的输入,并将输出写入未升维进程。

    不过,如果在"输入关闭"配置中配置了sudo,则提升进程基本上不会获得控制台的输入句柄,因此无法读取用户的输入。

    在"内联"或"输入封闭"配置下运行sudo时,必须注意其安全影响。中等完整性进程有可能驱动提升进程。在"输入封闭"配置中,这种风险得到了缓解,因为被提升的进程将无法读取用户的输入。

    微软指出,它还将发布适用于Windows的Sudo文档,并将分享有关在"内联"配置下运行sudo的安全影响的更多细节。

    该公司在一篇现已删除的博文中指出:"我们的团队正在为Windows开源Sudo,我们很高兴能在未来几个月内分享有关我们计划的更多细节。"

    责任编辑:站长云网