【发布时间】:2010-12-14 00:55:39
【问题描述】:
喂,有些供应商告诉我的老板,不加密 web.config 是一个很大的安全漏洞。这对我来说听起来像是铺位。我的意思是,如果有人破坏了服务器,我们不就完蛋了吗?
【问题讨论】:
标签: asp.net encryption web-config
喂,有些供应商告诉我的老板,不加密 web.config 是一个很大的安全漏洞。这对我来说听起来像是铺位。我的意思是,如果有人破坏了服务器,我们不就完蛋了吗?
【问题讨论】:
标签: asp.net encryption web-config
就像@Joelt 建议的那样,ASP.NET 最近出现了一个安全问题,允许人们访问根网络等中的文件。现在,这个问题可能已经存在很长时间了。或者,现在可能存在一个秘密缺陷,除了一些 leet punks 之外没有人知道......这意味着我们现在都很脆弱。我的意思是,直到 ASP.NET 团队(以及在他们之前一两个星期的安全人员)宣布之前的缺陷......它在野外多久了?有多少人利用了它?
所以 - 这是一般的想法。如果由于某种原因存在缺陷 - 人们可以远程访问文件 - 包括 web.config - 那么您的数据可能是已知的。
现在 - 关键是这个。所以 .. 有人可能会知道我的数据库名称、数据库 ip addy 和数据库密码 .. 对吗?但他们需要访问我的内部数据库......祝你好运。但是,我的 web.config 中可能有我的 Twitter 用户名密码? (叮!灯刚刚亮了)。我的第 3 方 api 用户名/密码。等等
这才是真正的安全问题所在,IMO。
如果你知道我公司的 Twitter 用户名/密码,然后开始破坏我们的 Twitter 帐户,我会讨厌它。
【讨论】:
加密并不意味着您受到保护。解密所需的私钥存储在服务器上,因此如果您的服务器遭到入侵,您的 web.config 可以被解密。
我们只加密 web.config 的连接字符串部分。它有助于防止其他窥探者轻松访问我们的连接字符串,尤其是在开发环境中(这通常比您的生产环境安全得多)。
加密只是分层安全性的一小部分。它绝不是保护您敏感信息的终极解决方案。
【讨论】:
最近在 ASP.net 中发布了一个安全漏洞,它允许远程用户访问 Web 根目录中的任何文件,包括 web.config,而无需访问整个服务器。此外,web.config 中可能存在登录信息,允许入侵一台服务器以入侵另一台服务器。
【讨论】:
有点。就我而言,我使用共享主机帐户进行托管。所以很多人都可以访问我的帐户和存储在那里的文件。
就我个人而言,我并不太担心。但是,如果有人愿意,他们可以访问该信息。即使您拥有服务器,如果它是一家公司,那么可能会有很多人可以访问它。
对于关键数据,加密是有意义的。
【讨论】:
And even if you own the server, if it's a company then there could be a lot of people who have access to it.你到底是什么意思?