假设我打电话给HTTPS服务器。服务器发回我的http响应。有没有办法可以在客户端更改http响应? (即任何javascript..etc)
感谢。
---更新----
好吧,对于HTTP请求,假设一个javascript使用query = 123456进行ajax调用。当然,我可以拦截它并在发送之前更改query = 123456。 (如果我想破解)。
但是,当http响应回来时,我是否有可能拦截数据并在数据到达浏览器之前对其进行更改。假设它是HTTPS。
---更多---
我写的实际程序要求来自服务器的数据是安全的。因为javascript代码是公共的(因此任何人都可以注入他们的页面),我必须确保从我的服务器发送的响应数据将与javascript端接收它的响应数据相同。
抱歉,最初的问题不明确。 :)答案 0 :(得分:2)
您可以做的最好的事情是确保从服务器发送的数据是正确的。就这样。在客户端,根据定义,所有投注都是关闭的。如果与服务器的连接是SSL安全的,那么任何人都可以使用更难来处理数据,但目前并非不可能。 HTTPS连接的一个优点是确认了服务器的标识。以安全锁或绿色地址栏等形式向用户显示。相反,当证书无效时,浏览器会向用户抱怨它。完全由用户注意或忽略所有这些。
Javascript可以在客户端上操作,也可以通过服务器和客户端之间的中间人攻击来操纵,数据可以以相同的方式操作,无法保证客户端的任何内容。这就是为什么永远不应该委托客户做任何重要的事情,服务器需要在任何事情上有最后的发言权。 SSL可以帮助向用户指示连接是否可信,但不能保证。
答案 1 :(得分:1)
您可以创建代理并让您的流量通过代理。代理必须使用适当的证书“解密”流量,然后“加密”它并将其发送到它的路上。但你为什么要这样?这听起来很恶意。
除非你试图欺骗自己,否则我不会看到有什么好的更改数据会进入浏览器。
尝试使用小提琴手。