我遇到了一个名为jCryption 3.0的项目,它不使用SSL就可以加密客户端和服务器之间的数据。如果网站的JavaScript在将登录表单字段(通过SSL)发送回服务器之前使用了jCryption 3.0加密,那么这种技术会不会减轻潜在的心脏出血攻击呢?
这个问题假定如下:
据我了解,对易受攻击的负载均衡器执行心脏出血攻击的人可能只能从内存中发现加密的用户名和密码数据,或服务器的私钥。
发布于 2014-04-17 18:00:31
服务器必须解密信息。一旦它被解密,它就在服务器的进程内存中的明文。那它就会被心脏出血所泄露。
此外,服务器必须具有解密密钥。因此,它很可能存储在进程内存中,并且可以通过心脏出血攻击来恢复。
发布于 2014-04-16 18:20:00
我相信攻击者理论上可以检索服务器SSL证书的私钥,MITM会话,然后破坏您发送给客户端的JS库。然而,这是一个相当复杂的黑客攻击,(考虑到SSLStrip的几乎100%的有效性)可能不值得这么做。因此,是的,这将有助于缓解这一问题,而不是100%。
可以进一步减轻这种情况的一种方法是在浏览器的客户端存储中存储公钥/私钥,或者对客户机的JS环境和浏览器本身做一些指纹。然而,这也是最好的加密:如果浏览器刷新您的存储密钥,您别无选择,只能生成新的密钥。您可能可以要求客户端执行某种带外身份验证,或者在您重新生成TLS证书和撤销旧证书时,只使用它来验证客户端.
https://security.stackexchange.com/questions/56056
复制相似问题