论文部分内容阅读
随着移动智能终端和移动互联网的迅速发展,大量厂商在移动平台提供社交网络、电子商务、即时通信等多种服务,将用户的身份信息与设备紧密绑定,很多安全敏感的数据都在移动平台上传输。但同时,把移动智能终端作为处理移动业务和存储用户个人信息的载体也带来了很大的安全隐患,每年由于移动智能设备安全问题引发的信息泄漏、诱骗欺诈造成的经济损失高达百亿。而导致这些安全问题的一个主要因素是移动智能设备通信协议安全的脆弱性。移动智能终端所使用的各类通信协议需要能够保障通信信道的安全性及用户个人信息的机密性、完整性,这些通信协议往往是建立在密码体制基础上,使用密码算法和协议逻辑来实现安全目标。但是现实生活中通信协议的设计、实现常常不能满足规定的安全需求,近年来曝出的重大安全漏洞中很大一部分与通信协议有关。移动智能终端中所使用的安全传输协议,认证授权协议,虚拟专用网络协议等通信协议受到越来越多的关注,它们的安全性研究也成为学术领域的最为重要的研究课题之一。本文的研究主要围绕移动智能终端开放授权协议的安全性分析、单点登录协议的安全性分析、单点登录系统安全性分析和虚拟专用网络协议安全性分析四个方面展开。针对移动智能终端开放授权协议的实现,我们提出了一种基于模型匹配的安全审计方法,并设计实现了一个系统化的安全审计框架。针对应用OAuth协议作为三方认证协议的单点登录系统实现,我们提出了一种由不同攻击者视角引导的分析方案,能够识别OAuth应用在实现单点登录时在不同阶段引入的安全漏洞。针对基于OIDC协议构建的单点登录系统的实现安全性,我们提出了一种自动化差分流量分析方案,能够有效检测单点登录系统中服务器端存在的安全和隐私问题。最后,针对移动平台虚拟专用网络协议的实现,我们提出了代码分析和流量分析结合的分析方案,可以从SSL/TLS协议实现、OpenVPN客户端配置、协议代码实现三个方面系统分析协议实现的安全性。本文的主要贡献如下:1.对于Android平台上的OAuth协议实现,提出了一种基于模型匹配的安全分析方法。我们提出的五方模型能够包含协议流程中涉及的所有参与者,并覆盖协议生命周期的全部3个阶段。同时,我们设计实现了一个系统化的安全审计框架。该框架能够半自动化地审计Android应用中5种典型的错误实现。我们利用该框架对中国Android应用市场中的1300多个实现了OAuth协议的应用进行分析,发现86%的应用存在至少一种安全漏洞。2.针对基于OAuth协议的单点登录方案,设计了一种由不同攻击者视角引导的分析方法。该方法能够对Web、Android和iOS平台上使用OAuth协议进行用户身份认证的应用进行分析,自动化提取协议规范,并识别现实应用在认证凭据选择、认证凭据传输和服务器校验阶段可能存在的5类漏洞。我们对这3个平台上650个最流行的应用进行分析,发现这3个平台分别有32.9%,47.1%,41.6%的应用存在安全漏洞。同时我们分析了这些漏洞产生的根本原因以帮助指导开发者设计更安全的认证方案。3.针对基于OpenIDConnect协议的单点登录系统,提出了一种自动化差分流量分析方案,通过检测服务提供商和服务使用商的服务器端实现,分析单点登录系统中访问控制机制的安全和隐私保护问题。我们对GooglePlay和应用宝两个Android应用市场中的400个流行应用以及8个流行SSO服务提供商进行分析,发现四类新型漏洞,62.5%的服务提供商和31.9%的流行应用的服务器端实现存在至少一种安全漏洞,破坏了系统访问控制的安全性。我们进一步分析了这些漏洞的产生原因并提出了相应修复方案。4.针对移动智能终端的OpenVPN协议实现,提出了静态代码分析和动态流量分析相结合的分析方法。该方法能够从SSL/TLS协议实现、OpenVPN客户端配置、协议代码实现这三个方面分析Android平台流行VPN应用的安全性。我们的分析发现了4类新型漏洞:SSL/TLS协议加固缺失、客户端密码算法误用、客户端弱认证、服务器端弱认证,我们对GooglePlay应用市场中102个OpenVPN应用进行了测试,测试结果表明42.9%的应用至少存在一种安全漏洞,能够导致通信被中间人攻击或者加密流量被解密。