我在StackOverflow上发现了其他问题的答案,但是它们很旧,在安全性方面发生了很大变化。
我想在2017年对这个问题的答案进行重新评估:
在公司内部,数据库是否需要来自内部客户端应用程序的TLS连接?我的数据库中的客户数据如果泄露,将构成雅虎规模的公共关系灾难。但是我的客户端应用程序没有任何公共Internet访问的防火墙。
TLS用于防止某人嗅探流量。但是据我了解(如果我错了,请纠正我),嗅探流量的唯一方法是成为源服务器或目标服务器上的root用户。 (假设我们没有共享的以太网集线器等)
如果有人可以直接物理访问我们数据中心的网络交换机,则这可能是嗅探流量的另一种方法。
但是尝试保护自己免受root用户和数据中心员工的侵害对我来说似乎是过大的,尤其是考虑到TLS确实在性能,复杂性和可维护性方面付出了可观的代价。
还是这只是我们需要绝对地选择安全性而不是试图推断成本效益的情况之一,因为无论如何在安全漏洞方面,成本效益都无法准确计算?
谢谢! :)
最佳答案
将TLS用于内部网络有助于简化威胁模型。为了将传输的数据泄漏给对手,必须采取更多措施。
与数据库处于同一网络中的任何系统受到攻击的对手都可以使用ARP spoofing重新路由流量。从威胁建模的角度来看,这增加了攻击面,并且同一网络上的每个系统都需要具有相同的安全保证。许多路由器都有一个配置选项,可以保护ARP表免受此类攻击-可以通过固件更新禁用此选项。使用TLS是深度防御,因为即使其他系统发生故障,此措施也可以保护核心资产。
关于security - 何时对数据库使用TLS,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41855886/