Nessus 扫描器返回明文凭据漏洞

Nessus scanner returning a Cleartext credentials vulnerability

我 运行 Nessus 在我的一个网站上,它 returns "Web Server Transmits Cleartext Credentials" 漏洞。这是一个低级别的漏洞,但我想了解它。

我的网站对密码文本框进行加密,并将其发送到数据库程序以与数据库中该用户的加密密码进行比较。因此,即使它是明文,也会发送加密密码。这是否意味着此漏洞不适用于我的网站,还是我仍然允许密码被泄露?

谢谢

我相信您的潜在安全问题有多个方面。如果对 Web 服务有任何敏感性,这将导致大多数审核失败。

  1. 出现此漏洞是因为您在处理密码时未使用 HTTPS。 (表单中的密码字段)。所以是的,你在技术上很容易受到影响。中间人攻击可以看到正在传输的内容并重新使用该 "encrypted" 值。他们还可以根据设计缺陷修改数据以导致其他操作发生。您至少有一个问题没有在此处缓解。 HTTPS 是防止 MITM 的最佳解决方案。

  2. 除了第一点之外 - 您似乎表示您知道用户输入密码 field/box 的密码值在传输到服务器之前已被加密。如果在浏览器中使用 javascript 对值进行加密,那么您可能没有正确保护密码。客户端 javascript 是实现此类安全控制的糟糕方法。 (尤其是在没有 MITM 预防的情况下)但是如果有人只是简单地将 "encrypted" 值从 Web 浏览器外部的某处粘贴到浏览器表单中并将其发送到服务器,那么加密的性质就是一个关键点.它应该使用众所周知的现代加密协议,例如 AES。但是,如果任何人都可以通过 MITM 攻击捕获价值并重新使用它,这就没有意义了。

强烈建议通过 Web 服务的 HTTPS 配置采用 TLS 安全。