Steve Morgan..
12
@MarkR
通过将SQL Server移动到另一个盒子确实增强了安全性,这与暴露的Attack Surface有关.
Web服务器受到来自Internet的恶意访问.人们希望它永远不会发生,但是已经(并且将来可能存在)漏洞可以通过穿越防火墙的畸形请求来利用.
利用其中一个漏洞可能导致任意代码能够执行.
如果Web服务器以这种方式受到损害,那么在该机器上运行的任何其他内容现在都是易受攻击的,并且利用软件可能会在特权上下文中运行.受感染机器的攻击面要宽得多.
如果SQL Server安装在同一台计算机上,则任何数据库都容易受到攻击.
现在,如果SQL Server安装在单独的机器上,它本身只能通过其公共接口访问.数据库的附加表面仅限于该接口.因此,为了破坏数据库,您现在必须先破坏Web服务,然后是SQL Server.这比在同一台机器上使用它们要困难得多.
进一步扩展原则,它也是使用存储过程的一个论据.如果Web服务器只能使用存储过程访问数据库服务器,则接口以及受攻击表面受到大量约束.如果Web服务器能够对数据库服务器执行任意SQL,则攻击面再次大得多,并且数据的风险大大增加.
在数据有价值的系统中,这些风险虽然相对较小,但却非常真实,并且确定此类风险的业务风险是解决方案设计的一个重要方面.