Telegram下载的Mac版会写内核扩展吗?先搞懂“内核扩展”在macOS里的真实含义

内核扩展与Telegram下载的Mac版电脑版到底有没有毛线关系

很多刚接触macOS的朋友一听“内核扩展”就头皮发麻,以为装了Telegram下载的Mac版电脑版就要给系统动刀子。其实苹果从Big Sur开始就把传统kext赶到“退役区”,大部分日常软件根本无需触碰内核。Telegram官方给到的dmg包签名干净,安装时系统不会弹出“允许加载内核扩展”提示,换句话说,你就算把中文版、免费版、桌面版全装一遍,也不会在“系统设置-隐私与安全”里看到任何新增kext记录。那些网上流传的“必须关闭SIP才能用Telegram”纯属谣言,目的只是诱导你装来路不明的第三方驱动。

如果你用工具监控安装过程,会发现Telegram下载的Mac版只是把本体丢进/Applications,再在~/Library/Group Containers里建几个沙盒目录,连/Library/Extensions的影子都没碰。内核扩展在macOS里属于最高特权,苹果现在鼓励开发者用Network Extension、Endpoint Security这类“用户态框架”替代,Telegram的语音通话、代理加速功能走的正是新框架,既保证功能,又避免踩雷。

为什么有人把“内核扩展”跟Telegram下载的Mac版网页版混为一谈

最主要的原因是早期某些“翻墙工具”为了全局代理,会顺带装kext驱动,而他们恰好又在推广包里塞了Telegram网页版快捷方式。于是小白用户误以为“装了Telegram就要装驱动”。再加上中文论坛里“内核”一词被滥用,把任何需要密码授权的步骤都喊成“内核扩展”,导致Telegram下载的Mac版网页版背锅。实际上网页版就是PWA,跑在浏览器沙盒里,连本地文件都摸不着,更没资格加载kext。

另一个混淆点是“代理工具”自己带的核心驱动。比如ClashX、Surge这类软件需要System Extension实现TUN模式,它们跟Telegram下载的Mac版网页版半毛钱关系都没有,只是很多人把两者装在同一台机器,就张冠李戴。正确区分方法:看安装包大小。Telegram官网给到的dmg只有九十兆左右,而带kext的“整合包”动辄两三百兆,体积异常就能一眼识别。

Telegram下载的Mac版中文版到底会不会在后台偷偷写内核扩展

用终端命令自查:中文版安装后有没有多出新kext

真不放心就把终端打开,执行kmutil showloaded | grep -v com.apple,这条指令会列出所有非苹果自带的内核扩展。你会发现,即使把Telegram下载的Mac版中文版、免费版、桌面版轮流装一遍,回显依旧空空如也。再把时间机器打开,对比安装前后的系统快照,/Library/Extensions目录的修改时间戳纹丝不动,说明中文版并未背着你写任何kext。

有人担心“万一它把驱动藏到/Library/StagedExtensions呢?”其实Big Sur以后,所有第三方kext必须先经过用户手动“允许”才会移到正式目录,而且重启时还要再次确认。Telegram下载的Mac版中文版安装流程全程不出现“允许”按钮,自然也就没有后续加载动作。你可以把这段命令写成alias,每月跑一次,养成习惯比看谣言更靠谱。

苹果公证与Notarization如何帮中文版堵住内核扩展后门

Telegram每次更新都会把中文版dmg提交给苹果公证,公证流程里有一项“是否包含内核扩展”的硬性检查。若开发者偷偷塞了kext,公证直接被打回,根本无法在官网发布。换句话说,能出现在Telegram下载的Mac版中文版官网的dmg,就已被苹果强制“脱核”。再加上Notarization会扫描恶意行为,即使有人二次打包,也过不了GateKeeper。用户只要认准官网下载,就等于让苹果帮你把内核扩展这道门焊死。

更保险的做法是开“公证日志”验证。把dmg拖到/Applications后,执行spctl -a -vv /Applications/Telegram.app,如果回显里出现“accepted”与“notarized”,就说明中文版没携带任何kext,也未被篡改。整个流程一分钟不到,比看论坛撕逼高效得多。

企业版与App Store版差异:谁更接近“零内核扩展”

Telegram在Mac平台提供两条分发通道:官网企业签名版与Mac App Store版。前者更新快,支持实验性语音特效;后者审核严,功能稍有滞后,但沙盒更彻底。两者都不会写内核扩展,只是App Store版被苹果二次阉割,连“共享扩展”都不给用,自然更不可能触碰内核。如果你对“零内核扩展”有洁癖,直接锁死MAS版即可;若想第一时间体验中文版新功能,继续用官网dmg也没问题,只要记得用kmutil自查即可。

除了Telegram下载的Mac版,还有哪些工具真正需要内核扩展?用iStat Menus举例

iStat Menus为何必须写内核扩展而Telegram却不用

iStat Menus是一款老牌系统监控软件,它要读取风扇转速、电压、温度等硬件传感器数据,而苹果并未公开全部接口,于是作者只能写一个经过苹果签名的System Extension,把内核里的SMC键值映射到用户态。正因为需要这层“翻译”,iStat Menus安装时才会弹“允许加载系统扩展”提示,并在“隐私与安全”里留下记录。反观Telegram下载的Mac版,功能聚焦在即时通讯,用到的网络、通知、沙盒权限都属于用户态API,自然无需内核扩展。两者对比就能明白:是否需要kext取决于功能深度,而不是软件体积。

如果你装完iStat Menus后执行kmutil showloaded,会看到类似com.bjango.istatmenus.sensor.plist的条目,但别慌,这是苹果新框架下的“System Extension”,与传统kext相比权限更低,卸载也更容易。把iStat Menus拖到废纸篓,系统会提示“同时移除系统扩展”,一键清理,不会留下内核垃圾。透过这个案例就能反向验证:Telegram下载的Mac版从头到尾都没出现类似提示,说明它确实远离内核。

 


FAQ相关问答

Telegram Mac版安装时会写入内核扩展吗?

不会。Telegram官方dmg包不含任何kext,安装全程不会出现“允许加载内核扩展”提示,用户可用kmutil showloaded命令自行验证。

为什么有人说装Telegram必须关闭SIP?

这是谣言。Telegram所有功能依赖用户态API,无需关闭SIP;该说法多来自捆绑第三方驱动的来路不明安装包,与官方版本无关。

如何确认我的Mac没因Telegram被偷偷装内核扩展?

打开终端执行sudo kmutil showloaded | grep -v com.apple,若结果为空即表示无第三方kext;也可使用spctl -a -vv /Applications/Telegram.app检查公证状态,显示“notarized”即安全。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。