为什么 QQ、微信、企业微信这些程序的更新都需要管理员权限?

140 天前
 HFX3389

背景:身份是乙方,我部署了大约 50 多台的公共电脑,系统是Windows 10,统一把管理员Administrator都加了密码,使用了 C 盘保护软件(在 PE 下会显示 C 盘未初始化所以不用怕密码在 PE 下被修改),这些公共电脑只能使用标准账户User,只保护 C 盘,D 、E 、F 盘都是开放的。

我把一些需要使用的软件比如 QQ 、微信、企业微信使用管理员权限都安装在 D 盘(安装包打开需要管理员权限),现在的 QQ 使用了所谓新架构所以更新还是比较频繁的,之前部署时用的QQ9.9.12_240715版本号,部署统一在20240725之前完成了,但现在就有新版本QQ9.9.12_240729

这些软件在标准用户下可以完美运行,我原本以为这些软件在 D 盘,即使自更新也就覆盖掉自己D:\Program Files\或者里面D:\Program Files (x86)\的文件就行了,不需要管理员权限。

结果今天尝试了一下,QQ 和微信这俩软件的更新都是需要管理员权限才能更新...

不是很明白为啥要这样设计,Chrome 更新的这么频繁也没有要管理员权限啊,一关一开就更新好了...

我担心的就是国产软件有一个特点就是喜欢强制更新,版本号差距太大就强制更新,不更新不让登录,这我就很难办啊

有什么解决方案吗...

1683 次点击
所在节点    问与答
18 条回复
xmumiffy
140 天前
你选了 d 盘,实际还有文件在 c program files 下的,而 chrome 是 user data 下
GooMS
140 天前
没有权限弹窗都是利用了 user/appdata 目录。
这个几个应用你得自己打 MSI 糊个脚本 非常 sb 我也想知道有什么更优雅的办法
SkywalkerJi
140 天前
QQ 可是拿着驱动级权限,基本什么都能干,监听内存注入其他进程都是小意思。
大部分的游戏反作弊系统都没 qq 一个聊天软件的权限高。
yyzh
140 天前
@xmumiffy chrome 有些奇怪设置的.你如果安装的时候直接右键管理员去装它就会装去 program file 而且会自动更新,但是如果直接双击运行安装程序那就会装去 userdata 而且自动更新会报错,挺奇特的
ysc3839
140 天前
因为系统盘的 Program Files 需要管理员权限才可写,所以安装程序干脆不做检查一律要求授权。
除此之外 QQ 等许多国产软件还会安装系统服务甚至内核驱动,都是需要管理员权限的。
ysc3839
140 天前
Chrome 更新不需要管理员权限是因为首次安装时安装了系统服务,“保留”了管理员权限,同时更新时利用这个服务实现免额外授权。
理论上其他软件也能这么做,但是它们不注重用户体验,就没做。
ruimz
140 天前
并不觉像 Chrome 这样问也不问关也关不掉就直接往 C 盘 users 文件夹里拉屎更好
sutking
140 天前
请教一下:op 这里的 C 盘保护是怎么做到的?
kekeones
139 天前
同问,是如何保护的
wangyuescr
138 天前
安装在 C 盘 public 用户怎么样?
使用夺权软件生成管理员运行配置文件怎么样? RunAsSpc 夺权软件
jim9606
138 天前
你都不知道如果没提权,安装时会遇上什么问题:
1.提权运行最简单的方法就是安装程序的 manifest 声明,但这样就没得选,不授权就不运行,也没法先让用户选择安装目录再决定是不是提权。运行时提权的方法需要平台 api ,许多跨平台框架压根没法指定这个。
2.虽然不是系统定义的特权目录,但如果是重装过系统或者拆装硬盘,既有目录很容易遇上 NTFS 文件读写权限问题,夺权通常都需要提权
3.反正 UAC 现在也不是很敏感的事,米家的几个游戏为了不残留“间谍软件”(其实只是反作弊驱动)干脆每次运行都提权现安驱动了,好像用户更喜欢这种其实没必要的提权而不是装一个要靠卸载程序收尾的提权服务
4. 我印象里 NTQQ 自己搞绿化安装时可以用的,而且没有 qqprotect 了
5. 微信和 QQ 曾经在微软商店上过无 qqprotect 的 win32 转 msix 封装版本,这个肯定可以无特权安装运行,就是过于古老了
HFX3389
137 天前
@ruimz #7 Chrome 往 C 盘 users 文件夹里拉屎,这些拿到 UAC 特权的整个硬盘都可以随便拉 ,还可以更上强度的拉,所以比烂没意义呀
HFX3389
137 天前
@sutking #8
@kekeones #9
一款类似冰点还原的软件
HFX3389
137 天前
@jim9606 #11

前两点确实,

UAC 在一般用户看来确实没什么用甚至网上一大堆教程和优化系统都把 UAC 关掉,但是现在它在我的这个环境下就是好东西,如果直接上管理员账户非常容易被搞破坏,比如从网上下一些 ARK 工具随意删除和卸载驱动等操作,更具体的就不说,每次出事还是要我来擦屁股

每个奇怪的规定,后面都有一个甚至数个奇葩的经典案例。

我主要是担心 **国产软件有一个特点就是喜欢强制更新,版本号差距太大就强制更新,不更新不让登录** 这一点。
HFX3389
137 天前
@wangyuescr #10
没试过安装在 C 盘 public 用户,有空找个虚拟机试试。

RunAsSpc 、runastool 这类软件我也有想过,但是仅针对国产软件更新就有点麻烦,之前使用过 runastool ,但因为假如像 QQNT 这种更新比较快的软件,就不能勾选“运行前检查文件大小”功能。

勾选了更新后就弹禁止运行提示因为大小变了,不勾选的话可以直接把 EXE 替换成 CMD ,双击打开然后就可以直接 net user Administrator 123456 了...

如果可以以数字签名或者数字证书来限制就好了,比如设置`D:\Program Files\Tencent`下的所有需要提权的 EXE 有腾讯的数字证书的直接放行,连 MS 证书都不放行就放行腾讯的证书:D
wangyuescr
136 天前
@HFX3389
“安装在 C 盘 public 用户”,别试了,我今天试过。
有道词典,安装在 C 盘 public 用户,也在管理员下修改文件夹权限对要登陆的域用户是所有。在域用户下更新有道词典到安装的时候还是要输入管理员账号密码
HFX3389
136 天前
@wangyuescr 没有好的解决办法太难了
wangyuescr
136 天前
@HFX3389 看下你们买的桌面终端管理软件比如 EDR 有没有买类似提权的功能

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1062093

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX