APP下载

ContexIoT:为应用化的IoT平台提供场景完整性

2017-12-05贾云瀚

中国教育网络 2017年9期
关键词:访问控制开窗三星

文/贾云瀚

ContexIoT:为应用化的IoT平台提供场景完整性

文/贾云瀚

许多存在于IoT 应用中的访问控制缺陷,造成大多数的App存在“过度的权限”问题。

如今,物联网(IoT) 设备已经进入了日常生活中的各个领域,随着技术的发展,IoT设备市场已经从最初的不同厂家推出围绕自家硬件的一套封闭的生态系统 (例如飞利浦 Hue 照明系统),发展到了一种被称为“应用化”(Appified) 的新阶段。 在一个Appified 的平台之上, 任何第三方的开发者被允许为这个平台开发应用程序(App), 去控制来自不同厂家的IoT设备从而更好地为用户提供便利的功能。 三星推出的SmartThings 平台便是其中一例,它支持了来自不同制造商的80多种IoT设备,并且为第三方开发者提供了API去为自己的应用商店开发App。之前无法完成的一些功能,比如用三星生产的运动传感器(motion sensor) 数据去控制飞利浦生产的灯泡,都可以在SmartThings平台上实现。

然而,Appified平台也带来了一个根本的安全问题——允许不被信任的第三方代码来控制用户的设备。2016年IEEE Samp;P 的一篇论文[1]以SmartThings平台为例,指出许多存在于IoT 应用中的访问控制(access control)缺陷,造成大多数的App存在“过度的权限”(overprivilege) 问题,从而允许攻击者危害智能家居(smart home)用户的安全,例如,用伪装成监控电池电量的IoT应用去偷取智能门锁的密码等。针对现实存在的这一类威胁IoT用户安全的问题,我们提出了ContexIoT解决方案[2],一个基于情景(Context)的应用权限系统。ContexIoT为应用化IoT平台的访问控制提供一种叫做 Contextual integrity 的特性,意即:当用户允许一种应用的行为时,它实际上允许的是这个应用在当时的Context下进行这种行为,而不是在任何时候。Contextual integrity 被之前的研究者认为是一个理想的权限系统所应该确保的特性[3]。

对于如何去定义在IoT 应用情景下的 Context,文章作者给出了一个比较全面的Context定义。该定义确保了恶意软件的恶意行为能够从Context层面上与正常的IoT应用行为区分出来。 ContexIoT 采用了一种为应用商店里的IoT加入安全补丁的方式来确保App运行时的Contextual integrity。 如图1所示,在一个原始的IoT 应用中存在两种行为:正常的行为是当检测到温度大于一定数值时打开窗户,而恶意的行为是当发现用户进入睡眠状态时打开窗户。 在原有的App逻辑中,因为App被给予了控制窗户的权限,这两种行为都是被允许的。

图1

ContexIoT 会基于对应用程序静态分析(static analysis)的结果进行安全补丁的方式来为程序加入安全执行的逻辑。如图1所示,被ContexIoT进行过补丁的应用逻辑,当要执行到“开窗”这一敏感行为(sensitive action)时,会将当前开窗行为所在的Context报告给一个ContexIoT的负责进行访问控制的远程服务,该服务会根据不同的Context来做出访问控制的决定:当该敏感行为发生的Context和用户之前允许过的一种Context相符时,该行为被允许; 当某种Context第一次出现时,将它显示给用于,让用户做出决定。在这个例子中,正常行为的Context描述了该开窗行为是被温度的改变而触发的,而恶意行为的Context可以告诉用户该开窗行为是由用户进入睡眠而触发的,用户可以由此做出细粒度的(fine-grained)基于Context的访问控制决定。

为了评估ContexIoT方法的有效性,作者团队基于对之前各种IoT智能手机上的恶意软件技术的系统性调查,针对25种恶意软件常用的绕过访问控制系统的技术,写出了25种针对SmartThings平台的恶意软件,来测试ContexIoT是否能够在运行时检测并阻止这些恶意软件中存在的恶意行为,最终结果证明了该方法的有效性。 这些恶意软件样本可以从该项目的网站上下载[4]。同时,经过对283个应用商店内的Smart Things应用的测量,发现被加入安全逻辑的应用和原始应用相比只额外增加了约10%的延迟,这在大多数物联网的应用情景下可以忽略不计。

在此项目中,我们将前人在访问控制领域提出的一种理想,但难以实现的特性——Contextual integrity,利用IoT应用场景的一些特点进行了实现, 提供了一种能防御绝大多数现在已知的恶意软件技术的新型的访问控制系统,我们的实现目前仅基于三星SmartThings平台,但这种设计适用于目前市面上很多包括Apple HomeKit 在内的应用化的IoT平台。

(责编:杨洁)

(作者单位为密西根大学)

[1] E.Fernandes, J.Jung, and A.Prakash. Security Analysis of Emerging Smart Home Applications. In Proceedings of the 37th IEEE Symposium on Security and Privacy.

[2] Yunhan Jack Jia, et al. ContexIoT: Towards Providing Contextual Integrity to Appified IoT Platforms. Proceedings of the 24th Network and Distributed System Security Symposium (NDSS’17).

[3] P.Wijesekera, A.Baokar, A.HosseiniE, S.Egelman, D.Wagner, and K.Beznosov. Android permission remystified: A field study on contextual integrity. In Proceedings of the 24th USENIX Security Symposium.

[4] Project website. https://sites.google.com/site/iotcontextualintegrity/home

猜你喜欢

访问控制开窗三星
一种跨策略域的林业资源访问控制模型设计
三星Galaxy Note 20 Ultra 5G
“三星”惊现
一种连续管开窗技术实践
生火取暖要开窗
初秋入睡前关好窗
云计算访问控制技术研究综述
ONVIF的全新主张:一致性及最访问控制的Profile A
清晨别急着开窗
V—NAND闪存NVMe固态