|
论移动应用的安全控制技术随着智能手机和3G通信技术的迅速发展,移动应用安全问题日益突显。文章分析了移动应用中出现的安全隐患,从移动用户认证的角度,对移动应用中流程控制和技术手段进行了分析,提出了解决移动应用安全问题的技术原则。 1.移动应用的安全问题 由于移动终端本身的开放性、灵活性及广泛的应用,导致每一种移动操作系统上都出现了恶意攻击软件。据调查,2011年,移动恶意软件数量增加了2180%,达到17439 个。移动安全问题主要有恶意代码导致智能终端上的隐私信息被窃取、智能终端系统遭破坏及智能终端攻击通信网络等恶意行为。恶意软件能破坏和获取移动设备上的用户信息,例如用户的身份凭证信息等。获得这些信息后,这些恶意软件可以接管用户的账户,然后伪装用户的身份进行虚假的业务交易,或者是窃取存储在服务器上的信息和数据。恶意软件通常隐藏在看似普通的移动应用程序中,当用户下载这些移动应用程序时,恶意软件就会侵入用户的移动设备,黑客就可以利用这些恶意软件冒充别人的身份对移动电子商务提供商进行欺诈,给提供商带来巨大的经济损失。同时,移动应用安全问题还会对社会稳定造成一定威胁,例如部分智能终端被用作非法信息传播平台,还有的智能终端采用非法加密压缩手段逃避监管部门的审查,被不法分子用于进行非法群体活动,这都将给国家安全和社会稳定带来巨大威胁。 2.移动应用的安全控制技术 鉴于伪装身份等安全风险的存在,移动应用需要一个系统的、有效的移动用户认证手段,以防范恶意软件冒充合法的用户进行欺诈。由于移动终端的操作系统要求移动应用适应多样化的环境,即需要支持多种移动操作系统,例如iOS、Android、Windows Phone等,因此移动用户认证和欺诈防范的方案也应该是跨移动操作系统平台的、通用的,不能仅支持某种特定的移动操作系统。 为了对移动用户进行验证,保护企业资产免受欺诈等安全风险的威胁,通常可以采用2 类手段:一类是基于流程控制的方法,另一类是基于技术控制的解决方案。 2.1 基于流程控制的方法 常用的流程控制手段有以下几种。 (1) 控制交易的风险。在部署移动应用程序时,可以先启用一些低风险的功能。例如,不允许通过移动应用修改敏感的用户资料信息,不允许转账到非该用户创建的账户上。在企业方面,则不允许用户通过移动应用访问高风险的应用或者高敏感度的信息。 (2) 控制交易的额度。例如,在没有其他的控制措施的情况下,不允许从移动设备进行大额的支付。随着时间的推移,当有了更多的欺诈防范的措施和经验以后,这些限制手段可以逐步放宽。 (3) 对于高风险的交易,可以考虑采用双人授权控制,这2个授权人必须使用不同的移动设备。 (4) 考虑到移动应用的提供者无法对用户的移动设备进行管理和控制,因此不要在用户的移动设备存储任何需要保护的数据。例如,如果移动应用需要从用户的移动设备传输图片到服务器,那么拍照完后就应该立即传输到服务器,不要把图片存储在用户的移动设备上。对于不敏感的数据,可以作为应用程序的一部分存储在用户的移动设备上。 2.2 基于技术的控制手段 2.2.1 层次化防护手段 在技术的角度上采用分层的方法,来覆盖包括移动应用在内的、各种渠道的欺诈防范。之所以采用分层控制的安全方法,是因为只靠一个单独的防护层次很难阻止黑客的入侵,所以必须采用多层的方式逐级提供防护。 在进行分层防护时,我们可以把防护体系分成5个层次:第一个层次针对用户使用的终端进行安全防护。这个层次应用的技术主要包括安全浏览技术、带外的交易验证技术、终端设备识别技术、移动位置服务技术等。在这个层次上,主要进行用户及其终端设备的识别、防范恶意软件的攻击。第二个层次主要对用户的会话级行为进行监视和分析,并把这些行为与期望的行为模型进行比对分析,从而发现异常的、可疑的会话。这个层次要比第三、四、五层更容易实现和部署,在识别和防御基于恶意软件的攻击方面也比较有效。第三个层次是面向用户和账号的层次。在这个层次上,主要是监视用户账号的行为,并他将们的行为和具体的业务交易相关联,然后使用规则或统计模型进行分析,从而识别异常的行为。第四个层次是整合来自于多个渠道或者产品的用户账号级行为信息,同第三个层次一样,这个层次主要是为了发现可疑的用户账号行为,但不同的是,这个层次是通过对来自于不同渠道或产品的信息进行关联分析,从而能够对用户行为进行更深入的分析,能更准确地发现异常行为。第五个层次主要进行实体间的关联分析。在这个层次上,对包括内部、外部的实体及他们的属性进行分析,从而发现有组织的犯罪或滥用行为。 在上述5个层次中,第一层是终端层,是最为特殊的一个层次,因为这个层次和终端的类型有着密切的关系,所以普通应用和移动应用在这里的区别非常大。下面根据移动终端和应用的特点,对其相关技术做介绍。 2.2.2 终端设备识别手段 为了防范欺诈等犯罪行为,必须对用户的终端设备进行识别。目前,能够采用终端识别技术的有以下几种识别手段,但是有些技术在进行移动终端识别时不太适用。 (1) 浏览器HTTP头识别。由于无法从移动浏览器获得足够、唯一的特征信息,因此对于移动设备来说,采用这种方法进行终端识别是不可行的。 (2) 基于Cookie 或flash 对象信息的识别。这种方法也不太可靠。合法用户可以使用浏览器的隐私设置来删除这些信息,或者直接把浏览器设为不准被跟踪,这时该方法就无法使用了。此外,苹果的IOS 操作系统不支持Flash 技术,也就无法采用Flash 对象信息进行识别。 (3)通过javascript 采集浏览器特征识别。采用这种方法时,企业可以在系统登录页面上部署一段javascript 代码,这段代码可以尽可能多地收集用户移动浏览器上的各种属性信息,从而形成其指纹信息进行设备识别,目前业界的一些研究和测试表明,这种方法在桌面终端环境下是比较有效的,但是对于移动终端环境来说,还无法采集足够多的移动设备数据用作终端识别,估计还需要一段时间的研究才能发展成熟。 (4) 基于硬件ID 信息进行识别。移动设备的硬件ID 信息有2 种形式:第一种是通过手机自身的一些硬件信息,例如IMEI、UDID、MAC 地址等。第二种是使用下载到移动设备上的一次性口令生成器作为硬件ID 信息。一次性口令通常被作为动态口令来进行用户身份认证,但是下载到手机后,也可以用作这个手机的识别之用。在用作设备识别时,所产生的动态口令可以不经用户干预,直接传送到服务器,这个过程对用户来说是透明的,使用起来会更加方便、有效。 (5) 移动网络注册信息。主要是移动通信网络用来识别移动用户的一些信息,这些信息包括IMSI、MSISDN 等,IMSI是国际上为唯一识别一个移动用户所分配的号码,MSISDN 就是人们日常所说的手机号码。这些信息也可以用来识别移动终端设备。 2.2.3 移动用户认证手段 为了保证移动应用的安全性,必须建立一个强大的、符合移动应用特点的认证体系,针对移动应用的特点,在建设移动用户认证实时,应注意以下几点。 (1) 认证信息和应用信息采用不同的通信信道,将会极大地提高认证的安全性。如果一个应用使用短信向服务器发送命令,那么用户发往服务器的认证信息,可以采用用户读出的方式通过语音通道进行发送。同时,如果是一个基于浏览的移动应用,可以向用户发起一个呼叫,并通过语音向用户读出提供给他的一次性口令,然后用户在这个语音呼叫挂断以前,采用击键的方式、通过语音信道,把该一次性口令发往服务器进行验证。使用这样的验证方式,即使在移动应用程序被突破的情况下,也能保证认证的安全性。 (2) 使用下载到移动设备的OTP应用。OTP(One-time-Password)也称动态口令,是根据专门的算法每隔60s生成一个与时间相关的、不可预测的随机数字组合,每个口令只能使用一次,这样攻击者就无法通过截取口令进行攻击,其安全性得以极大的提高。动态口令是一种安全、便捷的账号防盗技术,可以有效保护交易和登录的认证安全。一次性口令技术可以分为2 类:一类是基于时间的一次性口令,它是基于时间同步的方式来保证服务器和客户端之间口令的一致;一类是基于时间的一次性口令,这种方式基于事件技术来实现服务器和客户端之间的口令同步。 (3) 基于击键或声纹的生物认证。生物认证系统根据用户的打字节奏或声纹进行身份认证:击键认证方法验证已注册的用户输入模式,声纹认证方法则验证用户预先录制的一个声音。这些方法不需要任何特殊的硬件,这使得它们比较适合于移动用户的身份认证。 3.总结 综上所述,移动应用所面临的安全问题,与在台式机或笔记本环境下遇到的安全问题有很大不同,在解决移动应用安全问题时应参考以下几个原则。 (1)为了保障移动应用的安全,必须在流程和技术方面都有所改变。 (2) 任何一种认证方法都有可能被绕过,企业必须假设黑客可以绕过为移动应用部署的所有认证手段,因此必须部署欺诈防范措施来缓解后续风险。 (3) 应该建立一个多层次的欺诈防范系统,如果只有一个层次,则极有可能被突破,但是要突破多个层次的防范就会比较困难。 (4) 防范欺诈最主要是在终端层面上,无论移动应用是基于浏览器的方式,还是驻留在设备上的客户端方式,都需要为了这个目的进行必要的调整。 (5) 目前,常用的强认证手段主要是针对台式机或笔记本电脑环境,但是这些手段在移动环境下并不一定能达到理想的效果,因此必须研究和采用适用于移动应用环境的强认证方式,例如基于击键或声纹的生物认证等。 责编:李玉琴 微信扫一扫实时了解行业动态 微信扫一扫分享本文给好友 著作权声明:kaiyun体育官方人口
文章著作权分属kaiyun体育官方人口
、网友和合作伙伴,部分非原创文章作者信息可能有所缺失,如需补充或修改请与我们联系,工作人员会在1个工作日内配合处理。 |
最新专题 |
|