1.一种基于SDN的针对IoT网络嗅探攻击的移动目标防御方法,其特征在于,该方法涉及的硬件包括SDN控制器、OpenFlow交换机与物联网终端设备的基本网络设施,同时该方法包括策略更新模块、数据报文处理模块、虚拟地址选择模块与真实地址维护表四个部分,且所述的移动目标防御方法包括下列步骤:步骤1)在基于SDN的IoT网络内,OpenFlow交换机收到所述物联网终端设备的网络访问请求数据包,且当该OpenFlow交换机不知如何处理时,则将该数据包封装成packet_in数据报文发送给SDN控制器;
步骤2)SDN控制器接收到OpenFlow交换机发送的packet_in数据报文时,调用数据报文处理模块对该数据报文进行处理,提取所述数据报文内的{源设备IP地址、源设备MAC地址、目的设备IP地址}三者信息,并与真实地址维护表内的信息进行比较,以此对所述物联网终端设备判断是否正常;
步骤3)如若在跳变周期之内,且对所述物联网终端设备判断结果为异常,执行步骤5);
如若对所述物联网终端设备判断结果为正常,SDN控制器调用策略更新模块,查看并修改跳变周期,用于指导下一个跳变周期,且通过南向接口协议计算所述物联网终端设备之间所有可达的路径,并从中随机选择一条路径用于数据转发;
步骤4)SDN控制器基于数据通信链路上OpenFlow交换机的数量,调用虚拟地址选择模块,从虚拟地址池内选择可用的虚拟IP地址与可用的虚拟MAC地址,对链路上不同的OpenFlow交换机下发不同的数据转发流表,以便在数据传输过程中对所述物联网终端设备的真实IP地址与MAC地址进行修改,以此避免网络嗅探攻击行为的发生;然后执行步骤6);
步骤5)如若在该跳变周期之内,且对所述物联网终端设备判断结果为异常,SDN控制器调用策略更新模块,查看并修改跳变周期,用于指导下一个跳变周期;且当跳变周期低于最小跳变周期时,SDN控制器下发逻辑禁止流表,阻止所述物联网终端设备与网络进行交互;
步骤6)完成基于SDN的针对IoT网络嗅探攻击的移动目标防御方法的部署。
2.根据权利要求1所述的基于SDN的针对IoT网络嗅探攻击的移动目标防御方法,其特征在于,步骤3)所述物联网终端设备判断结果为正常时修改跳变周期的方法是:如果在该跳变周期之内对所述物联网终端设备判断结果为正常,且位于最大跳变周期与最小跳变周期之内,则下一个跳变周期基于先前SDN控制器在跳变周期内统计的不同目的IP地址的数据包数量的权重进行修改,用于指导下一个地址跳变,并逐步恢复到最大跳变周期。
3.根据权利要求1所述的基于SDN的针对IoT网络嗅探攻击的移动目标防御方法,其特征在于,步骤5)所述物联网终端设备判断结果为异常时修改跳变周期的方法是:如果在该跳变周期之内对所述物联网终端设备判断结果为异常,且位于最大跳变周期与最小跳变周期之内,则SDN控制器统计该跳变周期之内不同目的IP地址的数据包数量的权重,并基于此修改跳变周期;如若下一个跳变周期低于最小跳变周期,SDN控制器则会下发逻辑禁止流表,阻止所述物联网终端设备与网络的交互,并将该跳变周期修改为最小跳变周期。
4.根据权利要求1所述的基于SDN的针对IoT网络嗅探攻击的移动目标防御方法,其特征在于,步骤4)中所述的从虚拟地址池内选择可用的虚拟IP地址与可用的虚拟MAC地址的方法是:通过采用加权随机选择算法对虚拟地址的选择添加虚拟地址重复约束条件,并从虚拟地址池内选择可用的虚拟IP地址与可用的虚拟MAC地址,用于部署地址跳变策略。
5.根据权利要求4所述的基于SDN的针对IoT网络嗅探攻击的移动目标防御方法,其特征在于,所述的对虚拟地址的选择添加虚拟地址重复约束条件具体指的是:确保在连续的跳变周期之内链路中相同的虚拟地址有且仅出现一次而建立的虚拟地址重复约束条件;避免在连续的地址跳变周期内链路上出现相同的虚拟地址,局限地址跳变过程中的不可预测性,特别是对于地址范围有限的IPv4地址空间,增强了跳变过程中设备地址的不可预测。
6.根据权利要求2所述的基于SDN的针对IoT网络嗅探攻击的移动目标防御方法,其特征在于,所述地址跳变过程中最大跳变周期为20s,也是网络性能运行最佳跳变周期;最小跳变周期为10s,也是设备地址跳变最优防御周期。
7.根据权利要求2所述的基于SDN的针对IoT网络嗅探攻击的移动目标防御方法,其特征在于,不同目的IP地址的数据包数量的权重值的设置根据以下方法计算:在跳变周期之内,权重值等于统计不同目的IP地址数据包的数量与256的比值。