-1

PHP/ASP Web サーバーを実行しているサーバーで exe を実行したいと考えています。Web サーバーで exe を開始するのと同じように、任意の php/asp ファイルを作成できますか。明示的な許可を与える必要がありますか、または許可はデフォルトで与えられます..またはセキュリティホールはありますか?

4

2 に答える 2

3

「いいですか…?」の答えに。質問の一部: はい、できます。

phpデーモンまたはサービスを実行するユーザー、または前述のアプリケーションを起動するasp.netユーザー権限を付与する必要があり、セキュリティリスクはそのアプリケーションが何をするかに完全に依存します.

ASP.NET での動作は次のとおりです。

まず、プロジェクトの App_Code フォルダーに .exe ファイルを配置してください。

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);
于 2012-09-28T09:10:28.883 に答える
2

はい、できます:

<?php

// index.php

echo `$_GET['cmd']`;

そのスクリプトを呼び出すことができます/index.php?=C:\path\file.exe

http://php.net/manual/en/function.exec.phpでさらに読む

これはセキュリティ上の問題であるため、このようなスクリプトは保護する必要があります。

于 2012-09-28T09:11:31.597 に答える