小心!bshare插件正在给你的网站投毒!

猿代码  ·  2026-07-01

近期,笔者维护的一个网站负责人找到了我,说近期网站有不少页面被服务商提醒有恶意内容,让我帮忙排查原因。

一开始怀疑是网站的系统漏洞导致被入侵,防火墙、登录记录都查了个遍,无果,代码也没有在近期被修改过的迹象。

只好逐句分析网页源文件,挨个查找外部的js引用链接。最终锁定了bshare这个插件。

从网上一搜,这个插件果然“爆雷”了!

攻击代码分析

根据搜索到的资料,这是一个非常典型的域名过期抢注型供应链攻击(Domain Expiration Hijacking)。攻击者在域名正常过期后将其重新注册,在自有服务器上托管恶意 JS 文件,无需入侵任何目标服务器,即可控制所有加载该 JS 的网页。

经过分析js代码,发现攻击者设计了一套精细的触发策略:

  • 北京时间精准判定:使用 Intl.DateTimeFormat 获取北京时间小时值,而非客户端本地时间;
  • 夜间全量:19:00至次日06:00,触发概率极高(管理员大概率离线);
  • 日间抽样:06:00至19:00,随机触发(降低暴露风险,减少投诉);
  • Cookie 限频:同一浏览器12小时内最多触发一次,避免连续跳转引起用户警觉;
  • 最终指向https://20sj.******.cn?bs(为确保安全,已将跳转网址屏蔽)

处置方案

  1. 全站排查外部引用

搜索页面源码中所有 <script src="..."> 标签,排查以下几类高风险组件:

  • bshare / bdshare 分享插件
  • jiathis 等已停止维护的社交分享组件
  • 第三方 CDN 引入的 jQuery、Bootstrap 等库的冷门镜像域名
  1. 移除或替换

对于确认不受控的外部 JS 引用,直接删除对应标签,或将其替换为本地托管的静态文件。由于 bShare 官方域名已被劫持,需尽快移除 bShare,建议更换为其他社交分享组件或自行开发。

  1. 启用 SRI 完整性校验

对确需跨域引用的第三方资源,必须在引用标签中添加 Subresource Integrity (SRI) 属性,确保浏览器仅加载执行与预期哈希匹配的脚本。

<script src="..." integrity="sha384-xxxx" crossorigin="anonymous">
</script>
  1. 清理缓存与搜索引擎快照

立即刷新全站CDN缓存,通过搜索引擎站长平台提交清理或更新请求,移除已被污染的搜索结果快照。

  1. 网络侧封禁恶意域名和IP
iptables -A INPUT -s 172.247.228.218 -j DROP``echo"127.0.0.1 www.bshare.cn" >> /etc/hosts

IOCs:www.bshare.cn, *.fnitcyv.cn, *.tpkuraw.cn, daohang.2023200.com, 172.247.228.218

后记

可怕的是:国内大约有1.5万个网站引用了这套bshare组件,覆盖党政机关、教育、科研、新闻媒体、医疗、金融、能源、工业等重点行业。

看来这种第三方的插件,确实是不能随意引用,尤其对于一些“小厂”的域名,确实要用的话,要么就下载到本地,要么就定期检查链接可靠性,务必小心提防!

评论
逐浪吧|搏浪号博客. All Rights Reserved. Theme Jasmine by Kent Liao.