许多企业将服务作为系统在生产服务器上运行,而不考虑这种配置可能产生的风险,与其相关的最大风险是什么?攻击者将如何利用这种配置?
发布于 2018-03-08 08:29:11
当攻击者利用应用程序运行任意代码时,此代码将在受攻击的应用程序的上下文(以及特权)下运行。因此,如果以系统形式运行的服务具有侦听端口,并且可从internet或网络中攻击,则攻击者几乎可以在计算机上执行任何操作,包括添加新的管理员帐户或使用米米卡茨转储密码和证书。
如果应用程序没有监听端口,或者不能使用该端口进行攻击,那么该服务可能仍然允许攻击者使用提升特权。这要求攻击者首先拥有一些较低权限的访问权限,例如通过利用较低权限的应用程序或用户。
要以这种方式攻击服务,攻击者通常需要查找服务本身的错误配置,而不是应用程序。他可以尝试编辑应用程序的二进制文件(exe文件),然后重新启动服务,尝试并编辑服务的路径(从而编辑服务启动时执行的exe )。或者,他可以尝试DLL劫持,仅举几个例子。
如果其中一次攻击成功,他可以在应用程序的上下文中运行代码,从而作为系统运行。为了最大限度地降低这种风险,如果服务不需要运行系统,那么运行应用程序就会带来不必要的安全风险。
发布于 2020-05-03 16:29:56
即使该特性在Windows 2000或之前就已经可用,XP还是第一个默认将某些Windows服务作为“网络服务”和“本地服务”运行。但是,很少听说这种本地特权隔离被用来减少攻击。
不管它是真的还是假的,Windows上的本地非特权进程安全性从来没有很好的声誉,业界对它作为一种安全机制的使用几乎没有任何提升。生产反病毒软件的公司不想推广这种安全性,因为它实际上比他们的产品更有效,而且它是免费的,对系统没有负面的性能影响。下面是一个攻击示例,该攻击获取对“网络服务”帐户的访问权,然后使用漏洞来提升系统权限:https://carnal0wnage.attackresearch.com/2010/05/playing-with-ms09-012-windows-local.html
要回答您的问题,主要的风险是,如果您的服务存在被攻击者利用的安全漏洞,您将不再拥有第二层保护。如果您的服务器被限制在有限的帐户上,攻击者通常无法在服务器上永久安装恶意软件。
(*)在NT4中,默认的文件系统权限非常不安全,因此没有特权的用户可以在整个范围内安装软件系统,就像NT5中的超级用户组允许的那样。这使得本地非特权用户安全在默认配置中几乎毫无用处。
https://security.stackexchange.com/questions/181157
复制相似问题