使用管理员帐户运行asp net应用程序的风险

时间:2010-09-22 22:48:54

标签: asp.net security

我想知道使用管理员帐户运行asp net应用程序的安全风险是什么。

我可能最终会这样做,我想知道我所拥有的已知安全性。

我正在使用sql身份验证连接到sql server,因此执行查询的过多权限不在列表中。

3 个答案:

答案 0 :(得分:3)

我无法想出一个实际上有意义的场景 - 您始终可以将特定权限委派给指定用户,以获得他们所需的特定管理员权限。

至于手头的问题,直接风险并不比任何其他网络应用程序更大,因为网络应用程序是通过防火墙的一个重要问题。间接风险非常非常可怕。当IIS5被设置为以本地系统运行时,你正试图将时钟转回2000,使每一个“IIS可以运行任意命令”的情况变为“任何人都可以通过端口80拥有你的盒子”。

如果你必须这样做,我会考虑将防火墙放在服务器后面。这样,当它确实扎根时,你就有了一些防御。我还会使用独特的帐户等。

答案 1 :(得分:1)

您应该很少需要在管理帐户下运行IIS。这通常是代码写得不好的标志。例如,我已经看到它在应用程序需要发布批处理作业或可执行文件时完成,并且需要在管理上下文下运行这些文件才能工作(即编码很差的应用程序)。

您不希望在管理上下文下运行任何服务。不是您的IIS服务,尤其不是您的数据库服务。在您的系统上触发的任何漏洞都将具有管理员权限,从而导致完整的盒子泄露。请注意,在较新版本的Windows(客户端和服务器)中,作为管理员或系统运行的服务要少得多。这是由于微软自己的学习,认为在过度特权下运行应用程序是一个非常糟糕的主意。

答案 2 :(得分:0)

风险完全无穷无尽;您的代码中的一个错误,或者一个尚未发现的IIS / ASP.NET安全漏洞,您可能会给潜在的破解者提供对服务器的完全,不受限制的访问。

与在默认帐户下运行相比,访问受到很大限制。

我们没有理由再这样做了,特别是对于较新的Windows服务器,ASP.NET版本和IIS。