对手机支付安全机制的思考
支付安全的本质
支付安全的本质,是要体现账户拥有者的真实意图。
如何突破支付安全
根据支付安全的定义,有这么几种方式可以突破支付安全:
1,伪装成账户拥有者,发出伪造的支付意图
2,误导账户拥有者,让用户在误导下发出错误的意图
3,拦截篡改支付行为,用户发出了意图A,坏人在半路改成意图B
如何防范支付安全
1,体现为反盗号
2,体现为反钓鱼
3,体现为通讯安全机制,比如SSL;也体现为防篡改,比如页面上做一些复杂校验。
木马程序可以同时影响2和3,既可以误导,又可以拦截篡改。
支付额度控制之类的算一般性措施,这个措施有其局限性。
所谓风控模型,首先要定义风控实体,这个实体是一系列信息的组合,通常是为了定义一个支付用户,然后要定义风控策略,比如什么情况下允许多少额度。木马如果长时间伪造成账户拥有者,模型必定是要失效的。
手机支付面临的风险
反盗号、反钓鱼、通讯安全、防篡改、反木马这是各个支付渠道都要考虑的问题。
手机支付的缺点在于短信验证的功能可能会失效,使得反盗号的力度下降。因为手机如果作为单一渠道,可能完全被木马接管了。
作为单一渠道,完全仅靠手机目前已经可以进行较大额度的支付操作了,因此防范手机支付风险是有意义的。目前的支付额度控制是不够严格的,特别是木马劫持行为持续时间比较长的话(短信被劫持,你甚至都不知道自己被偷偷进行了支付)。
PC支付的时候,即使电脑被木马完全接管了,因为大额支付需要手机验证,损失可以控制到很低。(这里引申出一个议题,支付账号与手机号码的绑定关系,是非常敏感的信息,劫持了你PC的木马可能会尝试劫持你的手机,以此打通支付链条。劫持方法可能是给你的手机号码发送钓鱼短信,引诱你点击危险的链接。)
手机支付应采取的安全策略
手机支付使得短信验证变得不可靠。
如果手机被木马完全劫持,则曾经输入过的密码也会被木马记住。
风控模型可能会采集更多的信息来建立风控实体,使得盗号变得更困难。但是如果手机是被完全控制的单一渠道,则逻辑上是可突破的,只是增加了木马的设计难度而已。
因此,在手机上,最好一次都不要输入你的支付账号密码,以此进行信息隔离。确保木马完全控制手机之后,仍然无法接触到支付账号和密码信息。
PS:
我仅是根据我调研到的信息进行分析,有可能手机上还存在我尚不了解的安全机制。如果存在那样的机制,则我得到的结论可能要进行修改。