如何通过 EXEC 命令从 diskshadow 内部执行 Powershell 脚本?

如何通过 EXEC 命令从 diskshadow 内部执行 Powershell 脚本?

我有一个 powershell 脚本,用于备份 VSS 快照中的数据。我正在使用磁盘影子创建这样的快照,因此希望通过 diskshadow 的EXEC命令从 diskshadow 内部调用 Powershell 脚本。

我见过这个例子甚至可以.exe从 diskshadow 内部执行任意文件。

但在我的系统上(这是 Windows Server 2019),无法做到这一点。请考虑以下来自交互式磁盘影子会话的代码/摘录:

DISKSHADOW> exec c:\batch\vss\diskshadow-hook.ps1
The command script failed.

DISKSHADOW> exec "powershell.exe" -File c:\batch\vss\diskshadow-hook.ps1

The script file name is not valid.

EXEC <file.cmd>
        Execute a script file on the local machine.
        This command is used to duplicate or restore data as part of
        a backup or restore sequence.

显然,与我看到的示例相反,我无法通过 diskshadow 的EXEC命令执行 powershell 脚本或其他可执行文件。我唯一可以执行的是 cmd 脚本,该文件必须具有文件扩展名.cmd

是否存在组策略、注册表黑客或其他东西使得系统不仅能够执行 CMD 文件,还能从 diskshadow 中执行其他可执行文件?

[注:该问题的一个“解决方案”是将 powershell 脚本包装到 cmd 脚本中,然后从 diskshadow 中调用该 cmd 脚本。这种方法可行,但在我看来这完全是愚蠢的,所以我想知道是否还有其他方法。]

相关内容