-1

假设,我调用了一个 HTTPS 服务器。服务器给我发回http响应。有没有办法可以在客户端更改 http 响应?(即任何javascript..等)

谢谢。

- - 更新 - -

好吧,对于 HTTP 请求,假设一个 javascript 使用 query=123456 进行 ajax 调用。当然,我可以截取它并在它发出之前更改 query=123456。(如果我想破解)。

但是,当 http 响应返回时,我是否可以拦截数据并在它到达浏览器之前对其进行更改。假设它是HTTPS。

- - 更多的 - -

我正在编写的实际程序需要保护来自服务器的数据。因为 javascript 代码将是公开的(因此任何人都可以注入他们的页面),我必须确保从我的服务器发送的响应数据与 javascript 端接收的响应数据相同。

很抱歉最初的问题不清楚。:)

4

2 回答 2

3

您能做的最好的事情是确保从服务器发送的数据是正确的。就这样。在客户端,所有的赌注都被定义为关闭。如果到服务器的连接是 SSL 安全的,那么任何人都很难弄乱数据,但到目前为止并非不可能。HTTPS 连接的优点之一是可以确认服务器的身份。这以安全锁或绿色地址栏或诸如此类的形式显示给用户。反之,当证书无效时,浏览器会向用户抱怨。不过,这完全取决于用户是否注意或忽略所有这些。

Javascript 可以在客户端或通过服务器和客户端之间的中间人攻击进行操作,数据可以以相同的方式进行操作,在客户端没有任何保证。这就是为什么永远不应该委托客户端做任何重要的事情,服务器需要在任何事情上拥有最后的发言权。SSL 可以帮助向用户指示连接是否受信任,但这不能保证。

于 2011-08-19T01:02:15.033 回答
1

您可以创建代理并让您的流量通过代理。代理必须使用适当的证书“解密”流量,然后“加密”并按原路发送。但你为什么想要?这听起来很恶意。

除非您试图愚弄用户,否则我看不到进入浏览器的更改数据会有什么好处。

试着玩一下提琴手。

于 2011-08-18T23:19:07.077 回答