网站被挂马了,经常会跳转到其它网站,如果你也找不到导致恶意跳转的源代码,那么不妨试试直接加一个禁止跳转到其它恶意网站的代码。
防跳转文件下载:https://pan.quark.cn/s/9749cbe0d76a
部署教程
1、下载文件后解压到本地,其中包含一个js文件夹和放跳转的js文件,按照自己的需求上传到服务器。
如果你的网站根目录有js文件夹,那么直接把里面的js文件上传到js文件夹里,如果根目录没有js文件夹,那么连同js文件夹一起上传到网站根目录。
2、打开并编辑js文件,把白名单域名改成自己的域名,建议填www网址和手机版网址,如果不需要,把下面两行删除,//当前域名前的逗号也删除。
// 设置允许的域名白名单(包括主域名及其子域名)
const allowedDomains = [
location.hostname, // 当前域名
‘改成你的域名’, // 其他可信域名
‘改成你的域名’ // 子域名
];
3、把这段js代码引入网站模板,一般是在head.html或include.html文件里,找到</script>标签,把这段代码放在</script>最上面,一定要让这个js文件最先加载,它才能有效拦截跳转。
<script src=”/js/tiaozhuanlanjie.js”></script>
到这里防恶意跳转代码就部署完成了,以js治js,非常合适。
适用类型
从百度等搜索引擎点击网站时,恶意跳转到XX网站;
手机浏览器首次访问网站时,会跳转到其它网站;
飞飞CMS、苹果CMS、海洋CMS程序模板恶意跳转广告站点;
……
功能说明:
1、链接点击拦截:
- 自动检测所有<a>标签点击
- 解析目标URL的域名
- 检查是否在允许域名白名单内
- 阻止非白名单域名的跳转
2、域名白名单:
- 自动包含当前站点域名
- 支持添加多个可信域名
- 支持子域名匹配(如 .example.com 匹配所有子域)
3、特殊跳转防护:
- 拦截通过 window.location = … 的跳转
- 处理各种类型的链接(相对路径/绝对路径)
- 忽略JavaScript伪协议链接
注意事项:
- 对于动态创建的链接同样有效(事件委托)
- 不会阻止浏览器默认行为(如新标签页打开)
- 需要HTTPS环境下才能完全阻止部分现代浏览器的跳转
- 无法100%防止所有跳转方式(如meta refresh、HTTP重定向)
本文来自投稿,不代表首晒立场,如若转载,请注明出处:https://www.shoushai.com/p/1582