Zheng Fang, Hao Fu, Tianbo Gu, Pengfei Hu, Jinyue Song, T. Jaeger, P. Mohapatra
{"title":"IOTA:分析物联网系统级安全性的框架","authors":"Zheng Fang, Hao Fu, Tianbo Gu, Pengfei Hu, Jinyue Song, T. Jaeger, P. Mohapatra","doi":"10.1109/iotdi54339.2022.00017","DOIUrl":null,"url":null,"abstract":"Most IoT systems involve IoT devices, communication protocols, remote cloud, IoT applications, mobile apps, and the physical environment. However, existing IoT security analyses only focus on a subset of all the essential components, such as device firmware or communication protocols, and ignore IoT systems' interactive nature, resulting in limited attack detection capabilities. In this work, we propose Iota, a logic programming-based framework to perform system-level security analysis for IoT systems. Iota generates attack graphs for IoT systems, showing all of the system resources that can be compromised and enumerating potential attack traces. In building Iota, we design novel techniques to scan IoT systems for individual vulnerabilities and further create generic exploit models for IoT vulnerabilities. We also identify and model physical dependencies between different devices as they are unique to IoT systems and are employed by adversaries to launch complicated attacks. In addition, we utilize NLP techniques to extract IoT app semantics based on app descriptions. Iota automatically translates vulnerabilities, exploits, and device dependencies to Prolog clauses and invokes MulVAL to construct attack graphs. To evaluate vulnerabilities' system-wide impact, we propose two metrics based on the attack graph, which provide guidance on fortifying IoT systems. Evaluation on 127 IoT CVEs (Common Vulnerabilities and Exposures) shows that IOTA's exploit modeling module achieves over 80% accuracy in predicting vulnerabilities' preconditions and effects. We apply Iota to 37 synthetic smart home IoT systems based on real-world IoT apps and devices. Experimental results show that our framework is effective and highly efficient. Among 27 shortest attack traces revealed by the attack graphs, 62.8% are not anticipated by the system administrator. It only takes 1.2 seconds to generate and analyze the attack graph for an IoT system consisting of 50 devices.","PeriodicalId":314074,"journal":{"name":"2022 IEEE/ACM Seventh International Conference on Internet-of-Things Design and Implementation (IoTDI)","volume":"12 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2022-02-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":"{\"title\":\"IOTA: A Framework for Analyzing System-Level Security of IoTs\",\"authors\":\"Zheng Fang, Hao Fu, Tianbo Gu, Pengfei Hu, Jinyue Song, T. Jaeger, P. Mohapatra\",\"doi\":\"10.1109/iotdi54339.2022.00017\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Most IoT systems involve IoT devices, communication protocols, remote cloud, IoT applications, mobile apps, and the physical environment. However, existing IoT security analyses only focus on a subset of all the essential components, such as device firmware or communication protocols, and ignore IoT systems' interactive nature, resulting in limited attack detection capabilities. In this work, we propose Iota, a logic programming-based framework to perform system-level security analysis for IoT systems. Iota generates attack graphs for IoT systems, showing all of the system resources that can be compromised and enumerating potential attack traces. In building Iota, we design novel techniques to scan IoT systems for individual vulnerabilities and further create generic exploit models for IoT vulnerabilities. We also identify and model physical dependencies between different devices as they are unique to IoT systems and are employed by adversaries to launch complicated attacks. In addition, we utilize NLP techniques to extract IoT app semantics based on app descriptions. Iota automatically translates vulnerabilities, exploits, and device dependencies to Prolog clauses and invokes MulVAL to construct attack graphs. To evaluate vulnerabilities' system-wide impact, we propose two metrics based on the attack graph, which provide guidance on fortifying IoT systems. Evaluation on 127 IoT CVEs (Common Vulnerabilities and Exposures) shows that IOTA's exploit modeling module achieves over 80% accuracy in predicting vulnerabilities' preconditions and effects. We apply Iota to 37 synthetic smart home IoT systems based on real-world IoT apps and devices. Experimental results show that our framework is effective and highly efficient. Among 27 shortest attack traces revealed by the attack graphs, 62.8% are not anticipated by the system administrator. It only takes 1.2 seconds to generate and analyze the attack graph for an IoT system consisting of 50 devices.\",\"PeriodicalId\":314074,\"journal\":{\"name\":\"2022 IEEE/ACM Seventh International Conference on Internet-of-Things Design and Implementation (IoTDI)\",\"volume\":\"12 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2022-02-05\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"5\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2022 IEEE/ACM Seventh International Conference on Internet-of-Things Design and Implementation (IoTDI)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/iotdi54339.2022.00017\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2022 IEEE/ACM Seventh International Conference on Internet-of-Things Design and Implementation (IoTDI)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/iotdi54339.2022.00017","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 5
摘要
大多数物联网系统涉及物联网设备、通信协议、远程云、物联网应用程序、移动应用程序和物理环境。然而,现有的物联网安全分析只关注所有基本组件的一个子集,例如设备固件或通信协议,而忽略了物联网系统的交互性,导致攻击检测能力有限。在这项工作中,我们提出了Iota,一个基于逻辑编程的框架,用于对物联网系统进行系统级安全分析。Iota为物联网系统生成攻击图,显示所有可能被破坏的系统资源,并列举潜在的攻击痕迹。在构建Iota时,我们设计了新的技术来扫描物联网系统中的单个漏洞,并进一步创建物联网漏洞的通用利用模型。我们还识别和模拟不同设备之间的物理依赖关系,因为它们是物联网系统所独有的,并被对手用来发动复杂的攻击。此外,我们利用NLP技术基于应用描述提取物联网应用语义。Iota自动将漏洞、漏洞利用和设备依赖转换为Prolog子句,并调用MulVAL来构建攻击图。为了评估漏洞对整个系统的影响,我们提出了两个基于攻击图的指标,为加强物联网系统提供指导。对127个IoT cve (Common Vulnerabilities and Exposures)的评估表明,IOTA的漏洞建模模块在预测漏洞的前提条件和影响方面准确率达到80%以上。我们将Iota应用于37个基于现实世界物联网应用和设备的合成智能家居物联网系统。实验结果表明,该框架是有效的、高效的。在攻击图显示的27条最短攻击轨迹中,62.8%是系统管理员没有预料到的。生成并分析一个由50台设备组成的物联网系统的攻击图只需要1.2秒。
IOTA: A Framework for Analyzing System-Level Security of IoTs
Most IoT systems involve IoT devices, communication protocols, remote cloud, IoT applications, mobile apps, and the physical environment. However, existing IoT security analyses only focus on a subset of all the essential components, such as device firmware or communication protocols, and ignore IoT systems' interactive nature, resulting in limited attack detection capabilities. In this work, we propose Iota, a logic programming-based framework to perform system-level security analysis for IoT systems. Iota generates attack graphs for IoT systems, showing all of the system resources that can be compromised and enumerating potential attack traces. In building Iota, we design novel techniques to scan IoT systems for individual vulnerabilities and further create generic exploit models for IoT vulnerabilities. We also identify and model physical dependencies between different devices as they are unique to IoT systems and are employed by adversaries to launch complicated attacks. In addition, we utilize NLP techniques to extract IoT app semantics based on app descriptions. Iota automatically translates vulnerabilities, exploits, and device dependencies to Prolog clauses and invokes MulVAL to construct attack graphs. To evaluate vulnerabilities' system-wide impact, we propose two metrics based on the attack graph, which provide guidance on fortifying IoT systems. Evaluation on 127 IoT CVEs (Common Vulnerabilities and Exposures) shows that IOTA's exploit modeling module achieves over 80% accuracy in predicting vulnerabilities' preconditions and effects. We apply Iota to 37 synthetic smart home IoT systems based on real-world IoT apps and devices. Experimental results show that our framework is effective and highly efficient. Among 27 shortest attack traces revealed by the attack graphs, 62.8% are not anticipated by the system administrator. It only takes 1.2 seconds to generate and analyze the attack graph for an IoT system consisting of 50 devices.