返回上一页  首页 | cnbeta报时: 09:23:44
微软确认将在 Build 26052 中为 Windows 11 提供 Sudo 功能
发布日期:2024-02-08 09:39:30  稿源:cnBeta.COM

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

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

Sudo-for-Windows-cached.jpg

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

Windows-Sudo-command-settings.jpg

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

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

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

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

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

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

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

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

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

Windows-11-Sudo-command-settings.jpg

在新窗口中

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

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

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

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

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

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

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

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

查看网友评论   返回完整版观看

返回上一页  首页 | cnbeta报时: 09:23:44

文字版  标准版  电脑端

© 2003-2024