【问题标题】:PsExec is not working on Windows 10 Pro due to "Access denied" error由于“拒绝访问”错误,PsExec 无法在 Windows 10 Pro 上运行
【发布时间】:2023-03-27 03:17:01
【问题描述】:

目标

使用 psexec 从一台机器远程访问另一台机器,以启动/停止网络服务。

配置

  • 两台机器上的 Windows 10 专业版
  • PsExec v2.2

问题

Couldn't access MACHINE_IP:
Access denied.

前提

  • 从现在开始,我将这些机器称为 A 和 B
  • A 可以 ping B
  • 我用来完成该任务的帐户都是管理员

我的尝试

第一次尝试很简单;所以,从A,我跑了:

psexec \\B_IP -u B_ADMIN_NAME -p B_ADMIN_PWD net stop SERVICE_NAME

但是,结果,我收到了“拒绝访问”错误。 搜索这个问题,我找到了很多可能的解决方案,但不幸的是,没有人为我工作。这是我尝试过的:

  • 在 A 和 B 上禁用 Windows Defender
  • 在 A 和 B 上禁用用户帐户控制
  • 在 A 和 B 的“文件夹选项 > 视图 > 高级设置”中取消选中“使用共享向导”
  • 在 A 和 B 的“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System”中添加新的 DWORD(32 位)LocalAccountTokenFilterPolicy(设置为 1)
  • 在使用cmdkey.exe /add:B_IP /user:B_IP\B_ADMIN_NAME /pass:B_ADMIN_PWD 执行psexec 之前保存凭据
  • 在使用 psexec 和net use \\B_IP\ipc$ /user:B_ADMIN_NAME B_ADMIN_PWD 之前尝试在远程 PC 上获得管理员权限
  • 尝试使用runas /user:B_ADMIN_NAME "psexec -e -h -s -u B_ADMIN_NAME -p B_ADMIN_PWD \\B_IP cmd /C net stop SERVICE_NAME"以管理员身份运行psexec

另外一个奇怪的事情是 A 无法通过文件共享访问 B。 准确地说,它可以访问\\B_IP,但不能访问\\B_IP\C$,也不能访问\\B_IP\ADMIN$。

我认为这两个问题(使用 psexec 和文件共享拒绝访问)在某种程度上是相关的,但正如我所说,以前的解决方案都不适合我。

任何其他想法将不胜感激。

谢谢。

【问题讨论】:

    标签: service windows-10 remote-access access-denied psexec


    【解决方案1】:

    IIRC admin$ 共享使用 SMB1/CIFS,1709 或 1803 自动禁用,因为 MS 认为 SMB1 不够安全。 (如果您使用的是 samba 服务器,并且您的 Windows 客户端在升级到这些版本之一后无法再访问网络共享,那么下面的答案也应该适合您)

    必须通过“打开或关闭 Windows 功能”手动重新激活它 全称:SMB 1.0/CIFS 文件共享支持。 请注意,此功能同时包含客户端和服务器,请务必展开该功能的树以检查您是否正确安装了所需的功能(服务器用于 psexec,客户端用于网络共享)

    【讨论】:

    • IIUC,应安装 SMB 功能,反之亦然。由于 psexec 连接到 ADMIN$,它是一个客户端