从网络位置运行EXE时如何绕过安全警告?

时间:2018-03-07 19:58:10

标签: powershell security scripting

我正在尝试编写一个从网络目录安装的复杂的无人参与安装脚本。我在管理员模式下运行PS并具有绕过安全性。

当我跑步时:

Start-Process "\\192.168.5.7\MSChart.exe" -ArgumentList "/q" -Wait

我明白了:

Security Warning

如何在不将网络位置添加为受信任服务器的情况下绕过此操作?理想情况下只需使用PowerShell。我试过Unblock-File,没有运气。

3 个答案:

答案 0 :(得分:0)

您的计算机不信任网络共享,因此它会向您发出警告。您必须将共享添加到系统Internet设置中的受信任区域,并允许"启动程序和不安全文件"。

你不能绕过它,但是

  • 将所需的配置添加到注册表
  • 或在本地复制文件并从那里运行

使用PowerShell

答案 1 :(得分:0)

也许你想Unblock-File并接受随之而来的所有风险,然后尝试执行它?

我不推荐任何人运行这样的脚本:

function Unblock-Dir() 
{  
  gci -Directory | % { 
    push-location $_ ; 
    gci | % { 
      Write-Host "Unblocking $_";
      Unblock-File $_ 
    } 
    Unblock-Dir ; 
    Pop-Location 
  } 
  Unblock-File -path .\* 
}

这太危险了。

答案 2 :(得分:0)

您可以像在-NoNewWindow中那样添加Start-Process "\\192.168.5.7\MSChart.exe" -ArgumentList "/q" -Wait -NoNewWindow来绕过警告。

但是,您应该使用DNS作为路径(例如\\share.domain.com\file.exe),并确保URI(share.domain.com)在系统的“受信任的站点”或“内部网站点”列表中,否则您可能仍然被阻止。首先将文件复制到本地系统也可以解决此问题。

参考:https://social.technet.microsoft.com/Forums/en-US/92eab96d-fe1a-4119-a5bc-f171d517466a/getting-open-file-security-warning-using-startprocess?forum=winserverpowershell