需要「管理员权限」才能运行的软件,99% 都是流氓软件

我们在打开一些电脑软件时,有可能会弹窗让我们同意获取电脑管理员权限之后才能运行,你知道吗这样的软件大多数都是流氓软件。

国内 Windows 用户几乎都知道的一个功能:以管理员身份运行。不管是杀毒软件还是聊天工具,哪怕只是个看图软件,都需要管理员身份才能运行。

管理员权限-1.gif

以管理员身份运行,到底意味着什么?真的有必要吗?

用户账户与权限

这一切都要从 Windows 上一个备受唾弃的功能—— UAC(用户账户控制)说起。你可能没有听过这个名字,但你一定见过它的界面。

UAC界面

对于很多人来说,这个弹窗和脱了裤子 💨 没什么两样,因为大多数弹窗都是用户主动操作后出现的。多一个弹窗只是多了确认的步骤,徒增干扰。如果点「否」,操作大概率会被中断,如果点「是」,也就意味着程序将获得管理员权限。都知道 Windows 中有不同的账户对应不同的管理权限:

windows账户权限

开启 UAC 后,程序默认以 Users 的权限级别运行(哪怕登录管理员账户)。在程序试图修改系统设置,文件,注册表等等时,就会弹出提示框请求管理员权限,类似 MAC 中的需要输入密码操作。从 Windows 7 开始,UAC 拥有自己的设置界面和 4 个通知档位,并一直延续至今。

UAC设置

不止一个弹窗

在系统后台中,不同权限级别的进程是隔离的。如果一个程序在运行过程中申请高级别权限,哪怕用户同意,它也不能直接获得权限,这么做是为了避免恶意程序诱导用户,甚至绕过 UAC 获取权限。

管理员权限-6.jpg

无论程序怎么做,因为不同权限隔离,想到管理员权限组的进程必须重启,新开的进程才能以管理员权限运行。而所有新开的进程,资源管理器都会验证它的权限级别,如果是管理员级别权限则会需要用户同意。

验证权限

UAC 虚拟化

UAC 刚问世的时候因为频繁弹窗的问题,被许多用户埋怨,微软为了推进 UAC 的使用率,引入了 UAC 虚拟化。

UAC虚拟化

有很多程序运行时候只需要写入 HKLM 或 Windows 目录,而不用加载驱动, Windows 检测到这种程序后,便会启用 UAC 虚拟化。原本程序需要对注册表 HKLM 目录进行的修改,被集中到注册表的 HKCR 目录下。原本需要写到 Windows 目录的内容,现在放到到 C 盘的 Appdata 目录中。

管理员权限-9.jpg

这样做既减少了 UAC 弹窗的次数,也提升了系统的安全性(避免其他程序通过 DLL 注入等方法获得管理员权限甚至 System 权限)。两全其美,也是正经软件厂商的做法。

管理员权限-10.jpg

然而,现在的国产软件几乎全部需要管理员权限才能运行,为什么?简单来说就是让自家软件在安装时就获取最大权限,今后弹个窗,锁定个主页,修改个右键菜单,看看用户隐私文件,安装些全家桶,这些事办起来还不是轻而易举?

管理员权限-11.gif

所以说,需要管理员权限才能安装运行的软件,99% 背地里都在干一些龌龊勾当,洗不掉的。

标准账户足以

自己的电脑好,大不了定期清理,重装系统。但如果是公共区域的公用电脑,或者父母小孩用的电脑,因为很多人不懂电脑,几乎 100% 会被诱导安装大量流氓软件。这时候妙用 UAC,可以彻底阻绝软件的流氓行为。

管理员权限-12.jpg

刚才说过,第一次登录 Windows 时创建的是一个管理员账户,实际上对于小白或数据安全要求高的用户,标准账户足以。不管在那种账户下登录,程序都该以标准权限运行。

在管理员账户下运行的程序需要提升权限时,会直接申请,用户作为管理员直接给权限。在标准账户下运行的程序需要提升权限时,因为标准账户本不具备管理员权限,所以必须输入管理员账户密码才能继续,不知道密码,就没办法安装。

输入管理员密码

这就避免了程序绕过 UAC 获得管理员权限,特别是全家桶的静默安装。

四档位的区别

前面提到 Windows 7 开始的 UAC 通知有四个档位,第三档是 Windows 默认的,但是小淙推荐大家使用第四档“始终提醒”。

UAC通知

前面也说过一些程序会绕过 UAC 来达到提权的目的,其实这是 Windows 允许的静默提权行为。目的还是为了较少弹窗,避免用户反感。但也相当于留了一个后门,让恶意程序有了可趁之机。而「始终通知」可以避免静默提权行为,所有涉及管理员权限的行为都将弹窗。

二三档在通知数量上没有差别,它们相较第一档,都取消了以下行为的弹窗:

 在控制面板里的管理操作时不弹窗;

 在 Windows 资源管理器内部操作时不弹窗(启动子进程依然需要);

 打开任务管理器时不弹窗;

 更改防火墙设置时不弹窗;

 打开 UAC 设置界面时不弹窗。

中间两档的区别是:第三档弹窗界面背景为黑色,此时所有进程暂停,等待用户操作后才能继续运行,避免恶意程序控制鼠标自行获取管理员权限(常在用户未使用计算机的情况下)。

管理员权限-15.jpg

截图程序也被暂停,只能拍照。

而第二档只是弹窗,背景就是原来的操作界面,只有申请权限的程序被暂停,其他程序照旧运行。

管理员权限-16.jpg

虽说是「始终通知」,但实际使用下来通知数量并没有很多,还远不到令人厌烦的地步。现在看来 UAC 这个当初受人诟病的功能能够存活到现在,要感谢微软当初主动选择并坚持了,这条对抗用户使用习惯的道路,有效避免了很多安全问题。

固然有些操作确实需要提供给程序管理员权限,比如修改开机启动项,但是这些操作本不该频繁出现,只有在偶尔调用时才会弹窗。

管理员权限-17.jpg

结论

以后再遇到有程序频繁请求权限,真正应该怀疑的是,为何这个程序需要如此频繁的获取管理员权限?它想干什么?这样的软件还是换掉的好,实际上我们使用的大多数流氓软件都不是优秀的软件。

本文编辑:@ 小淙

©本文著作权归电手所有,未经电手许可,不得转载使用。