Get Google Chrome
Vimium · 在 Chrome 里使用 vim 快捷键
RiverRay
V2EX  ›  Chrome

一个反常识: 在 Chrome 浏览器里如何拿到用户最真实的 CPU 和其他硬件信息(不走 UA

  RiverRay · Jul 10, 2024 · 31054 views
This topic created in 709 days ago, the information mentioned may be changed or developed.

前端老鸟都知道一个常识

谷歌浏览器里面是拿不到真实 CPU 和硬件信息的

(:UA 那个很容易伪造好吧

今天再给你一个反常识:

其实,Chromium 内置了一个系统级插件。

这个插件允许 *.google.com 网站获取宿主机 CPU 信息

去 Chromium 源码里找找,发现插件 ID 是:nkeimhogjdpnpccoofpliimaahmaaome 。

而且,这个插件还能对外通信

so ,骚操作来了

我们可以随便打开一个 Google 的网站在 console 里面输入:

chrome.runtime.sendMessage('nkeimhogjdpnpccoofpliimaahmaaome',
{method: 'cpu.getInfo'},
response => console.table(response));

CPU 、进程还有负载 一五一十的就有了

看源代码,这个内置插件里面还暴露了不少其他方法,可以自己探索玩玩

说人话:

如果你做的是浏览器扩展,完全可以获取到宿主机的 CPU 还有其他硬件信息的

哈哈哈哈哈

147 replies    2024-07-22 09:21:14 +08:00
1  2  
ZeoKarl
    101
ZeoKarl  
   Jul 10, 2024
歪个楼.可以使用 navigator.userAgentData
.getHighEntropyValues([
"architecture",
"model",
"platformVersion",
"fullVersionList",
])获取相对真实的信息.
testliyu
    102
testliyu  
   Jul 10, 2024
代理挂在香港的时候不行,换了个节点之后可以了
635925926
    103
635925926  
   Jul 10, 2024   ❤️ 1
@webbillion 又一个二极管,人家只是提到了这是个 api ,就认定人家啥啥啥了?
635925926
    104
635925926  
   Jul 10, 2024
67 楼
dongsuo
    105
dongsuo  
   Jul 10, 2024
用 thorium 也没能逃过一劫,烂公司!
regent
    106
regent  
   Jul 10, 2024
各位大神有禁用和屏蔽的方法了吗? 还是只能转向 Firefox?
evam
    107
evam  
   Jul 10, 2024
试了一下 arc 无法获取
epiloguess
    108
epiloguess  
   Jul 10, 2024
zzzlight
    109
zzzlight  
   Jul 10, 2024
复现成功,这谷歌自己给自己留的后门啊
lyx1975
    110
lyx1975  
   Jul 10, 2024
知道就知道呗,反正早就当自己在网上裸奔了
expy
    111
expy  
   Jul 10, 2024
https://news.ycombinator.com/item?id=40918052
edge on linux 复现成功,不过浏览器本体代码直接跑物理机上,信息搜集早就一锅端了。
阴谋论一点可以说是给 fork 版本留的后门?
webbillion
    112
webbillion  
   Jul 10, 2024
@635925926 #103 我只是一个猜测,打了一个问号。不然为何试图用插件都有这个 API 来混淆是非呢?所有插件可以用这个 API= Chrome 内置插件用这个 API 是正当的=Chrome 内置插件只对谷歌开放也是正当的。当然你可以说这是谷歌自己的浏览器它想干嘛就干嘛,不服的人或者公司可以自己开发全民都用的扩展或者浏览器或者系统来给自己开后门——事实上我也不会因此骂或者弃用 Chrome 。只是上来就为谷歌开脱,大可不必(能给出开发文档链接的人,不可能不懂这个问题的本质)。
salmon5
    113
salmon5  
   Jul 10, 2024
要说作恶,那必须是微软的 bing ,通过 edge 浏览器爬用户的上网记录到 bing 里面。
caqiko
    114
caqiko  
   Jul 10, 2024
@pikko #98 确实是我没想明白。扩展的 manifest 中声明的 externally_connectable 可以为指定的页面添加 chrome.runtime.sendMessage 方法。我试了在 devtools console 中发送消息,但是报错 background 收不到消息。 这样看的话,确实挺可疑的
salmon5
    115
salmon5  
   Jul 10, 2024
Google 这个是小恶,微软的 bing 是罪大恶极。
salmon5
    116
salmon5  
   Jul 10, 2024
@salmon5 #113
https://www.cnet.com/tech/services-and-software/microsoft-resolves-edge-setting-that-was-leaking-websites-you-visit/
现在的情况来看,edge 可能还在爬取用户的上网记录,给 bing 的爬虫。
AV1
    117
AV1  
   Jul 10, 2024   ❤️ 2
这事儿我有点不理解,浏览器底层自己收集数据发给 google 自己服务器不就好了,为什么还要拐弯抹角给自家网站开个白名单,暴露 JS 接口,然后用 JS 来收集呢?🤣
simpleH
    118
simpleH  
   Jul 10, 2024
有个疑问,拿到 archName ,modelName 会对用户有什么影响呢?和 ua 判断系统类型的操作有啥区别
SimonOne
    119
SimonOne  
   Jul 10, 2024
Vivaldi 好像不行
maikaze
    120
maikaze  
   Jul 10, 2024
@SimonOne 我的 vivaldi 就可以
NessajCN
    121
NessajCN  
   Jul 10, 2024
@DOLLOR 推测这种事情的起因一般遵循汉隆剃刀,也就是某个菜鸟开发需要 cpuInfo 但是改浏览器源码太麻烦就加个插件并白名单自己
SimonOne
    122
SimonOne  
   Jul 10, 2024
@maikaze #120 怪了,我在 www.google.com 试的,抛出异常“TypeError: Cannot read properties of undefined (reading 'sendMessage')”,我是 6.8.3381.46 (Stable channel) (x86_64)
ih8es9OIzne0959p
    123
ih8es9OIzne0959p  
   Jul 10, 2024   ❤️ 2
复现成功,牛 B

不过,cpu 信息而已,我身份证账号密码都在网上飘着了,还在乎这点吗。
laikicka
    124
laikicka  
   Jul 10, 2024   ❤️ 1
Google 会告诉你他记录了哪些信息,并且允许你查阅,控制,删除。
所以还是换兲朝公司的产品吧,虽然可能记录的更多,还和实名身份永久绑定不能注销,但不告诉也你不给你看眼不见心不烦对不对?
laikicka
    125
laikicka  
   Jul 10, 2024   ❤️ 1
说得难听点,就算是隐私被人爬了,我被海外的爬了他总不可能特地飞到大陆来人肉我吧,我何德何能啊。

至于被国内的爬了……我反正已经喝过茶了,楼主自行参考。
HTML001
    126
HTML001  
   Jul 10, 2024   ❤️ 4
@laikick #125 经典比烂
WeiPong
    127
WeiPong  
   Jul 10, 2024
@registerrr gmail 可以啊
VinliamCao
    128
VinliamCao  
   Jul 10, 2024
@dante9 #60 有无安装包流出
weijancc
    129
weijancc  
   Jul 10, 2024
还真可以, 很酷
8E9aYW8oj31rnbOK
    130
8E9aYW8oj31rnbOK  
   Jul 10, 2024
@Cooky 我试了 thorium 也有效
drydiy
    131
drydiy  
   Jul 10, 2024 via iPhone   ❤️ 1
还有插件可以获取到所有 cookie ,哪怕设置 httponly 。浏览器插件真的别乱装。
Damn
    132
Damn  
   Jul 10, 2024
ungoogled-chromium 110.0.5481.78 复现失败

>Uncaught TypeError: Cannot read properties of undefined (reading 'sendMessage')
at <anonymous>:1:16
OneMan
    133
OneMan  
   Jul 10, 2024
各位如果有当过 google play 开发者,就知道 google 对互联网的统治力,涉及每个角落,你的遍体数据,什么都有。
这个 chrome 真的不要用。
neiltroyer849
    134
neiltroyer849  
   Jul 10, 2024 via iPhone
@ajaxgoldfish 不好意思虽然有点偏题但不知道为什么笑得有点想死(允悲
KagurazakaNyaa
    135
KagurazakaNyaa  
   Jul 10, 2024
用 Firefox 不就好了,早该去 Google 化了
jqtmviyu
    136
jqtmviyu  
   Jul 10, 2024
brave 复现失败
sunfly
    137
sunfly  
   Jul 10, 2024
能拿来获取 mac 地址么😂
mayli
    138
mayli  
   Jul 11, 2024
@zeR0f1re 你装了啊,chrome 自带 hangouts 插件 ( nkeimhogjdpnpccoofpliimaahmaaome )。而且你都装 chrome 了,还在乎这浏览器带个插件获得你 cpu 信息?
haixiu
    139
haixiu  
   Jul 11, 2024
前些天看到 chrome 要逐步废弃 manifest v2 就转 firefox 了,用了几周感觉没啥不适应的。
muzi131313
    140
muzi131313  
   Jul 11, 2024
goolge.com 验证成功,Version 126.0.6478.127 (Official Build) (arm64)
mikewang
    141
mikewang  
   Jul 11, 2024   ❤️ 1
Ungoogled Chromium 8 年前就禁用了这个 feature 。这下更坚定地使用 Ungoogled Chromium 了。

https://github.com/ungoogled-software/ungoogled-chromium/issues/2944
tifaaa
    142
tifaaa  
   Jul 11, 2024 via iPhone
smile2wild
    143
smile2wild  
   Jul 11, 2024
@nieyujiang 对啊,而且每个请求的 ua 也会显示这些信息。谷歌这个是有什么恶劣影响吗?没懂?感觉很严重似的
playboy0
    144
playboy0  
   Jul 13, 2024
好像拿不到其他信息,我想拿到显示器、摄像头、硬盘之类的,这个代码里其他方法调用会出错。
miaomiao888
    145
miaomiao888  
   Jul 14, 2024
有些人又跟捡到宝似的,又是作恶甚至夸大到后门,然而我寻思 CPU 信息它属于敏感隐私数据吗?
LicV587
    146
LicV587  
   Jul 19, 2024
@clifftts 当然是为了跟踪用户卖广告啊,再结合之前谷歌一直说要淘汰三方 cookie ,就更加印证了这点。禁止其他广告商跟踪用户,然后自己可以借着 chrome 的私有内部 api 继续跟踪用户,谷歌在广告领域的统治地位不就更强大了?
robinchina
    147
robinchina  
   Jul 22, 2024
1  2  
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2771 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 110ms · UTC 02:45 · PVG 10:45 · LAX 19:45 · JFK 22:45
♥ Do have faith in what you're doing.