encryption - 发送发布请求时在表单数据中隐藏密码

标签 encryption sha web-development-server burp

在提交表单数据时,密码在表单数据中以加密格式可见,也在 POST 请求的参数中可见。 enter image description here

我想以加密格式隐藏密码。在Burp Suite中,显示了以下漏洞问题。 [![在此处输入图片描述][2]][2]

我使用 sha-512 加密,url 是 https。我一直在搜索这个,但我发现的只是将协议(protocol)从 http 更改为 https。请帮助我如何解决隐藏表单数据以防止在 POST 请求 header 参数中显示密码的问题。

最佳答案

While submitting a form's data,the password is visible in encrypted format inside the form data and also in the parameters of the POST request

确实,浏览器会向您显示所有已发布的数据。实际上,请求是代表用户完成的,您必须假设用户可以看到他/她发布的所有信息。

I want to hide the password in the encrypted format.
just to change the protocol to https from http

是的,这是正确的答案,https 确保流量被加密并且服务器经过身份验证,任何嗅探流量的人都无法解密任何发布的数据。您在浏览器中看到的是加密和实际传输之前的数据。

I am using sha-512 for encryption

不,你好像只是对一些数据进行了哈希处理(请搜索并了解加密和哈希之间的区别),现在哈希已成为密码,现在你需要保护哈希。

CWE-204

您所显示的任何内容都表明存在 CWE-204 漏洞。您所显示的是带有 session cookie 和重定向 url 的正常发布请求和响应。您的系统可能存在也可能不存在 CWE-204 漏洞,尽管它与您提供的数据无关。

Please help me how to solve this issue of hiding the form data from showing the password in the POST request header parameters

现在有一个问题:

密码是由用户提供的吗?您是否想对任何第 3 方隐藏密码(可能会嗅探流量)?然后使用 https 就可以了。用户可能仍会看到发布的数据(包括密码),但是好吧 - 用户提供了密码,他已经知道了。

如果“密码”一些系统参数你想在用户不知道的情况下传递给表单?理论上 - 您可以在服务器端加密密码并在目标系统上解密密码。但是 - 用户可能只是再次发布加密密码。那么您可能更愿意使用有时间限制的 JWT token 。

关于encryption - 发送发布请求时在表单数据中隐藏密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55242337/

相关文章:

java - 在 hibernate 中设置一个字段以使用注释使用 sha1 进行加密

tomcat - META-INF文件夹下的MANIFEST.MF文件的使用

web-hosting - 使用 CDN 和我们自己的服务器哪个更好?

ssl - 续订 letsencrypt SSL 证书后,服务器仅返回响应代码 400

java - OpenSSL 加密 key 和 IV 与 Java 程序生成的不同

java - APDU 命令中的负数

php - 无法在使用 php 脚本加密的 mysql 中解密

c# - 'Stream 不支持使用 CryptoStream 对象寻找'

java - Android SHA1 非常慢

c - 如何在 C 中使用 OpenSSL 生成 RSA SHA 签名