【发布时间】:2017-08-03 13:25:45
【问题描述】:
我在我的一个网站上运行 Nessus,它返回“Web 服务器传输明文凭据”漏洞。这是一个低级漏洞,但我想了解它。
我的网站对密码文本框进行加密,并将其发送到数据库程序,以与我在数据库中为该用户拥有的加密密码进行比较。因此,即使它是明文,也会发送加密密码。这是否意味着此漏洞不适用于我的网站,还是我仍然允许暴露密码?
谢谢
【问题讨论】:
标签: passwords password-encryption nessus
我在我的一个网站上运行 Nessus,它返回“Web 服务器传输明文凭据”漏洞。这是一个低级漏洞,但我想了解它。
我的网站对密码文本框进行加密,并将其发送到数据库程序,以与我在数据库中为该用户拥有的加密密码进行比较。因此,即使它是明文,也会发送加密密码。这是否意味着此漏洞不适用于我的网站,还是我仍然允许暴露密码?
谢谢
【问题讨论】:
标签: passwords password-encryption nessus
我相信您的潜在安全问题涉及多个方面。如果对 Web 服务有任何敏感性,这将导致大多数审核失败。
出现此漏洞是因为您在处理密码时未使用 HTTPS。 (表单中的密码字段)。所以是的,你在技术上很容易受到这种攻击。中间人攻击可以看到正在传输的内容并重新使用该“加密”值。他们还可以根据设计缺陷修改数据以导致其他操作发生。您至少有一个问题在这里没有得到缓解。 HTTPS 是防止 MITM 的最佳解决方案。
除了第一点之外 - 您似乎表明您知道用户放置在密码字段/框中的密码值在传输到服务器之前已被加密。如果值是通过在浏览器中使用 javascript 加密的,那么您可能没有正确保护密码。客户端 javascript 是一种糟糕的方法来实现这样的安全控制。 (特别是如果没有 MITM 预防)但是如果有人只是将 Web 浏览器外部某处的“加密”值粘贴到浏览器表单中并将其发送到服务器,那么加密的性质是一个关键点。它应该使用众所周知的现代加密协议,例如 AES。但如果任何人都可以通过 MITM 攻击捕获价值并重新使用它,这将毫无意义。
强烈要求通过 HTTPS 配置为 Web 服务采用 TLS 安全性。
【讨论】: