引 言 近年来,随着网络通信技术的不断发展和各种智能终端设备的飞速普及,实现海量终端间互联互通的物联网(Internet ofThings,IoT)正在进行广泛部署[1]。然而,随着连接设备的不断增加与连接规模以及应用场景的不断扩展,物联网庞大的网络体系和其中流转的海量数据正面临着巨大的安全挑战,俨然已成为制约物联网发展的瓶颈之一,无论是信息泄露、系统破坏或者被外部控制,都会造成严重损失[2,3]。因此,物联网数据安全与隐私保护问题受到了愈来愈多的关注,也成为了物联网领域的研究热点之一。 相较于传统网络,物联网的感知节点大多部署于无人值守的环境中,具有能力脆弱、资源受限等特点,导致传统的网络安全防御手段不再适用,从而使得物联网的安全问题具有很大的特殊性。因此,在解决物联网安全问题时,必须根据物联网自身的特点设计相关的安全机制。 基于上述需求,本文提出了一种基于软件定义网络(SDN) 的异构型物联网安全解决方案,应用SDN 技术在物联网的网络层和应用层,将网络控制与业务转发相分离,通过网络虚拟化,将网络安全作为一种应用面向物联网用户提供服务,实现对网络安全资源的集中调度、网络安全标准的统一整合和网络安全策略的灵活配置[4,5]。 1 异构型物联网面临的主要安全问题 随着物联网的广泛部署,在同一环境中经常会存在多种不同类型的物联网互联以共享数据,即形成了异构型网络。在异构型物联网中,由于感知设备、网络拓扑、数据类型、传输协议各异,导致面临的安全问题更加复杂棘手。 物联网安全的总体需求是物理安全、信息采集安全、信息传输安全和信息处理安全的综合,安全的最终目标是确保信息的机密性、完整性、真实性和网络容错性。因此,结合异构型物联网的连接和管理(DCM)模式,本节给出了相应的安全层次模型,如图 1 所示,并对每层所面临的安全问题进行系统阐述[6]。 根据功能的不同,物联网网络体系结构主要分为 3 个逻辑层。底层是进行信息采集的感知层,中间层是进行数据传输的网络层,顶层则是包括管理服务层和综合应用层的应用/ 中间件层。 1.1 感知层的安全问题 物联网感知层用以智能感知外界信息,包括信息采集、捕获和物体识别。该层的典型设备包括 RFID 装置和各类传感器(红外、超声、温度、湿度、速度传感器)等。 传感器作为物联网的基础单元,决定着物联网感知任务的成败,由于感知层的泛Sensor 无处不在,导致IoT 终端不可信,主要存在如下安全问题: (1) 终端在户外分散安装,易被接触又未纳入管理,容易遭到物理攻击、篡改和仿冒; (2) 终端驱动的不可信,可能导致泄密和被控制; (3) OS或软件过时,漏洞无法及时修复; (4) 考虑到成本问题,终端资源计算能力有限,防病毒等传统的保护手段和高安全技术可能无法应用。 1.2 网络层的安全问题 物联网网络层主要实现信息的转发和传送,它将感知层获取的信息传送到远端,为数据在远端进行智能处理和分析决策提供强有力的支持。考虑到物联网本身具有专业性的特征, 其基础网络可以是互联网,也可以是具体的某个行业网络。网络层IP化和融合化打开了威胁的大门,因此物联网的网络层安全问题主要体现在如下几个方面: (1) 无线协议本身存在缺陷,如缺乏有效认证可能导致接入侧泄密; (2) 封闭的工业应用与协议无法被安全设备识别,被篡改和入侵后无法及时发现; (3) 未加密的通信过程容易遭受劫持、重放、篡改和窃听等中间人攻击; (4) IP化后面临IP体系的安全问题,如来自互联网的攻击和入侵。 1.3 应用层的安全问题 物联网应用是信息技术与行业专业技术紧密结合的产物。物联网应用层充分体现了物联网智能处理的特点,涉及业务管理、中间件、数据挖掘等技术。考虑到物联网涉及多领域、多行业,因此,广域范围的海量数据信息处理和业务控制策略将在安全性和可靠性方面面临巨大挑战,特别是业务控制、管理和认证机制、中间件以及隐私保护等安全问题尤为突出,主要包括以下几个方面: (1) 平台层管理的设备分散繁多,设备升级过程和安全状态等难以管理; (2) 新的通信协议可能引起应用层的安全问题,导致出现漏洞,比如畸形攻击、泛洪攻击等; (3) 新平台自身存在的漏洞和 API开放等容易引入新的风险; (4) 越权访问导致隐私和安全凭证等重要数据有被泄露的风险; (5) 应用丰富、数据中心出口多,DDoS等网络攻击风险高; (6) 参差不齐的IoT应用存在不可信风险。 此外,设备、网络和应用的厂商存在差异,导致单一厂商无法进行全面的安全防护,甚至无法看到整个攻击面。 综上所述,异构型物联网的各个层面均面临多种安全威胁,即使分别保证感知层、网络层和应用层的安全,也无法保证整个物联网的安全。这是因为物联网是融多层于一体的大系统,许多安全问题具有多层次、多维度等特点,而传统的安全防御手段难以有效应对物联网中的各种安全威胁,因此需要研究建立一体化的端到端安全防御体系,确保即使物联网在遭遇攻击时整个系统仍可持续运行。 2 基于SDN的异构型物联网安全方案 SDN 采用与传统网络截然不同的控制架构,解耦网络控制层面和转发层面,采用集中控制替代原有的分布式控制,并通过开放和可编程接口实现 软件定义 。基于SDN 的新型物联网架构如图 2 所示。与传统物联网架构相比,基于SDN 的物联网架构具有以下 3 个显著优势: (1) 统一控制物联网中的海量数据在泛感知节点与分布式数据中心间进行相互传递; (2) 统一协调全网的存储、计算等资源; (3) 统一对全网数据进行处理并做出整体决策。 本文将 SDN 引入异构型物联网中,借助网络虚拟化和OpenFlow 技术 [7] 与OPenFlow 安全网关、SDN 控制器、安全控制器 / 服务器、应用层网络安全服务,构建全网统一安全监控管理平台[8],通过全网态势感知,及时发现安全异常,并统一调度全网安全设备,实现对已知和未知威胁的主动防御, 实现端到端的一体化安全防御体系。基于SDN 的异构型物联网安全防御系统方案如图 3 所示。 2.1 OpenFlow安全网关 在异构型物联网中,使用网关可以支持多种不同类型物联网互联,并且能够消除不同物联网中多种感知设备所采集数据类型间存在的差异,由此可简化整个异构型网络架构和其中的数据通信管理。基于 OpenFlow 的安全网关包含多种流量表和群组表,可以执行数据包的查询和转发等操作,以及实现不同类型物联网的互联,向下为感知层传感器接入网络提供接口,向上通过南向接口支持上层 SDN 控制器规划全网流量路径,可任意增加、更新或者删除网关中的流规则,实现高效的全网流量管理。 2.2 SDN控制器、安全控制器/服务器 SDN 控制器具备对网络进行集中管控的能力,SDN 控制器通过标准化的南向接口协议OpenFlow管理底层的物理网络和设置的虚拟网络,通过北向API接口向上层提供服务,屏蔽了具体物理设备的细节。在控制层增加网络安全系统模块, 主要包括网络安全控制器和安全策略服务器。网络安全控制器是一个安全服务执行单元,监控下层网络的安全状态,并根据网络和用户需要执行相应的安全策略等。安全策略服务器主要负责根据用户申请的业务情况向上层安全应用订阅相关服务,并存储上层应用提供的安全策略,供网络安全控制器查询使用。 2.3 应用层网络安全服务 在SDN 控制层的网络安全系统模块上运行着不同的应用层网络安全服务,可实现流量监控,威胁 / 异常检测和威胁 / 异常消除等功能。处理流程可以归结为以下几方面: (1) 数据收集分析服务:数据收集分析服务通过下层SDN控制器收集全网流量数据,并进行实时数据统计分析,然后在周期时隙内将分析结果传递给威胁/异常检测服务模块; (2) 威胁…