安全管理IoT设备

2020-12-30 11:59河南许红军
网络安全和信息化 2020年4期
关键词:工具栏交换机列表

■ 河南 许红军

IoT设备面临的安全问题

随着IoT技术的发展,大量IoT设备接入网络,会产生很多安全问题。MUD技术可以帮助管理员了解接入的什么类型设备,产生什么流量,触发什么行为,并据此创建适当的控制策略进行管控。

IoT设备一般只拥有单一或较少用途,因此可以允许其拥有该单一的用途而禁止其他功能,并拦截无关的流量和行为。

例如,对于温度检测设备来说,就仅仅让其可以检测温度信息,禁止执行别的操作。

IoT设备功能较为单一,不会产生较多的流量,所以其性能是被严格约束的,例如只允许其拥有较低的CPU和内存使用率,消耗的电量很低等。所以该设备的任意行为都应该被明确标识。例如IoT厂商应明确告知用户设备的具体用途等。网络管理员需要拥有对网络的使用拥有最终管理权,便于放行或禁止哪些流量。

MUD技术的原理和功能

IoT设备厂商应摆正问题,主动给网络管理员提供指导服务,明确设备具体功能,便于管理员放行相关的流量。

很多IoT设备虽然具有一些自我保护功能,但不可避免的会存在一些漏洞,这很容易被黑客发现和利用,因此需要一个完整的机制来保护脆弱的IoT设备。不同IoT设备可以通过LLDP/DHCP/802.1X等协议的特定字段来发送设备宣告(Device Advertisement)的URL,例如“https://mud.mfg.xxx.com/lightbulb1001/version2.12”等。该URL链接包括设备产生的域名、具体的设备型号和版本,会发送给网络控制设备。实际上,和IoT设备描述紧密相关的是一个基于YANG模型的JSON文件,其中包含了上述URL地址和描述信息、与该设备相关的访问控制列表、设备网关地址、访问的源和目的端口,以及采取的处理动作等信息。IoT设备网关可以是一个由IoT厂商提供的具体设备,也可以是一个互联网地址。

IoT设备厂商可在其中明确定义设备的流量行为,例如,在“access→list 10 permit host controller.mfg.xxx.com”之类的ACL中,就明确了可以方向的流量。在“access→list 11 deny deny”之类的ACL中明确了哪些流量需要禁止。根据该JSON文件,网络管理员可以了解该设备会执行哪些访问行为,并产生哪些网络流量等信息。在该JSON文件中,会定义一些控制器类型。

例 如,“My Controller”参数会定义在企业内部存在控制器,用来放行对应的流量。“Controller”参数会定义在互联网上的通用控制器。“Manufacturer”参数中会定义用于在物联网设备之间通讯的控制器等。

对于Cisco设备来说,当IoT设备上线后,会为其授权TrustSec的标签。例如,“light”标签用来定义照明设备,“Camera”用来定义拍摄设备,“Controller”用来定义控制设备等。这样,可以在上述设备间灵活的控制流量。

MUD的架构和运行机制

MUD是一个IETF标准,用来解决IoT设备的可视化和隔离挑战。通过MUD可以让人了解目标设备是由哪个厂商生产的,具体用途,会产生什么流量,如何对其进行控制和隔离等。MUD的架构包括IoT Asset(物联网设备),Network Device(交换机或WLC),MUD Controller(MUD控制器)和MUD File Server(云端的MUD文件服务器)等组成。

当一个IoT设备首次连接到网络中时,会发送内嵌在LLDP/DHCP/802.1X请求中的MUD URL,当交换机等网络设备接收到该URL后,会将其封装到RADIUS的包中,并传递给ISE等3A服务器。

3A服务器会对其进行解包,并提取该MUD URL,并提交给MUD控制器。

注意,MUD控制器实际上是ISE等3A服务器的一个组成部分。

之后ISE就会通过HTTPS协议联系云端的目标厂商的文件服务器,该文件服务器会返回给ISE一个JSON格式的文件,在其中包含了一些控制策略。ISE会对其进行转换,使其变成ISE支持的控制规则。接着ISE就会推送这些策略(ACL或TrustSec标签等)给交换机等网络设备。

交换机据此可以对IoT设备进行授权,只放行该设备厂商定义好的允许放行的访问流量。这样,该IoT设备就可以安全稳定地工作了。

