GWT与SSL安全性

3

我想知道使用SSL(实际上是在JBoss web应用程序服务器上配置TLS)时,使用GWT存在哪些安全漏洞(如果有的话)。我与我的一位朋友讨论过这个问题,他说即使我启用了HTTPS,一些恶意用户仍然可以拦截我的.js文件并更改代码,并在服务器上通过身份验证。我们假设除了SSL之外,我们从未在网络上发送明文密码(我们首先对其进行哈希)。这真的可能吗?

我想知道的另一件事是JavaScript代码(由GWT生成)如何触发RPC调用?我们使用Wireshark来嗅探客户端到启用SSL的Web服务器的请求和响应,但是没有看到任何RPC数据包。我们只看到了这些TLS协议包,我们可以通过使用客户端和Web服务器的源和目标IP地址筛选器轻松地识别它们。


你好,azec_pdx,你成功让GWT与SSL协同工作了吗? - mor222
嗨@mor222,我可能做过,但那是8年前的事了。真的很难记得细节。 :) - azec-pdx
2个回答

4
如果您也通过HTTPS发送您的.html和.js文件,那么一般来说,在传输过程中没人能够篡改它们。当然,有一些实际问题:
  • TLS实现是否存在任何漏洞?
  • TLS协议是否存在缺陷?
  • 客户端浏览器或计算机是否受到威胁?
  • 服务器是否受到威胁?
  • ......
  • 假设这些情况都不是存在的。但接下来,就是你所说的声明:

    我们假定除了SSL之外,我们从不在网络上传输明文密码(我们首先对其进行哈希)。

    那么您并没有全部通过SSL来发送信息?好吧,那些未通过SSL发送的内容在传输过程中可能会被窃取和篡改。我想,您的朋友的意思是,哈希后的密码可能会被窃取!即使攻击者可能无法重建明文密码,他仍可以简单地使用哈希后的密码,如果您的服务器接受哈希后的密码。
    同时还请查看我的回答:GWT/Javascript client side password encryption
    关于你的第二个问题:
    我们使用Wireshark来嗅探客户端到启用SSL的Web服务器的请求和响应,但没有RPC包在其中传递。我们看到的只有这些TLS协议包...
    好的,我真的希望如此!你的RPC调用是这些数据包的加密有效负载。如果你可以向Wireshark提供私钥,你可以使用Wireshark的SSL解析器来解密数据包(在使用生产密钥时要非常小心!)。

    我真的不知道为什么我期望RPC数据包。当我在进行一些关于真实Java RPC的工作时,我可以看到RPC数据包通过网络传输,但这只是HTTP协议负载的一部分。 - azec-pdx
    很抱歉要重新启动这个帖子。但我遇到了同样的问题。所以如果我想要客户端<->服务器通信的安全性 - 那么我必须切换到SSL,对吗?我的应用程序显示了许多页面。其中一些页面是每个人都可以访问的,而有些页面只有已登录的用户才能访问(例如,管理配置文件仅适用于已登录的用户)。那么最佳实践是什么? - Igor

    0
    为了完全确保您的SSL/TLS配置,我建议您使用一些外部工具。到目前为止,对我来说最准确的是SSL/TLS服务器测试。在那里,您可以看到您的配置如何符合PCI DSS要求,或HIPAA和NIST的指南,这些都是保护SSL/TLS的行业标准。

    网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接