物联网平台关键组件安全研究
【摘要】:近年来,物联网产业成为社会经济新的增长点,各种各样的智能家居设备已逐渐进入人们的日常生活,例如智能门锁、报警器、智能插座、智能语音助手等。随着设备的日益增多,为满足设备厂商接入物联网生态系统的迫切需要,物联网平台顺势而生。物联网平台是一个采用各种应用组件提供全面物联网服务和服务管理的实体系统,这些服务包括且并不限于通信、设备操作和管理等。尽管物联网平台在物联网生态系统中扮演着极其重要的角色,但是如何设计一个安全的物联网平台系统却没有统一的标准,鲜有工作对其安全性进行系统性地安全分析。因此,本文工作对国际主流物联网平台系统的关键组件开展了实践安全分析,通过对真实物联网设备和平台系统的实验,首次发现了许多通信、授权、设备管理等方面新的设计与实现漏洞,具体内容及贡献如下:1.对消费物联网生态系统进行了总结与梳理。近年来消费物联网发展迅速,并呈现出碎片化特点,现有研究工作往往仅关注一面而缺乏对整个生态系统的全面理解。因此,基于四年来实践中对消费物联网系统的观察研究,本文对消费物联网生态系统进行了梳理与总结,试图为纷繁而碎片化的消费物联网领域理出清晰的线索,作为全文的背景知识,并供未来研究者参考。具体包括消费物联网生态系统的参与方、常见的物联网通信架构、物联网平台参与的设备生命周期和物联网平台分类介绍。2.发现物联网平台在应用通用通信协议时的新安全问题,并提出了相应设计准则。物联网云、设备与终端用户三者通过协议进行通信交互,因此,物联网平台访问控制的实施须作用于使用的通信协议。然而,由于通用消息传输协议最初的设计与物联网应用场景存在差异,各平台不得不定制并部署适应于物联网场景的安全措施。本文研究发现物联网平台针对MQTT协议补充的安全措施在设计上存在严重缺陷,无法在物联网应用场景中有效保护协议中关键作用的实体与状态,导致攻击者能够实施大规模拒绝服务、敏感信息窃取、非法远程控制等后果严重的攻击。本文同时更进一步地评估了问题的危害严重性与影响广泛性,并提出了对应的安全设计原则和一个面向消息的访问控制模型。评估实验证实了该方案的有效性和可忽略的性能开销。3.发现物联网云间权限委派时的新安全问题,并实现了基于模型检测的半自动化漏洞检测工具。物联网平台允许用户通过云间权限授权方式从一个统一的用户接口控制来自不同云的设备。然而,区别与常见理论方案所设计的授权模型,不同物联网云出于自身业务应用考虑,采用了各自不同的授权机制。本文工作首次基于半自动的模型检测方法对物联网云间权限委派机制进行了系统性地分析,揭示出由于缺乏安全策略协商和多级权限传播管理的复杂性,物联网平台的云间权限委派机制存在安全问题,导致攻击者的权限无法被有效撤销,从而实现对设备的越权访问。为解决相关问题,本文同时探讨了物联网云间授权机制应遵循的安全设计原则。4.发现支持多管理通道的物联网设备的新安全问题,设计并实现了能够快速部署的临时解决方案。为满足不同用户的使用偏好,许多智能家居设备同时支持多种管理通道供用户选择。其中,每种设备管理通道均能单独完整地管控设备,然而,多种管理通道共存时却带来了新的安全问题。本文工作通过研究当前主流的第三方管理通道和设备厂商管理通道,发现多通道间缺乏必要的安全策略协调机制,导致敌手能够打破设备主人所使用管理通道的安全策略,实现对设备的越权访问。为解决相应问题,本文工作设计并实现了临时缓解方案CGuard,使得厂商无需与第三方协商,仅通过单方面的软件更新即可实现对其他管理通道的协调。