在权限较低的帐户下运行的应用程序是否可以启动在管理帐户下执行另一个应用程序的进程?
当我在服务器上安装名为 pdflatex.exe
的应用程序时,我以管理员身份登录。该应用程序用作从 LaTeX 输入文件到 Pdf 文件的转换器。
我托管一个在应用程序池标识下运行的 Asp.net MVC 3 应用程序,其中 Load User Profile = True
。
Asp.net MVC 3 代码包含使用 System.Diagnostic.Process
实例执行 pdflatex.exe
的代码,如下所示:
Process p = new Process();
p.EnableRaisingEvents = true;
p.Exited += new EventHandler(p_Exited);
p.StartInfo.Arguments = "-interaction=nonstopmode " + inputpath;
p.StartInfo.WorkingDirectory = @"c:\mydomain.com\working";
p.StartInfo.UseShellExecute = false;
p.StartInfo.FileName = "pdflatex.exe";
p.Start();
p.WaitForExit();
从上面的场景来看,
- Web 应用程序在受限帐户,但它
- 在我不知道的默认帐户下执行外部应用程序。
在权限较低的帐户下运行的应用程序是否可以启动在管理帐户下执行另一个应用程序的进程?
I am logged in as the administrator when I installed an application named pdflatex.exe
on my server. This application works as a converter from LaTeX input file to Pdf file.
I host an Asp.net MVC 3 application running under an Application Pool Identity with Load User Profile = True
.
The Asp.net MVC 3 code contains a code that executes pdflatex.exe
using System.Diagnostic.Process
instance as follows:
Process p = new Process();
p.EnableRaisingEvents = true;
p.Exited += new EventHandler(p_Exited);
p.StartInfo.Arguments = "-interaction=nonstopmode " + inputpath;
p.StartInfo.WorkingDirectory = @"c:\mydomain.com\working";
p.StartInfo.UseShellExecute = false;
p.StartInfo.FileName = "pdflatex.exe";
p.Start();
p.WaitForExit();
From the scenario above,
- the web application runs under a restricted acount but it executes
- an external application under a default account that I don't know.
Can an application running under a less privileged account start a process executing another application under an administrative account?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
不可以,如果没有正确请求 UAC 提升(提示输入管理用户名和密码),较低权限的应用程序无法启动提升的应用程序。如果您可以从访问权限较低的应用程序提升生成的应用程序,这将是一个主要的安全漏洞。
No, a lower privilege application cannot start an elevated application without properly asking for UAC elevation (which prompts for an administrative username and password). If you could elevate a spawned app from a lower-access app, it would be a major security gap.
为什么需要管理员权限才能运行
pdflatex
?这是一个标准用户程序,除了从可写入的目录运行之外,不需要任何特殊权限。Why do you need administrator access to run
pdflatex
? That is a standard user program and shouldn't require any special privileges other than to be run from a directory that it can write to.