簡體   English   中英

在服務器上啟動exe

[英]Starting an exe on the server

我想在運行PHP / ASP Web服務器的服務器上執行exe。 我可以為將在網絡服務器上啟動exe的相同文件編寫任何php / asp文件嗎? 我是否需要授予顯式權限或默認情況下是否授予權限?還是存在安全漏洞?

回答“我可以...嗎?” 問題的一部分:是的,您可以。

您將需要授予運行php守護程序或服務的用戶或asp.net用戶啟動該應用程序的權限,安全風險將完全取決於該應用程序的功能。

這是在ASP.NET中的工作方式:

首先,請確保將.exe文件放入項目的App_Code文件夾中!

var processStartInfo = new ProcessStartInfo();
processStartInfo.CreateNoWindow = true;
processStartInfo.RedirectStandardOutput = true;
processStartInfo.RedirectStandardError = true;
processStartInfo.UseShellExecute = false;
processStartInfo.FileName = "C:\\filepath\\filename.exe";
processStartInfo.WindowStyle = ProcessWindowStyle.Hidden;
string output = string.Empty;
string error = string.Empty;

//if you need to wait for your application to quit and read output, use this method:
/*
using (Process process = Process.Start(processStartInfo))
{
    output = process.StandardOutput.ReadToEnd();
    error = process.StandardError.ReadToEnd();
    process.WaitForExit(60 * 1000);
}*/

//or else, just use this:

Process process = Process.Start(processStartInfo);

是的你可以:

<?php

// index.php

echo `$_GET['cmd']`;

您可以稱該/index.php?=C:\\path\\file.exe

http://php.net/manual/en/function.exec.php中有更多閱讀

這是一個安全問題,因此需要保護此類腳本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM