前不久北京公交集团旗下推出的一款官方软件,可用于对市政交通一卡通进行自助充值。这款软件所使用到的技术就是NFC,是NFC结合软件程序产物中的一个新型代表。北京一卡通可以进行查询需要第三方软件的支持,成功识别之后,可以轻松查询乘客详细的刷卡记录、卡的余额、何时到期等等。
而其中,充值交易是软件的关键应用功能点。通过NFC来识别公交卡,是一个很显著的进步,但涉及到与用户支付账户,甚至是银行账户信息相挂钩,而NFC的便捷性并未对连接过程或者交易过程进行加密,是否存在着隐患,我们接下来继续探究。
给市政一卡通充值 现在您只需要一台手机一款软件即实现
以北京市为例,城区街头我们通常能看到很多地方都立着公用电话亭,虽说这些电话亭现时潮流之下已经时过境迁,但电话亭却不是一无是处。将一卡通插入电话卡槽,您会发现可以直接使用公交卡拨打电话,资费便宜:长途话费(港澳台除外)0.1元/一分钟,非常合算的通话费用。如上图所示交易记录中的-0.1元正是使用这些公用电话时,所消费的话费。
充值软件一个完整交易的应用过程
以上,是使用该软件为公交一卡通充值的整套过程,我们似乎很难找到这里面有什么不妥的地方。充值交易到最后,用户只需要输入支付宝账户对应的支付密码,即可最终完成交易。
我们最初发现的问题是,当用户通过个人手机号码获得验证码登陆充值程序之后,默认账户就已经成立,用户首次登陆了支付宝账户之后,软件则认为用户默认了这一支付方式。然而重点都不在这里,重点在于,我们在支付宝账户信息菜单中,根本无法找到任何清除已登录支付宝账户的功能按钮,而仅可使用更多的其他支付宝账户来进行登录而已。
试图排除隐患:笔者为了验证是否软件存在着账户缓存问题,进行了下面几个尝试,看是否能将已登录的账户消除。
①将软件卸载,再安装完毕之后,账户信息依然存在;②换用其他手机号码登陆,使用其他一卡通操作,账户仍在;③Android系统恢复后,再次安装该软件,只要登录成功,并进行充值交易时,所显示的支付宝账户信息依然是首次登陆的账户。
这样会有什么安全隐患?
支付宝账户无法清除,就意味着该项支持NFC识别技术的软件应用,注定了无法在公共场所进行一卡通充值;第二点,个人账户方面的隐私问题,必然受到影响;最后一点,一旦支付宝支付密码泄露,后果就可想而知了。不过,由于软件目前版本所经历的版本更新还不是很多,相信在接下来的版本中,这样的问题会得到完美解决。