HTTP请求中的错误和神秘的字符replace

我看到来自用户的奇怪的请求,否则似乎是合法的。 基本上,他们的浏览器中的某些字符似乎是随机取代的。 从我的apache2日志:

wdomain.com:80 ABCD - - [01/Jul/2015:14:21:05 +0200] "POST /index.php?id=699&dID=foo HTTP/1.1" 301 608 1822125 "http://www.vdomain.se/my-profile/private-messages/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36 (KHTLL, like Gecko) Chrome/43.0.2357.124 Safari/537.36" 

或实例,这里的dID应该是eIDvdomain中的wdomain应该是wdomain 。 而KHTLL in the user-agent should be KHTLL当然KHTLL in the user-agent should be KHTML!

 wdomain.com:80 ABCD - - [01/Jul/2015:14:21:11 +0200] "GET /my-profile/private-messages/?dID=foo HTTP/1.1" 404 24471 541869 "http://wdomain.com/my-psofile/private-messages/" "Mozilla/5.0 (Macintosh; Intel Mac NS X 10_10_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2357.124 Safari/537.36" 

在这里, my-profile已被转换到my-psofile

什么可能导致这些看似随机的replace? 似乎可以排除胭脂的延伸,因为一些替代不应该来自DOM的变化,例如引荐者和用户代理的变化。 由于用户看起来是良性的,而且由于变化是如此随机,似乎不太可能是任何恶意的意图。

它可能是拦截和处理客户端和你之间的stream量。 您可能希望使用Tcpdump或类似的方法来查看networking上正在收到的实际数据包,以确保问题不是以奇怪的方式重写请求的Apache模块。

如果客户端数据包在离开他们的机器的时候可以拦截,也可能告诉你他们是否正在生成问题(可能是一个浏览器插件),或者是一个中间人 – 就像一个代理服务器。