| MIUI8的“芯片级伪基站识别”
5月10日,在一番前期预热和微博通报之后,小米科技如约发布了新品小米Max手机和MIUI8系统。Max的参数看起来很不错,不过在当前硬件性能普遍过剩的情况下,好像不再有以往那么高的吸引力,反而是MIUI8各种眼花缭乱的功能让人很感兴趣。就笔者而言,最期待防“葫芦娃”的链式启动管理功能。
在本次发布会上,有一项特色是Max手机和MIUI8具备的“芯片级伪基站诈骗短信识别”功能:
图:小米Max手机具备芯片级伪基站诈骗短信识别
图:MIUI8的芯片级伪基站识别和三重保护
仔细解读一下这个宣传图上的功能点,可得到如下信息:
使用MIUI8的小米Max手机能在芯片级识别出伪基站。
除了芯片级识别之外,MIUI8还在软件上有三重保护,分别是:短信程序识别伪基站短信、识别钓鱼网址、浏览器检测恶意网址。
有点奇怪,为什么芯片级识别出伪基站后不直接避开伪基站,还要结合应用级的三重保护防止伪基站短信诈骗呢?应用级别的诈骗短信防范,那不都是各大安全管家玩剩下的么,这MIUI8的芯片级识别伪基站,会有什么秘密?
带着这些问题,笔者开始大开脑洞,尝试扒一扒小米的“芯片级伪基站识别”黑科技。
| 小米Max的芯片级黑科技
在文章《麒麟950的芯片级防伪基站黑科技,到底多有料?》的末尾,笔者曾开玩笑说高通、三星、联发科的芯片也都有接口,只要愿意,各手机厂商都可以玩“芯片级”支持。
是这样么?
笔者后来还真的去查了资料,回答是:是的!
这次小米Max手机采用的高通骁龙650/652处理器,估计正是用了这样的技术。
接下来的内容有点偏技术,当然也带点猜测,如果您看了觉得不太满意,就当笔者瞎说好了。
(注:此处是作者自谦,虽是“瞎说”,却也是基于技术基础上的合理推测)
高通公司有一个PC上运行的无线信号质量诊断工具,叫做QXDM(全名:Qualcomm eXtensible DiagnosTIc Monitor)。基本上采用高通公司芯片的所有手机,都可以通过数据线连接到电脑,用这个PC软件检测手机所连接到的空中信号质量。QXDM的文档中有提到:All over-the-air signaling messages are logged,即所有的无线信号信息都可以被记录——当然也包括手机与伪基站通讯的信息。
Max手机估计就是走的这条路。
图:QXDM软件界面
已知:伪基站的位置区LAC值、发射功率、C1/C2小区选择和重选参数等,与运营商真实基站的数据会有不同。通过分析诊断信息,是能够识别出伪基站的。
所以:在Max手机上开发一套程序分析QXDM接口输出的诊断信息,这个事情就基本完成了(可能还需要适配下驱动)。
这个接口在哪儿呢,其实它是安卓系统的一个Linux设备文件,路径为/dev/diag。网上一番搜索后发现,高通这个设备的驱动源码已经开源有一段时间了,相关的伪基站识别程序也有国外一个安全实验室做的安卓版开源实现(仅适用于高通芯片root过的手机),包括识别算法模型,也开源了…… 华为估计也借鉴了他们……
图:开源的伪基站检测程序,“芯片级”的黑科技哦!
高通的这个诊断接口(Diag Support模块),真的就只是个诊断接口而已,也就能输出信号用于分析。快速扫一眼它的源码后,貌似没看到接受指令切换基站的功能。所以,这也是为什么小米宣传上只讲“识别”伪基站,却只字不提“拒绝连接”伪基站的原因(因为做不到),也是为啥还需要软件上三重保护的原因。
所以,笔者不负责任地再次猜测:目前小米的芯片级识别伪基站科技,主要还是靠队友出力。要问这次Max手机上高通有没有特别支持,笔者猜测:木有……(因为改动芯片很麻烦啊!现成的诊断接口先顶上用吧!)至于Max手机上手最终具体效果如何,还有待各位拿到真机后的测评结果。
呃…… 写到这里不禁想:做手机没有自己的处理器,真的是那个啥啊!