前几天遇到了一个被黑站点,以为就是正常的判断ua头,发现还是有点不一样的,后面想快捷修改,结果发现一个插件还需要收钱,就自己写了一个插件。这段时间比较难熬,大家都要注意身体!
遇到了一个被黑的站点,打开发现是404,但是手机端打开是颜色的站点,如下:
手机端打开如下:
想都没想,那肯定是判断ua头啦,直接使用burp的替换功能,替换成手机端的ua头,发现还是不行:
ua头已经修改了,页面还是404
后面看了下响应的代码,发现是这一段代码在作祟:
if(/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))){
if(window.location.href.indexOf("?mobile")<0){
try{
if(/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){window.location.href="http://hql.fvhosfh.cn/h8/#/?daili=2525&tk=8d881bbc417e4dd3&u=3mbXSM";}
if(/ipad|iphone|mac/i.test(navigator.userAgent)){window.location.href="http://hql.fvhosfh.cn/h8/#/?daili=2525&tk=8d881bbc417e4dd3&u=3mbXSM";}
}catch(e){}
}
在我修改ua后的页面上输出下navigator.userAgent
变量看看:
woc?说明我修改的ua值根本影响不了这个值,后续百度了一下,navigator介绍如下:(来自菜鸟教程)
看样子是通过ua头根本改不了浏览器的信息,不过肯定也是这样,除非是影响了js代码,可能才会影响到浏览器的信息,这里顺带一提,使用浏览器的手机端模式,也还是这样:
后面继续百度、google,想找一个快捷修改的,查到有人写过这种插件,进入到公众号,发现要50元?
woc,好黑啊。感觉也不难,顺便学学谷歌插件的知识
查了一下资料,写了一个简单的谷歌插件,专门自定义修改navigator
,使用效果如下,
当开启插件,访问之前的网址,即可绕过ua头的判定:
通过控制台输出的,也是修改后的值
简单说下谷歌插件的逻辑,做个记录
页面主要由modifynavi.html
构成,引用了popup.js
文件(旧版本可以直接在html中写js代码,新版本只能引入js文件执行javascript)
首先通过页面的开启或者关闭进行保存,保存逻辑由popup.js
中的save
函数进行保存,通过执行点击函数执行background.js
的topopup
函数,将值存入storage
对象
后续打开网页,contentscript.js
根据storage
对象储存的值来进行navigator的修改,如果大于0就会修改,否则,不修改:
一个50元的插件就写出来了,还能做到可控
https://www.cnblogs.com/liuxianan/p/chrome-plugin-develop.html
https://github.com/iiilin/PiPiGuiOnPC
https://github.com/f0ng/ModifyNavigator