众所周知三星给旗下的 Android 手机定制了一个叫做 TouchWiz 界面。日前这一定制界面爆出漏洞,用户只要点击一个 HTML 链接,就会立即被擦除所有数据恢复到出厂设置状态。 这个漏洞是这样的:三星的 Android 手机可以通过在电话拨号盘上输入一个字符串来恢复出厂设置,例如最新旗舰机 Galaxy S III 的对应字符串是“*2767*3855#”。而这段 HTML 代码则利用了 TouchWiz 定制界面里的漏洞,可以直接从浏览器里启动拨号盘输入和运行这串字符。 理论上这一漏洞会影响所有搭载了 TouchWiz 定制界面的手机,也就是说三星旗下的几乎全线 Android 手机都受到了影响。目前各家媒体已经确认 Galaxy S II 和 Galaxy S III 中招。三星方面表示“正在进行调查”。 原先我们认为这是三星 TouchWiz 定制界面的问题,现在我们发现这个问题的根源在旧版的 Android 原生拨号程序中,因此大量 Android 手机都有这一漏洞。 要检测你的手机是否也存在这个问题,请用手机访问 这个地址,请放心它不会擦除你的手机数据,但是如果你的手机存在这一远程擦除漏洞,则访问这个地址后将会自动显示手机的 IMEI 号。我用自己的 Galaxy S 试了一下,中招了。 这个漏洞的原理是这样的: Android 程序可以向系统里的拨号器传递“tel:URL”格式的地址,例如传递“tel:110”可以直接调用拨号盘拨打 110 报警。通过这样的机制,可以满足类似于“在浏览器中点击电话号码直接拨号”这样的需求。 Android 手机可以通过在拨号盘上输入特定字符串的形式来调用某些系统隐藏功能,例如拨打“*#06#”可以查看手机的 IMEI 号。同样的,只需拨打一个特定的字符串即可擦除手机数据恢复出厂设置,例如我的 Galaxy S 是“*#*#7780#*#*”,而最新的 Galaxy S III 是“*2767*3855#”。 因此,如果在网页上植入一个“tel:*#*#7780#*#*”恶意链接,当 Galaxy S 用户点击这一链接时就会被远程擦除数据恢复出厂设置了。同样的,如果植入了“tel:*#*#7780#*#*”,Galaxy S III 用户点击后手机就会被擦除数据。恶意网页甚至可以通过检测访问者的手机型号来显示对应内容的链接。 这个漏洞存在于 Android 默认的系统拨号器中,虽然这一漏洞已经在今年六月份得到了 Google 官方的修复,一些厂商定制界面的拨号器程序也提前进行了修正,但是大量系统版本较旧,且厂商并未对拨号器做特殊定制改动的手机用户仍然面临这个问题。目前已知中招的包括三星、HTC 和摩托罗拉的多款机器。 目前的临时解决方案是装一个第三方拨号器程序,因为大部分第三方拨号器程序并没有权限或功能可以直接处理这种特殊字符串。而问题的最终解决当然还是要等待各自手机厂商的系统更新。动作快的厂商如三星,已经及时发布了 Galaxy S III 的系统更新填补这一漏洞,很快就会以 OTA 方式推送到用户的手机上。 来源:geekpark 苹果相关新闻投递渠道正式推出,QQ群:223932748,新闻栏目,我们共同关注,:)