但是目前的MUD1.0实际上是存在一些限制的,例如其可以支持ISE 2.6版本,IOS的版本为16.9.1或者15.2.6、Catalyst 9k,以 及3850 and CDB、IE4000等交换设备。MUD 1.0还需要手工指定控制策略,无法实现更加高级的自动化控制。随着MUD版本的演进,其逐渐会拥有更加自动化的功能。

准备简单实验环境

在本例中,当某个IoT设备第一次上线后,会向与其连接的交换机发送MUD URL信息,交换机接收后会将其封装到Radius包中,通过HTTPS协议发送给ISE设备。

首先登录到ISE管理界面,点击工具栏中的“Administration→Settings”项,在左侧 选择“Profiling”项,在右侧的“Enable profile for MUD”栏中选 择“Enabled”项,激活MUD设备识别功能。点击工具栏中的“Administration→Network Devices”选项,然后点击“Add”按钮,创建名为“MudDev”的网络设备,在“IP Address”栏中输入该IoT设备的IP(例如“192.168.1.200”)。

在“Device Type”栏中选择“IoT”项,当然,事先需要在ISE中创建名为“IoT”的设备类型,其实就是交换机设备。该选择“RADIUS Authentication Settings”项,在“*Shared Secret”栏中输入密钥,点击“Save”按钮提交修改。这样,ISE才可以接收指定IoT设备的信息。点击工具栏中的“Policy→Policy Sets”项,在名为“Default”的策略右侧点击“>”按钮,在打开窗口中选择“Authentication Policy”项,创建名为“IoT Policy”的规则,凡是属于“IOT”设备类型的都需要到终端进行检查。这样,ISE才可以接收MUD URL 信息。

在ISE中自动创建识别策略

点击工具栏中的“Operations→Live Logs”项,查看实时日志信息,在其中按照特定的排序规则(例如只显示最近60秒日志等),可以看到交换机发送来的MUD URL信息。点击工具栏中的“Context Visibility→Endpoints”项,在列表中选择对应终端的MAC地址项目,在其属性窗口中打开“Attrinutes”面板,在“Endpoint Policy”栏中显示ISE已经为其指派的策略,在“Identity Group Assignment”栏中显示设备识别自动产生的组信息。

这说明ISE已经可以动态识别与该IoT设备关联的JSON文件,例如“https://www.genisyslighting.com/files/MUD/xxxxxx.json”等,并自动为其匹配策略并将创建设备识别组,其中的“xxxxxx”表示具体的文件名称。点击工具栏中的“Adminitration→Identity→Groups”项,在左侧 选择“Endpoint Identiry Groups→Profile”项,在列表中选择ISE为其自动创建的组,在右侧可以看到该IoT设备的MAC地址已经保存在该组中了。点击工具栏中的“Policy→Profiling”项,在其中可以看到ISE针对该IoT设备自动产生的识别策略。

在本例中可以可以看到,ISE针对该IoT设 备创建的组和策略的名称是相同的,例 如“IOT-MUDgenisyslighting_files_MUD_xxxxxx_json”。

即ISE可以自动执行设备识别,创建对应的策略和组,并将该设备放到该组中。点击工具栏中的“Policy→Policy Sets”项,在名为“Default”的策略右侧点击“>”按钮,在打开窗口中打开“Authentication Policy”项,在打开窗口中选择“Authoration Policy”项,在其中创建所需的授权策略(例如名称为“IoT_Ahthor”),凡是上述组中的设备,都赋予其一个标签(例如名称为“IoT_device”),便于基于该标签执行访问控制操作。

中值和均值相结合的方法,在图像中先假设某点灰度值实际分布满足正态分布,如果像点灰度值处在一定范围内,则可进行均值滤波处理;如果像点灰度值没有处在这个范围内,则要进行中值滤波。

对于目前的MUD 1.0来说,还无法根据相应的JSON文件来自动产生所需的访问控制策略,这里需要手工进行操作。

解析JSON规则信息

