CN106453298B - 一种扫描防御方法和装置 - Google Patents

一种扫描防御方法和装置 Download PDF

Info

Publication number
CN106453298B
CN106453298B CN201610875653.3A CN201610875653A CN106453298B CN 106453298 B CN106453298 B CN 106453298B CN 201610875653 A CN201610875653 A CN 201610875653A CN 106453298 B CN106453298 B CN 106453298B
Authority
CN
China
Prior art keywords
destination host
address
flow table
icmp
host
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610875653.3A
Other languages
English (en)
Other versions
CN106453298A (zh
Inventor
王玉龙
张之义
贾哲
张林杰
苏森
双锴
徐鹏
张亚强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
CETC 54 Research Institute
Original Assignee
Beijing University of Posts and Telecommunications
CETC 54 Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications, CETC 54 Research Institute filed Critical Beijing University of Posts and Telecommunications
Priority to CN201610875653.3A priority Critical patent/CN106453298B/zh
Publication of CN106453298A publication Critical patent/CN106453298A/zh
Application granted granted Critical
Publication of CN106453298B publication Critical patent/CN106453298B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种扫描防御方法和装置,接收交换机传送攻击方发送的通过OpenFlow协议封装的数据包,解析OpenFlow协议封装的数据包,获得所述数据包中目的主机的IP地址;修改所述目的主机对应的OpenFlow流表,并将所述OpenFlow流表下发给所述交换机;接收交换机传送攻击方发送的ICMP协议封装的请求包,解析ICMP协议封装的请求包,获取ICMP协议封装的请求包中目的主机IP地址;将所述目的主机IP地址正常添加到对应的ICMP流表中,将所述ICMP流表下发给该交换机。因此,所述扫描防御方法和装置解决攻击者和防御者之间人力、物力上的不对称性,以及网络安全存在高风险、高成本的问题。

Description

一种扫描防御方法和装置
技术领域
本发明涉及网络安全技术领域,特别是指一种扫描防御方法和装置。
背景技术
移动目标防御(MTD)技术是近年来美国科学技术委员会提出的网络空间“改变游戏规则”的革命性技术,它完全不同于以往的网络安全研究思路,通过多样的和不断变化的网络构建和配置来增加攻击者的攻击难度及代价,有效限制脆弱性暴露及被攻击的机会。以此将为赛博安全战中的网络安全部队增加一个新的同盟———计算机网络自身。
除个别例外,传统的计算机网络都设计工作于相对静态的环境。大多重要服务和网络依赖于设计好的结构,支持部署和配置好的功能和服务。这些支持基础设施包括从诸如计算机、路由器和交换机等物理设施到诸如域名服务、注册和认证等高层服务。一旦部署,软件系统及其全部支持基础设施必须保持良好,防止故障并应对攻击。从理论上说,攻击者有无限的时间研究这些结构设施及其潜在的弱点,以达成目的。而防御者与之相比,有显著的不对称性,一般只是限于构筑监控和防护,阻断恶意攻击和未授权访问。攻击者对网络进行侦察,规划攻击,按时间安排发起攻击。防御者则只能尽可能地应对,这是网络防御的常态。最好的情况是,经过良好训练的人员对网络的活动、用户及可能的攻击者进行监控,对有关安全时间进行检测和回应,之后用以改进其防御措施以防范未来的网络攻击。这种模式对防御者而言成本越来越高,攻击者可以选择攻击时间和目标,防御者却要随时保护所有的设施,防止任何可能的攻击。
虽然研究人员在网络安全各个方面逐步取得了重大进步,包括自适应机制、提高可视化和设定密码等更好的方法,但并没有改变基本的攻击者-防御者范式,目前人们面对在线攻击者仍感到束手无策。
发明内容
有鉴于此,本发明的目的在于提出一种扫描防御方法和装置,解决攻击者和防御者之间人力、物力上的不对称性,以及网络安全存在高风险、高成本的问题。
基于上述目的本发明提供扫描防御方法,包括步骤:
接收交换机传送攻击方发送的通过OpenFlow协议封装的数据包,解析OpenFlow协议封装的数据包,获得所述数据包中目的主机的IP地址;
修改所述目的主机对应的OpenFlow流表,并将所述OpenFlow流表下发给所述交换机;
接收交换机传送攻击方发送的ICMP协议封装的请求包,解析ICMP协议封装的请求包,获取ICMP协议封装的请求包中目的主机IP地址;
将所述目的主机IP地址正常添加到对应的ICMP流表中,将所述ICMP流表下发给该交换机。
在本发明的一些实施例中,所述修改所述目的主机对应的OpenFlow流表,包括:
根据预先设置的丢弃或者正常概率值,将所述目的主机对应的OpenFlow流表中的动作项配置为丢弃或者正常。
在本发明的一些实施例中,解析OpenFlow协议封装的数据包之后,包括:
拆分OpenFlow协议封装的数据包,获得ARP报头;
拆分ARP报头,获得APR报头中所有目的主机的IP地址;
判断ARP报头中每个目的主机IP地址是否存在于在线主机列表中,若存在则根据预先设置的丢弃或者正常概率值,将所述目的主机对应的OpenFlow流表中的动作项配置为丢弃或者正常;若不存在则将ARP报头中的该目的主机添加到预设的虚拟在线主机列表中,并伪造该目的主机的Mac地址,然后建立该目的主机对应的OpenFlow流表。
在本发明的一些实施例中,将ARP报头中的所述目的主机添加到预设的虚拟在线主机列表时,随机生成一个Mac地址,然后将所述Mac地址对应所述目的主机的IP地址一起存储到虚拟在线主机列表中。
在本发明的一些实施例中,将ARP报头中的所述目的主机添加到预设的虚拟在线主机列表时,根据预设的Mac地址生成概率值,随机生成一个Mac地址,否则所述Mac地址直接设置为默认值。
在本发明的一些实施例中,拆分OpenFlow协议封装的数据包,还包括:
判断是否包含ARP报头,若包含则拆分ARP报头,获得APR报头中所有目的主机的IP地址;若不包含则不予执行。
在本发明的一些实施例中,获取ICMP协议封装的请求包中目的主机IP地址,还包括:
判断所述目的主机IP地址是否存在于在线主机列表中,若存在则将所述目的主机IP地址正常添加到对应的ICMP流表中,将所述ICMP流表下发给所述交换机;若不存在则根据所述的目的主机IP地址,组装一个伪造的ICMP回复包下发给该交换机。
在本发明的一些实施例中,所述伪造ICMP回复包时,以ICMP协议封装的请求包中的目的主机的IP地址为ICMP回复包中的源地址,而ICMP协议封装的请求包中的源地址为ICMP回复包中的目的地址。
在本发明的一些实施例中,接收交换机传送攻击方发送的通过OpenFlow协议封装的数据包之前,还包括:
设置周期时间,并启动监测进程;
当监测到执行时间大于或等于所述的周期时间时,将OpenFlow流表和ICMP流表以及虚拟主机列表清空。
在另一方面,根据上面的实施例中所述的扫描防御方法,本发明还提供了一种扫描防御装置,包括:
OpenFlow数据包接收单元,用于接收交换机传送攻击方发送的通过OpenFlow协议封装的数据包,解析OpenFlow协议封装的数据包,获得所述数据包中目的主机的IP地址;
OpenFlow流表处理单元,用于修改所述目的主机对应的OpenFlow流表,并将所述OpenFlow流表下发给所述交换机;
ICMP请求包接收单元,用于接收交换机传送攻击方发送的ICMP协议封装的请求包,解析ICMP协议封装的请求包,获取ICMP协议封装的请求包中目的主机IP地址;
ICMP流表处理单元,用于将所述目的主机IP地址正常添加到对应的ICMP流表中,将所述ICMP流表下发给该交换机。
从上面所述可以看出,本发明提供的扫描防御方法和装置,通过接收交换机传送攻击方发送的通过OpenFlow协议封装的数据包时,修改所述目的主机对应的OpenFlow流表,并将所述OpenFlow流表下发给所述交换机;而当接收交换机传送攻击方发送的ICMP协议封装的请求包时,将所述目的主机IP地址正常添加到对应的ICMP流表中,将所述ICMP流表下发给该交换机。从而,能够大幅度提高网络安全性,保护网络中的主机用户。
附图说明
图1为本发明第一实施例中扫描防御方法流程示意图;
图2为本发明可参考的实施例中扫描防御方法流程示意图;
图3为本发明可参考的实施例中攻击方与攻击目标之间的关系示意图;
图4为本发明实施例中扫描防御装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
参阅图1所示,为本发明实施例中扫描防御方法流程示意图,所述扫描防御方法包括:
步骤101,接收交换机传送攻击方发送的通过OpenFlow协议封装的数据包。
步骤102,解析OpenFlow协议封装的数据包,获得所述数据包中目的主机的IP地址。
较佳地,解析OpenFlow协议封装的数据包时,可以拆分OpenFlow协议封装的数据包,获得ARP报头。然后,再拆分ARP报头,获得APR报头中所有目的主机的IP地址。优选地,拆分OpenFlow协议封装的数据包之后,需要判断是否包含ARP报头,若包含则拆分ARP报头,获得APR报头中所有目的主机的IP地址,若不包含则直接退出该流程。
在另一个较佳地实施例中,获得所述数据包中目的主机的IP地址之后,需要判断ARP报头中每个目的主机IP地址是否存在于在线主机列表中,若存在则进行步骤103;若不存在则将ARP报头中的该目的主机添加到预设的虚拟在线主机列表中,并伪造该目的主机的Mac地址,然后建立该目的主机对应的OpenFlow流表。
更进一步地,将ARP报头中的所述目的主机添加到预设的虚拟在线主机列表时,伪造该目的主机的Mac地址,即随机生成一个Mac地址,然后将所述Mac地址对应所述目的主机的IP地址一起存储到虚拟在线主机列表中。作为优选地实施例,将ARP报头中的所述目的主机添加到预设的虚拟在线主机列表时,根据预设的Mac地址生成概率值,随机生成一个Mac地址,否则所述Mac地址直接设置为默认值。
步骤103,修改所述目的主机对应的OpenFlow流表,并将所述OpenFlow流表下发给所述交换机。
在一个实施例中,修改所述目的主机对应的OpenFlow流表时,可以根据预先设置的丢弃或者正常概率值,将所述目的主机对应的OpenFlow流表中的动作项配置为丢弃或者正常。为了防御攻击方的访问,针对攻击方请求的真实在线的目的主机,在该实施例中采取根据预先设置的概率值,将该目的主机的状态进行虚假设置,即根据预先设置的概率值设置该目的主机的状态是否为在线,例如预先设置的丢弃或者正常概率值为50%,其中所述的丢弃或者正常概率值可以根据需要预先设置。若将该目的主机的状态设置为在线,则将该目的主机对应的OpenFlow流表中的动作项配置为正常。若将该目的主机的状态设置为不在线,则将该目的主机对应的OpenFlow流表中的动作项配置为丢弃。
步骤104,接收交换机传送攻击方发送的ICMP协议封装的请求包。
步骤105,解析ICMP协议封装的请求包,获取ICMP协议封装的请求包中目的主机IP地址。
作为一个实施例,获取ICMP协议封装的请求包中目的主机IP地址之后,则需要判断所述目的主机IP地址是否存在于在线主机列表中,若存在则进行步骤106。若不存在则根据所述的目的主机IP地址,组装一个伪造的ICMP回复包下发给该交换机。
较佳地,所述伪造ICMP回复包时,可以以ICMP协议封装的请求包中的目的主机的IP地址为ICMP回复包中的源地址,而ICMP协议封装的请求包中的源地址为ICMP回复包中的目的地址。
步骤106,将所述目的主机IP地址正常添加到对应的ICMP流表中,将所述ICMP流表下发给该交换机。
作为一个可参考的实施例,如图2所示,所述的扫描防御方法包括(其中,可以参阅图3所示的攻击方与攻击目标之间通过交换机以及控制器的连接关系):
步骤201,接收交换机传送攻击方发送的通过OpenFlow协议封装的数据包。
在实施例中,在接收交换机传送的OpenFlow协议封装的数据包时,可以通过IDS(Intrusion Destection Systems)入侵检测系统识别发送方是否为攻击方。
步骤202,拆分OpenFlow协议封装的数据包,判断是否包含ARP(AddressResolution Protocol地址解析协议)报头,若不包含则退出该流程,否则进行步骤203。
步骤203,拆分ARP报头,获得APR报头中所有目的主机的IP地址。
步骤204,判断ARP报头中每个目的主机IP地址是否存在于在线主机列表中,若存在则进行步骤205,若不存在,则进行步骤206。
步骤205,根据预先设置的丢弃或者正常概率值,将该目的主机对应的OpenFlow流表中的动作项(action)配置为丢弃(drop)或者正常(output),进行步骤207。
一般情况是只要目的主机IP地址存在于在线主机列表中,则该目的主机对应的OpenFlow流表中的动作项为正常,但在本发明的实施例中为了防御攻击方的访问,针对攻击方请求的真实在线的目的主机,采取根据预先设置的概率值,将该目的主机的状态进行虚假设置,即根据预先设置的概率值设置该目的主机的状态是否为在线,例如预先设置的丢弃或者正常概率值为50%,其中所述的丢弃或者正常概率值可以根据需要预先设置。若将该目的主机的状态设置为在线,则将该目的主机对应的OpenFlow流表中的动作项配置为正常。若将该目的主机的状态设置为不在线,则将该目的主机对应的OpenFlow流表中的动作项配置为丢弃。从而,可以实现使攻击方接收到请求的真实在线的目的主机的虚假ARP回复包,做到了让攻击方无法判断请求的真实在线的目的主机的真正状态。
步骤206,将ARP报头中的该目的主机添加到预设的虚拟在线主机列表中,并伪造该目的主机的Mac地址,然后建立该目的主机对应的OpenFlow流表,进行步骤207。
较佳地,将ARP报头中的该目的主机添加到预设的虚拟在线主机列表时,可以随机生成一个Mac地址,然后将该Mac地址对应该目的主机的IP地址一起存储到虚拟在线主机列表中。即实现了以ARP报头中的目的主机IP地址为索引,在虚拟在线主机列表中可以查找到该目的主机IP地址对应的Mac地址。
优选地,将ARP报头中的该目的主机添加到预设的虚拟在线主机列表时,可以根据预设的Mac地址(即为IP地址所对应的值)生成概率值,随机生成一个Mac地址。其中,所述的Mac地址生成概率值可以根据需要预先设置。例如,预设的Mac地址生成概率值为50%,即该目的主机在虚拟在线主机列表中的Mac地址有50%的可能性通过随机的形式生成一个Mac地址,而另外50%的可能性直接设置为默认值。具体的实施过程包括:
根据预设的Mac地址生成概率值,当该虚拟在线主机列表中的虚拟主机需要生成随机Mac地址时,则执行,并将该Mac地址对应该目的主机的IP地址一起存储到虚拟在线主机列表中。当该虚拟在线主机列表中的虚拟主机不需要生成随机Mac地址时,则将Mac地址直接设置为默认值,例如0。
可以看出,在该实施例中是进一步对不在线目的主机进行区别设置,即对不在线的目的主机的Mac地址进行以ARP报头中的目的主机IP地址为索引伪造设置,或者对不在线的目的主机的Mac地址进行默认值设置。从而,可以影响到不在线的目的主机伪装成虚拟在线时,返回给攻击方的ARP回复包。因此,通过返回给攻击方的ARP回复包的不同情况,可以进一步将伪装虚拟在线主机分成两类,可以正常发送或不发送ARP回复包给攻击方。
步骤207,将所述OpenFlow流表下发给该交换机。
其中,所述的交换机会根据该OpenFlow流表,向所述攻击方发送ARP回复包。也就是说,当该OpenFlow流表中的该目的主机对应的动作项为丢弃时,则不发送ARP回复包给所述的攻击方。当该OpenFlow流表中的该目的主机对应的动作项为正常时,则发送ARP回复包给所述的攻击方。
优选地,当所述的交换机发送具有伪造的Mac地址的虚拟主机的ARP回复包给攻击方时,需要判断虚拟主机的Mac地址是否为默认值,若是则不响应,即不发送ARP回复包给攻击方。若不是默认值,则将具有伪造的Mac地址的虚拟主机的ARP回复包给攻击方。
步骤208,接收交换机传送攻击方发送的ICMP协议封装的请求包。
步骤209,解析所述的ICMP协议封装的请求包,获取ICMP协议封装的请求包中目的主机IP地址。
步骤210,判断所述目的主机IP地址是否存在于在线主机列表中,若存在则进行步骤211,否则进行步骤212。
步骤211,将所述目的主机IP地址正常添加到对应的ICMP流表中,将所述ICMP流表下发给该交换机。
其中,所述的交换机会根据该ICMP流表,向所述攻击方发送ICMP回复包。
步骤212,根据所述的目的主机IP地址,组装一个伪造的ICMP回复包下发给该交换机。
在实施例中,所述的目的主机不在线,直接伪造一个ICMP回复包,然后将该ICMP回复包下发给交换机,所述交换机直接将该ICMP回复包发送给攻击方。当攻击方收到交换机回复的所述ICMP回复包时,就会认为所述的目的主机是在线的。其中,ICMP回复包就是在线目的主机在收到ICMP协议封装的请求包时正常响应的回复包。
较佳地,伪造ICMP回复包时,可以以ICMP协议封装的请求包中的目的主机的IP地址为ICMP回复包中的源地址,而ICMP协议封装的请求包中的源地址为ICMP回复包中的目的地址。例如,ICMP协议封装的请求包中的目的主机IP地址为192.0.0.2,源地址即是指攻击方所在主机的IP地址为192.0.0.1,伪造的ICMP回复包内目的主机IP地址为192.0.0.1,源地址为192.0.0.2,则在攻击方看来,他收到了来自192.0.0.2的ICMP回复,就会认为IP地址为192.0.0.2的主机在线。
在另一个可参考的实施例中,可设置合理的周期,并启动监测进程。当监测到执行时间大于或等于所述的周期时间时,将已配置的与攻击者有关的流表(OpenFlow流表和ICMP流表)以及虚拟主机列表清空,在新的周期内重复以上过程。具体来说,为保证流表与虚拟主机列表的同步性,单独开启一个线程来同时清空与攻击者相关的流表项和虚拟主机列表中的所有信息,以此能保证每一个周期内所呈现给攻击者的网络主机状态都是变化的(即移动性)。
作为一个可参考的实施例,步骤201至212可以在如图3中所示的控制器中执行。
在本发明的另一方面,还提供了一种扫描防御装置,如图4所示,所述扫描防御装置包括依次连接的OpenFlow数据包接收单元401、OpenFlow流表处理单元402、ICMP请求包接收单元403以及ICMP流表处理单元404。其中,OpenFlow数据包接收单元401接收交换机传送攻击方发送的通过OpenFlow协议封装的数据包,解析OpenFlow协议封装的数据包,获得所述数据包中目的主机的IP地址。之后,OpenFlow流表处理单元402修改所述目的主机对应的OpenFlow流表,并将所述OpenFlow流表下发给所述交换机。然后,ICMP请求包接收单元403接收交换机传送攻击方发送的ICMP协议封装的请求包,解析ICMP协议封装的请求包,获取ICMP协议封装的请求包中目的主机IP地址。而ICMP流表处理单元404将所述目的主机IP地址正常添加到对应的ICMP流表中,将所述ICMP流表下发给该交换机。
在一个实施例中,OpenFlow数据包接收单元401解析OpenFlow协议封装的数据包时,可以拆分OpenFlow协议封装的数据包,获得ARP报头。然后,再拆分ARP报头,获得APR报头中所有目的主机的IP地址。优选地,拆分OpenFlow协议封装的数据包之后,需要判断是否包含ARP报头,若包含则拆分ARP报头,获得APR报头中所有目的主机的IP地址,若不包含则直接退出,不予执行。
在另一个较佳地实施例中,OpenFlow数据包接收单元401获得所述数据包中目的主机的IP地址之后,需要判断ARP报头中每个目的主机IP地址是否存在于在线主机列表中,若存在则OpenFlow流表处理单元402修改所述目的主机对应的OpenFlow流表,并将所述OpenFlow流表下发给所述交换机。若不存在则OpenFlow流表处理单元402将ARP报头中的该目的主机添加到预设的虚拟在线主机列表中,并伪造该目的主机的Mac地址,然后建立该目的主机对应的OpenFlow流表。
更进一步地,OpenFlow流表处理单元402将ARP报头中的所述目的主机添加到预设的虚拟在线主机列表时,伪造该目的主机的Mac地址,即随机生成一个Mac地址,然后将所述Mac地址对应所述目的主机的IP地址一起存储到虚拟在线主机列表中。作为优选地实施例,将ARP报头中的所述目的主机添加到预设的虚拟在线主机列表时,根据预设的Mac地址生成概率值,随机生成一个Mac地址,否则所述Mac地址直接设置为默认值。
还值得说明的是,OpenFlow流表处理单元402在修改所述目的主机对应的OpenFlow流表时,可以根据预先设置的丢弃或者正常概率值,将所述目的主机对应的OpenFlow流表中的动作项配置为丢弃或者正常。为了防御攻击方的访问,针对攻击方请求的真实在线的目的主机,在该实施例中采取根据预先设置的概率值,将该目的主机的状态进行虚假设置,即根据预先设置的概率值设置该目的主机的状态是否为在线,例如预先设置的丢弃或者正常概率值为50%,其中所述的丢弃或者正常概率值可以根据需要预先设置。若将该目的主机的状态设置为在线,则将该目的主机对应的OpenFlow流表中的动作项配置为正常。若将该目的主机的状态设置为不在线,则将该目的主机对应的OpenFlow流表中的动作项配置为丢弃。
在一个可参考的实施例中,ICMP请求包接收单元403获取ICMP协议封装的请求包中目的主机IP地址之后,则需要判断所述目的主机IP地址是否存在于在线主机列表中,若存在则ICMP流表处理单元404将所述目的主机IP地址正常添加到对应的ICMP流表中,将所述ICMP流表下发给该交换机,所述交换机再根据所述ICMP流表设置并发送ICMP回复包给攻击方。若不存在则ICMP流表处理单元404根据所述的目的主机IP地址,直接组装一个伪造的ICMP回复包下发给该交换机,此时ICMP流表处理单元404不需要对ICMP流表进行处理,而是直接伪造ICMP回复包,所述交换机直接将该ICMP回复包转发给攻击方即可。
较佳地,所述伪造ICMP回复包时,可以以ICMP协议封装的请求包中的目的主机的IP地址为ICMP回复包中的源地址,而ICMP协议封装的请求包中的源地址为ICMP回复包中的目的地址。
还值得说明的是,OpenFlow数据包接收单元401可以预先设置合理的周期,并启动监测进程。当监测到执行时间大于或等于所述的周期时间时,将已配置的与攻击者有关的流表(OpenFlow流表和ICMP流表)以及虚拟主机列表清空,在新的周期内重复以上过程。具体来说,为保证流表与虚拟主机列表的同步性,单独开启一个线程来同时清空与攻击者相关的流表项和虚拟主机列表中的所有信息,以此能保证每一个周期内所呈现给攻击者的网络主机状态都是变化的(即移动性)。
需要说明的是,在本发明所述的扫描防御装置的具体实施内容,在上面所述的扫描防御方法中已经详细说明了,故在此重复内容不再说明。
综上所述,本发明提供的扫描防御方法和装置,创造性地针对非法侦察扫描流量,结合MTD技术,使攻击方进行主机发现时获取到虚假的网络主机在线情况或者大大的增加攻击方攻击的成本,以此达到对ARP、ICMP两种方式防御的效果;因此,本发明具有广泛、重大的推广意义;最后,整个所述扫描防御方法和装置紧凑,易于控制。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本发明难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本发明难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本发明的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本发明的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本发明。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本发明的具体实施例对本发明进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本发明的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本发明的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种扫描防御方法,其特征在于,包括步骤:
接收交换机传送攻击方发送的通过OpenFlow协议封装的数据包,解析OpenFlow协议封装的数据包,获得所述数据包中目的主机的IP地址;
修改所述目的主机对应的OpenFlow流表,并将所述OpenFlow流表下发给所述交换机;
接收交换机传送攻击方发送的ICMP协议封装的请求包,解析ICMP协议封装的请求包,获取ICMP协议封装的请求包中目的主机IP地址;
将所述目的主机IP地址正常添加到对应的ICMP流表中,将所述ICMP流表下发给该交换机;
其中,修改所述目的主机对应的OpenFlow流表,并将所述OpenFlow流表下发给所述交换机的方法是:
判断所述目的主机的IP地址是否存在于在线主机列表中,若存在,则根据预先设置的丢弃或者正常概率值,将所述目的主机对应的OpenFlow流表中的动作项配置为丢弃或者正常,将所述OpenFlow流表下发给所述交换机;若不存在,则将所述目的主机添加到预设的虚拟在线主机列表中,并伪造所述目的主机的Mac地址,然后建立所述目的主机对应的OpenFlow流表,将所述OpenFlow流表下发给所述交换机。
2.根据权利要求1所述的方法,其特征在于,解析OpenFlow协议封装的数据包之后,包括:
拆分OpenFlow协议封装的数据包,获得ARP报头;
拆分ARP报头,获得APR报头中所有目的主机的IP地址;
判断ARP报头中每个目的主机IP地址是否存在于所述在线主机列表中,若存在则根据预先设置的丢弃或者正常概率值,将所述目的主机对应的OpenFlow流表中的动作项配置为丢弃或者正常;若不存在则将ARP报头中的该目的主机添加到预设的虚拟在线主机列表中,并伪造该目的主机的Mac地址,然后建立该目的主机对应的OpenFlow流表。
3.根据权利要求2所述的方法,其特征在于,将ARP报头中的所述目的主机添加到预设的虚拟在线主机列表时,随机生成一个Mac地址,然后将所述Mac地址对应所述目的主机的IP地址一起存储到虚拟在线主机列表中。
4.根据权利要求3所述的方法,其特征在于,将ARP报头中的所述目的主机添加到预设的虚拟在线主机列表时,根据预设的Mac地址生成概率值,随机生成一个Mac地址,否则所述Mac地址直接设置为默认值。
5.根据权利要求2所述的方法,其特征在于,拆分OpenFlow协议封装的数据包,还包括:
判断是否包含ARP报头,若包含则拆分ARP报头,获得APR报头中所有目的主机的IP地址;若不包含则不予执行。
6.根据权利要求2-5中任意一项所述的方法,其特征在于,获取ICMP协议封装的请求包中目的主机IP地址,还包括:
判断所述目的主机IP地址是否存在于在线主机列表中,若存在则将所述目的主机IP地址正常添加到对应的ICMP流表中,将所述ICMP流表下发给所述交换机;若不存在则根据所述的目的主机IP地址,组装一个伪造的ICMP回复包下发给该交换机。
7.根据权利要求6所述的方法,其特征在于,所述伪造ICMP回复包时,以ICMP协议封装的请求包中的目的主机的IP地址为ICMP回复包中的源地址,而ICMP协议封装的请求包中的源地址为ICMP回复包中的目的地址。
8.根据权利要求7所述的方法,其特征在于,接收交换机传送攻击方发送的通过OpenFlow协议封装的数据包之前,还包括:
设置周期时间,并启动监测进程;
当监测到执行时间大于或等于所述的周期时间时,将OpenFlow流表和ICMP流表以及虚拟主机列表清空。
9.一种扫描防御装置,其特征在于,根据权利要求1-8任意一项所述的扫描防御方法,所述的扫描防御装置包括:
OpenFlow数据包接收单元,用于接收交换机传送攻击方发送的通过OpenFlow协议封装的数据包,解析OpenFlow协议封装的数据包,获得所述数据包中目的主机的IP地址;
OpenFlow流表处理单元,用于修改所述目的主机对应的OpenFlow流表,并将所述OpenFlow流表下发给所述交换机,包括:
判断所述目的主机的IP地址是否存在于在线主机列表中,若存在,则根据预先设置的丢弃或者正常概率值,将所述目的主机对应的OpenFlow流表中的动作项配置为丢弃或者正常,将所述OpenFlow流表下发给所述交换机;若不存在,则将所述目的主机添加到预设的虚拟在线主机列表中,并伪造所述目的主机的Mac地址,然后建立所述目的主机对应的OpenFlow流表,将所述OpenFlow流表下发给所述交换机;
ICMP请求包接收单元,用于接收交换机传送攻击方发送的ICMP协议封装的请求包,解析ICMP协议封装的请求包,获取ICMP协议封装的请求包中目的主机IP地址;
ICMP流表处理单元,用于将所述目的主机IP地址正常添加到对应的ICMP流表中,将所述ICMP流表下发给该交换机。
CN201610875653.3A 2016-09-30 2016-09-30 一种扫描防御方法和装置 Active CN106453298B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610875653.3A CN106453298B (zh) 2016-09-30 2016-09-30 一种扫描防御方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610875653.3A CN106453298B (zh) 2016-09-30 2016-09-30 一种扫描防御方法和装置

Publications (2)

Publication Number Publication Date
CN106453298A CN106453298A (zh) 2017-02-22
CN106453298B true CN106453298B (zh) 2019-02-19

Family

ID=58171794

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610875653.3A Active CN106453298B (zh) 2016-09-30 2016-09-30 一种扫描防御方法和装置

Country Status (1)

Country Link
CN (1) CN106453298B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI642285B (zh) * 2018-02-02 2018-11-21 思銳科技股份有限公司 網路交換機的主機狀態偵測方法與系統
CN111683063B (zh) * 2020-05-20 2023-02-17 北京吉安金芯信息技术有限公司 消息处理方法、系统、装置、存储介质及处理器
CN117254978B (zh) * 2023-11-16 2024-02-09 苏州元脑智能科技有限公司 一种异常扫描行为的处理方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104301451A (zh) * 2014-10-17 2015-01-21 福建星网锐捷网络有限公司 一种跨网段主机通信方法、装置及系统
CN104639504A (zh) * 2013-11-12 2015-05-20 华为技术有限公司 网络协同防御方法、装置和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10193924B2 (en) * 2014-09-17 2019-01-29 Acalvio Technologies, Inc. Network intrusion diversion using a software defined network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104639504A (zh) * 2013-11-12 2015-05-20 华为技术有限公司 网络协同防御方法、装置和系统
CN104301451A (zh) * 2014-10-17 2015-01-21 福建星网锐捷网络有限公司 一种跨网段主机通信方法、装置及系统

Also Published As

Publication number Publication date
CN106453298A (zh) 2017-02-22

Similar Documents

Publication Publication Date Title
CN105262738B (zh) 一种路由器及其防arp攻击的方法
CN106534063B (zh) 一种封装异构功能等价体的装置、方法及设备
CN106453298B (zh) 一种扫描防御方法和装置
JP6634009B2 (ja) ハニーポートが有効なネットワークセキュリティ
CN103312689B (zh) 一种计算机的网络隐身方法及基于该方法的网络隐身系统
CN105119930B (zh) 基于OpenFlow协议的恶意网站防护方法
CN107979562A (zh) 一种基于云平台的混合型蜜罐动态部署系统
CN109246108B (zh) 拟态化蜜罐指纹混淆系统及其sdn网络架构
CN106909847A (zh) 一种恶意代码检测的方法、装置及系统
CN102801738B (zh) 基于概要矩阵的分布式拒绝服务攻击检测方法及系统
CN107135187A (zh) 网络攻击的防控方法、装置及系统
CN103916490B (zh) 一种域名系统dns防篡改方法及装置
JP2014053004A (ja) 動的に構成されるネットワークにおいて端末を防御する方法およびシステム
CN103561004A (zh) 基于蜜网的协同式主动防御系统
CN106357685A (zh) 一种防御分布式拒绝服务攻击的方法及装置
CN109218327A (zh) 基于云容器的主动防御技术
CN106657035B (zh) 一种网络报文传输方法及装置
CN105812318B (zh) 用于在网络中防止攻击的方法、控制器和系统
CN106789486B (zh) 共享接入的检测方法、装置、电子设备及计算机可读存储介质
CN109495583B (zh) 一种基于主机特征混淆的数据安全交互方法
CN109495448A (zh) 基于核电应急控制的信息安全系统
CN106982188A (zh) 恶意传播源的检测方法及装置
CN106161461B (zh) 一种arp报文的处理方法及装置
CN105429975B (zh) 一种基于云终端的数据安全防御系统、方法及云终端安全系统
Al Sukkar et al. Address resolution protocol (ARP): Spoofing attack and proposed defense

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant