/ B9 A& b9 I0 g' h ]2 X小米、OPPO、Vivo 预装键盘采用私有传输协议,虽有隐蔽之利,但在安全性和兼容性上却难以令人信服。尤其是在加密算法选择和密钥管理上暴露出的诸多不当做法,实际上为用户隐私数据的泄露打开了方便之门。这再次印证了一个道理:安全系统的设计和实现绝非易事,稍有疏忽就可能酿成大错。对于汇聚海量隐私数据的云输入法而言,采用成熟、标准、经过广泛验证的安全通信协议无疑是上上之选。而自行设计私有协议,则需要研发团队具备相当的密码学功底和安全攻防经验,需要经受住来自业界的持续审视和验证,这对大多数商业化产品而言,并非易事。; X ~7 D% I8 i5 f& a0 F& o$ q
; y+ O$ s" j0 [5 ~3 I) ]% g8 L: I最后是荣耀手机的Magic UI系统自带输入法。研究者同样发现了它在密钥管理中的严重缺陷。Magic UI直接在输入法的客户端代码中硬编码了用于加密的密钥,这几乎等同于把钥匙放在了锁头上。只要攻击者获得了输入法APP的安装包,通过反编译工具就能直接找到并提取密钥,整个过程不超过半小时。有了密钥,攻击者就可以监听用户的网络流量,拦截Magic UI键盘的上传数据,再用密钥解密,最终窃取用户输入的隐私内容。* m' {, {7 }: {4 w0 l0 l
) E& Y3 \5 H& X+ I( i
5. 漏洞成因与影响分析! u1 Y. Z @+ `. t
通过上述分析不难看出,尽管不同厂商的云输入法在安全漏洞的表现形式上有所差异,但它们在数据加密传输这一核心安全机制上却普遍存在诸多问题。综合来看,导致这些问题的根源大致有以下几点:& n, a- z; J$ d2 }1 d- g; T) W) H# J
) K& t- O8 j# t! J
一是部分厂商在数据加密时依赖过于简单的自定义方案,设计时明显缺乏必要的密码学基础和安全攻防经验。他们似乎低估了逆向工程和密码分析的威力,采用了一些自以为是的"古怪"加密,结果却无法经受住安全专家的考验。 x4 S, ?1 A8 p: E% `9 a) g7 \
/ j/ R* o! W5 K$ d0 }) x+ x% C二是不少输入法产品在密钥管理方面犯了很多低级错误。比如直接在客户端代码里硬编码密钥,或者从设备的IMEI等可猜测的信息中派生密钥。这导致密钥的随机性和保密性大打折扣。一旦攻击者拿到了APP安装包或设备特征信息,就能轻松恢复出加密密钥。可以说,再强大的加密算法,没有安全的密钥管理也是白搭。 $ ^0 o/ N r# o. E& \4 C- l+ b . b/ |$ ^- [0 q7 [* x9 i三是大多数输入法为了简化密钥管理的环节而仅采用了对称加密算法来保护数据。单纯使用对称加密虽然效率较高,但一旦密钥泄露,历史发送的所有消息都会遭殃。而成熟的端到端加密通信方案一般会综合利用(非)对称加密、数字签名等密码学技术,严格保护通信双方的身份认证和密钥协商,从而最大限度降低数据泄露的风险。这方面值得输入法厂商们学习借鉴。7 c$ g1 ~0 a% R. U. ]8 J
- G- V# T3 J5 c; j- q8 f4 w深思一下,输入法的安全问题到底会给用户隐私带来多大的现实威胁呢?依照Citizen Lab的保守估计,受上述输入法漏洞影响的用户可能多达10亿之巨。一旦攻击者利用这些漏洞,他们就能窥视这10亿用户在输入法上的一举一动,获取海量的敏感数据。$ d. L9 S& {, _; k' ]6 e
# \5 b J+ Y4 @: c6 @' b) e
大家应该都有过这样的经历,我们会使用手机输入法输入和发送各种隐私信息,例如姓名、地址、银行账号、交易密码等。而这些信息一旦被不法分子拦截,后果不堪设想。攻击者可能利用它们实施财产盗窃、身份冒用等犯罪活动,或是直接在网上兜售数据谋取暴利。对个人用户而言,经济损失和隐私泄露的双重打击无疑是毁灭性的。! P; ^$ x) c3 V+ S4 k5 N' M7 s$ n
$ F; y0 G. a& i9 `" R) p. y此外,这些泄露的隐私数据也可能被用于大数据分析,推断出用户的商业秘密、政治倾向、生活习惯等更加敏感的隐私,造成更大的危害。试想一下,倘若百万千万用户的输入数据落入他人之手,经过大规模、长期的行为模式分析,一家公司的商业机密、用户画像恐怕无所遁形。 : x$ R4 B- _7 q+ H" D4 r# {6 u) D; f! y* S5 M( G ]
如此海量的隐私泄露,其影响之深远已经不是一城一地的问题,而是事关整个移动互联网时代的数据安全。这无疑给予了我们沉重的警示:在移动应用和云服务蓬勃发展的今天,用户隐私保护的重要性空前凸显。作为与用户打交道最为频繁、握有海量用户数据的移动应用,输入法责无旁贷地肩负起保护用户隐私安全的重任。只有从技术和管理两方面入手,切实提升自身的安全防护能力,云输入法才能真正安全。, }$ e/ T- C, O- V' @* L
: p4 @* K& n* A7 C. B9 z
6. 厂商响应与用户建议' M. i4 Y$ @' I, _0 f' T
在发现上述云输入法的安全漏洞后,Citizen Lab的研究者本着负责任的态度,及时向全部相关厂商进行了漏洞披露与沟通。令人欣慰的是,在收到漏洞报告后,多数厂商对此给予了高度重视。他们与研究者保持了积极的互动,力求在第一时间复现问题,并着手制定修复方案。经过一番紧锣密鼓的安全改造,这些厂商陆续发布了输入法的修复更新,堵上了隐私数据的泄露点。这体现了他们对用户利益的关切,以及对自身产品安全负责的态度。 * a) E, P7 V }4 ?+ g1 ` ) m+ g8 f# R$ J, J9 D然而遗憾的是,仍有个别输入法的漏洞修复进展不够理想。截止到本报告发布之日,三星键盘、讯飞输入法等产品的部分版本尚未完成修复。对此,我们强烈建议广大用户尽快将手机系统和输入法APP升级到最新版本。通常情况下,最新版本不仅包含了功能性更新,更集成了必要的安全修复,可大幅提升隐私数据的安全性。 * e, G( \; K n7 @. l3 n) ~0 T9 ]' C4 Q* i' b5 N! G
当然,考虑到目前输入法的云端架构设计,即便是最新版本,理论上也难以百分之百地杜绝隐私泄露的可能。对于十分注重隐私的用户而言,我们建议要更加谨慎地选用云输入法。如非必要,可以尽量避免过度依赖其个性化学习等需要频繁联网的功能。在一些涉密场合,不妨直接改用设备本地输入法,牺牲一些输入效率,但可最大程度保护隐私数据不外泄。5 C6 I b5 ?& u# q2 J* F
0 G# O# L2 |( i- U ?# u
另外,面对云输入法可能存在的安全隐患,普通用户在日常使用中还可采取一些自我保护措施。比如,定期检查和关闭输入法的非必要权限,尤其是对陌生的敏感权限更要慎之又慎;使用输入法前要认真阅读其隐私政策,明确你的数据会被如何收集、传输和处理;尽量选择知名度高、口碑好、更新勤快的输入法产品,因为它们通常拥有更完善的安全基础设施;输入密码、财务信息等高度敏感内容时,建议切换回系统自带的输入法,这样可减少数据上传的频率和隐私暴露面;要养成定期清除输入法本地数据缓存的好习惯,不给不法分子可乘之机;同时也要密切关注业内的输入法安全动态,一旦某款自己正在使用的输入法被披露出高危漏洞,就要果断弃用。6 o2 Z9 m% @0 E; i1 x9 ?$ Z