打开“https://www.genisyslighting.com/files/MUD/xxxxxx.json”地址,显示该JSON文件的具体内容。打开“https://www.json.cn/”地址,可以在线检测其完整性。查看该JSON文件内容,可以看到其中包含的诸如“from-devicepolicy”,“to-devicepolicy”等控制策略信息。进行分析后,对于内部控制器去往设备的流量来说,其源端口为UDP 9760,目的端口为UDP 30303。从设备之间的流量来说,其源和目的端口都是TCP 9760,这些流量是需要放行的。

在ISE中创建TrustSec标签

在ISE界面工具栏点击“Work Centers→ TrustSec→Components”项,在左侧选择“Security Groups”,在右侧点击“Add”,分别创建“IoT_Controller”和“IoT_device”两个标签。在左侧选择“Security Group ACLS”,在右侧点击“Add”,创建“Controller_to_IoT”的ACL,在“IP Version”栏 中选择“IPv4”,在“*Security Group ACL content”输入:

permit udp dst eq 9760

permit udp src eq 30303

deny ip

按照同样方法创建名为“IoT_to_Controller”的项目,在“IP Version”栏中选 择“IPv4”,在“*Security Group ACL content”中输入:

permit udp src eq 9760

permit udp dst eq 30303

deny ip

点击“Save”,放行从设备到内部控制器间的流量。

同样,创建名为“IoT_to_IoT”的项目,在“IP Version”栏中选择“IPv4”,在“*Security Group ACL content”栏中输入:

permit TCP src eq 9760 dst eq 9760

deny ip

点击“Save”,放行设备间的流量,其他流量禁止放行。

在ISE中指派授权规则

在工具栏上点击“Work Centers→TrustSec→TrustSec Policy”项,在左侧选择“Egress Policy→Matrix”项,在右侧显示所有标签信息。为便于显示,在窗口右上角的“Show”列表中选择“Create custom view”项,创建名为“IoT”的过滤器,在“Source Security Groups”栏中选择上述“IoT_Controller”和“IoT_device”标签,点击“>”按钮,添加到“Show”列表。

同理,在“Destination Security Groups”列表分别选择“IoT_Controller”和“IoT_device”标签,点击“>”按钮,添加到“Show”列表中。点“Save”创建该过滤器。

这样,在上述“Show”列表中选择该过滤器,就仅仅显示这两个标签的流量。在窗口中横向为“Destination”设备,纵向为“Source”设备,在横向的“IoT_device”和纵向的“IoT_device”坐标上点击,在打开窗口中的“Assign Security Group ACLs”中分别选择“Select an SGACL”和“IoT_to_IoT”,允许放行设备之间流量,点击“Save”保存配置信息。

在横向“IoT_controller”和纵向的“IoT_device”坐标上点击,在打开窗口中的“Assign Security Group ACLs”中分别选择“Select an SGACL”和“IoT_to_Controller”项,允许设备到内部控制器之间的流量,点击“Save”保存。在横向的“IoT_device”和纵向的“IoT_Controller”坐标上点击,在打开窗口中的“Assign Security Group ACLs”中分别选择“Select an SGACL”和“Controller_to_IoT”项,放行内部控制器到设备之间的流量,点击“Save”保存。

在横向“IoT_Controller”和纵向的“IoT_Controller”坐标上点击,在打开窗口中的的“Status”列表中选择“Disabled”项,禁止在控制器之间放行流量。在工具栏上点击“Policy→Policy Sets”项,在授权策略窗口中打开“Authorization Policy”列表,在其中添加一条授权策略(例如名为“IoT_Author”),针对上述ISE自动创建的名为“IOT→MUD→genisyslighting_files_MUD_79590001A4_json”的组,赋予其名为“IoT_device”的标签。

这样当IoT设备上线后,交换机会得到其发送的MUD URL信息,然后封装到Radius包中,通过HTTPS协议发送给ISE设备。之后ISE的TrustSEC机制就会发挥作用,从而实现标签间的访问控制功能,并向交换机推送授权信息。在ISE管理界面中选择“Operations→RADIUS→Live Logs”项,在日志中即可查看到相关的授权信息。

猜你喜欢
工具栏交换机列表
面向未来网络的白盒交换机体系综述
“玩转”西沃白板
学习运用列表法
局域网交换机管理IP的规划与配置方案的探讨
扩列吧
更换汇聚交换机遇到的问题
基于地铁交换机电源设计思考
列表画树状图各有所长
设计一种带工具栏和留言功能的记事本
2011年《小说月刊》转载列表