2019-04-02 08:28:32 +00:00
|
|
|
|
---
|
|
|
|
|
title: 基于采集规则引擎的物联网设备发现方法
|
|
|
|
|
date: 2018-12-23 11:52:06
|
|
|
|
|
tags:
|
|
|
|
|
- USENIX
|
|
|
|
|
- 数据挖掘
|
|
|
|
|
- 自然语言处理
|
|
|
|
|
categories:
|
|
|
|
|
- 顶会论文
|
2021-04-10 19:18:56 +00:00
|
|
|
|
description: 提前发现、登记和注释物联网设备
|
2019-04-02 08:28:32 +00:00
|
|
|
|
---
|
|
|
|
|
***论文来源:***USENIX SECURITY 2018:Acquisitional Rule-based Engine for Discovering Internet-of-Things Devices
|
|
|
|
|
***下载:***
|
|
|
|
|
[原文pdf](https://www.usenix.org/conference/usenixsecurity18/presentation/feng)
|
|
|
|
|
[中文slides](https://res.cloudinary.com/dozyfkbg3/raw/upload/v1553314438/ARE/Rule-based_engine.pptx)
|
|
|
|
|
|
|
|
|
|
## 论文解读
|
|
|
|
|
### 概要:
|
|
|
|
|
* 物联网(IoT)设备的快速增长的格局为其管理和安全性带来了重大的技术挑战,因为这些物联网设备来自不同的设备类型,供应商和产品模型。
|
|
|
|
|
* 物联网设备的发现是表征,监控和保护这些设备的先决条件。然而,手动设备注释阻碍了大规模发现,并且基于机器学习的设备分类需要具有标签的大型训练数据。因此,大规模的自动设备发现和注释仍然是物联网中的一个悬而未决的问题。
|
|
|
|
|
* 这篇文章提出了一种基于采集规则的引擎(ARE),它可以自动生成用于在没有任何训练数据的情况下发现和注释物联网设备的规则。ARE通过利用来自物联网设备的应用层响应数据和相关网站中的产品描述来构建设备规则,以进行设备注释。我们将事务定义为对产品描述的唯一响应之间的映射。
|
|
|
|
|
* 为了收集交易集,ARE提取响应数据中的相关术语作为抓取网站的搜索查询。ARE使用关联算法以(类型,供应商和产品)的形式生成物联网设备注释的规则。我们进行实验和三个应用程序来验证ARE的有效性。
|
|
|
|
|
|
|
|
|
|
### 背景与动机:
|
|
|
|
|
* 物联网蓬勃发展,造就了物联网设备的广泛应用,它不仅种类繁多,包括摄像头、打印机、路由器、电视盒子、工控系统、医疗设备等,而且数量庞大,据统计,每天就会新增5500000台物联网设备。
|
|
|
|
|
* 但是由于设备脆弱、缺乏管理和配置不当,物联网设备相比传统计算机要更不安全,比如之前爆发的Mirai僵尸网络,给美国造成了重大的损失。因此,为了更主动地保护IOT设备,提前发现、登记和注释物联网设备成为先决条件。
|
|
|
|
|
* 设备注释的内容通常为“设备类型(e.g.,routers) + 供应商(e.g.,CISCO) + 产品型号(e.g.,TV-IP302P)”,传统生成设备注释的方法有基于指纹的,也有使用标志获取的,前者对数据集和大量设备模型的要求很高,而后者需要专业知识的人工方式,因此不可能用于大规模注释而且很难去维护更新。
|
|
|
|
|
|
|
|
|
|
![](https://res.cloudinary.com/dozyfkbg3/image/upload/v1553313806/ARE/1.png)
|
|
|
|
|
|
|
|
|
|
所以,作者希望提出一种减少对数据集和人工依赖的注释方式。本文的方法主要基于两个事实,第一个Figure 1是制造商通常会将相关信息硬编码到IOT设备,第二个Figure 2是有许多网站(如产品测评)会描述设备产品。从第一个事实,我们可以从应用层数据包获取关键词,然后根据这些关键词依据第二个事实进行网页爬虫,以获取网页上的相关描述,然后对这些描述进行自然语言处理和数据挖掘,从而建立起基于规则的映射。
|
|
|
|
|
|
|
|
|
|
### 核心工作—Rule Miner:
|
|
|
|
|
|
|
|
|
|
![](https://res.cloudinary.com/dozyfkbg3/image/upload/v1553313904/ARE/2.png)
|
|
|
|
|
|
|
|
|
|
Rule Miner由三个部分构成,Transaction set是一对由应用层数据和相关网页组成的文本单元,它生成了一种规则: ,其中A是从应用层数据包中提取的一些特征,B是从相关网页抓取的设备描述;Device entity recognition结合了基于语料库的NER和基于规则的NER(命名实体识别),前者解决了设备类型和供应商名,后者使用正则表达式识别出产品型号。但是由于一个不相干的网页也可能包含设备类型的关键词(如switch),以及一个短语可能因为满足正则表达式而被认为是型号所以表现并不好,但好在实体与实体之间具有很高的依赖性,这三个元素常常一起出现。数据挖掘算法Apriori algorithm用于从Transaction中学习“关系”。
|
|
|
|
|
|
|
|
|
|
### 完整架构和应用
|
|
|
|
|
![](https://res.cloudinary.com/dozyfkbg3/image/upload/v1553313904/ARE/4.png)
|
|
|
|
|
|
|
|
|
|
完整的ARE除了核心Rule Miner之外,还有Transaction Collection用于收集响应数据和网络爬虫,Rule Library用于存储生成的规则,Planner用于更新规则。
|
|
|
|
|
作者主要将ARE应用于三个方面,一是互联网范围的设备测量统计,二是对受损设备进行检测,三是对易受攻击的设备进行分析。
|
|
|
|
|
![](https://res.cloudinary.com/dozyfkbg3/image/upload/v1553313946/ARE/6.png)
|
|
|
|
|
之后对ARE的效果与Nmap进行比较和评估,从产生规则的数量、规则的准确率和覆盖率、动态学习规则的能力以及时间代价,ARE都要优于Nmap。
|
|
|
|
|
![](https://res.cloudinary.com/dozyfkbg3/image/upload/v1553313805/ARE/5.png)
|
|
|
|
|
|
|
|
|
|
### 工作总结:
|
|
|
|
|
- 提出ARE的框架:不需要数据集和人工干预,自动生成用于IOT设备识别的规则。
|
|
|
|
|
- 实现了ARE的原型并评估了它的效果:ARE在一周内生成了大量的规则,而且IOT设备识别的细粒度超过现有工具。
|
|
|
|
|
- 应用于三个场景中,主要发现有:大量IOT设备在互联网中可以抵达;成千上万的IOT设备易受攻击且暴露给了公众。
|