【问题标题】:http proxy javascript injectionhttp代理javascript注入
【发布时间】:2010-02-05 20:16:30
【问题描述】:

我有一个简单的 C++ 代理源。我正在尝试修改它以将一些 html 内容注入特定页面。我设法让它工作,但每当我注入一些东西时,原始 html 的一部分就会被破坏。我知道这不是我的字符串处理函数,因为我让它在发送之前打印出结果,这很好。 html 一次传输 1460 个字节,每个块的顶部有一个 3 个字符串,后跟换行符,最后有一个换行符和一个 0;

例子:

fef
some html

co7
some html 

81f
final html
0

我一直在寻找并试图弄清楚这三个字符代表什么。剩余内容长度十六进制?也许某种哈希?但我什么也找不到。但我猜他们是问题的根源。任何帮助/见解表示赞赏。

【问题讨论】:

  • 我会尽快发布代码。顺便说一句,我没有说清楚,但我的“示例”是从服务器接收到的。

标签: c++ http proxy http-proxy html-injections


【解决方案1】:

分块编码?见RFC 2616, Section 3.6.1

【讨论】:

  • 我读了一遍,现在我很确定这是错误的根源。非常感谢。
  • 这是我的猜测。
  • 是的,这修复了它。如果有人感兴趣,字符是十六进制块的长度。
【解决方案2】:

您正在代理的服务器是否在标头中指定响应的大小?如果是这样,并且您正在修改响应正文而不更新标头,您可能会收到类似这样的奇怪错误。

【讨论】:

  • 响应头在发送到客户端之前会更新。
猜你喜欢
  • 2023-03-18
  • 2011-05-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-18
  • 2015-06-24
相关资源
最近更新 更多