1

我想从字符串编码一个 powershell 脚本,但我不能让它以 UTF16-LE 编码。

我正在使用它来将其编码为 base64 字符串。

string encodedscript = "powershell -nop -enc " + Convert.ToBase64String(Encoding.UTF8.GetBytes(PowerShellScript));

但是当我尝试使用 UTF16-LE 编码时,它不起作用,例如:

string encodedscript = "powershell -nop -enc " + Convert.ToBase64String(Encoding.UTF16-LE.GetBytes(PowerShellScript));

所以我的问题是如何使用 c# 对 Powershell 脚本进行编码,以便 Powershell 可以接受。

我正在尝试用 C# 在这个网站上实现类似的东西: https ://raikia.com/tool-powershell-encoder/

这是代码示例,powershell 脚本 PowerShellScript 非常长。

这是一些示例编码脚本:https ://pastesite.org/view/raw/74b98937

示例脚本:https ://pastesite.org/view/raw/b573f289

4

1 回答 1

1

好的,谢谢大家,为了帮助我,我提出了这个批处理脚本,它作为 powershell 脚本重新启动它,仍然可以工作。但它在启动时显示错误。我用 && cls 压制它

#^ &@@Echo Off && Cls && Powershell -exec bypass -nop -noni - < "%~f0" && exit /B
#POWERSHELL CODE GOES HERE!
于 2021-11-14T21:28:51.377 回答