发明内容
本发明的目的在于克服现有技术中所存在的无法指定对进行非正常操作的无线移动终端进行阻断的不足,提供一种可阻断指定无线移动终端的无线移动终端阻断系统。
为了实现上述发明目的,本发明提供了以下技术方案:
一种阻断无线移动终端的系统,所述无线移动终端为无线移动终端,包括:
无线移动终端数据包采集模块,用于采集无线网络中传输的无线移动终端数据包;
无线移动终端分析模块,用于分析采集的无线移动终端数据包中包含的无线移动终端信息,并建立无线网络拓扑结构;
黑白名单判断模块,用于通过对比无线网络拓扑结构与黑名单,判断无线移动终端是否需要被阻断;
无线移动终端阻断模块,用于根据判断结果,针对需要被阻断的无线移动终端生成阻断无线移动终端的Deauthentication数据包。
所述黑名单中记录不允许接入本无线网络的无线移动终端包括访问频率超过设定值的无线移动终端,以及每次访问流量超过设定值的无线移动终端。
所述黑名单存储于黑白名单判断模块中,黑名单中记录有指定的不允许接入本无线网络的无线移动终端;以及无线基本服务集,所述无线基本服务集是指该无线基本服务集下的所有无线移动终端都将会被阻断。黑名单判断模块将无线网络拓扑结构中的无线移动终端信息与黑名单中记录的信息进行对比,即可判断出无线移动终端是否需要被阻断,即通过对比黑名单,能够自动分析出指定的需要被阻断的无线移动终端,并对该指定的无线移动终端发送Deauthentication数据包进行阻断。
所述黑名单判断模块将无线移动终端信息与黑名单中记录的信息进行对比,判断无线移动终端是否需要被阻断的方法是:首先判断无线移动终端所属无线基本服务集是否在黑名单中,如果在黑名单中则返回阻断表示值,如果不在黑名单中,则继续判断该无线移动终端是否在黑名单中,如果在黑名单中则返回阻断表示值,如果不在则返回不阻断表示值。
所述无线移动终端数据包采集模块采用零拷贝技术直接从无线网卡驱动中获取无线移动终端数据包。这样避免数据通过上层其它系统层的过程,使得抓取无线数据包更加及时,有效的提高了无线移动终端数据包抓取的效率,尽量的避免了无线移动终端数据包丢包而不能被获取的情况。
所述无线移动终端分析模块以无线数据包中的MAC地址作为分区条件,将所有无线数据包构建成无线网络拓扑结构。
所述黑白名单判断模块将判断结果返回至无线移动终端分析模块,无线移动终端分析模块判断无线移动终端是否需要被阻断,并将需要被阻断的无线移动终端添加至无线移动终端阻断列表,无线移动终端阻断模块扫描无线移动终端阻断列表中记录的需要被阻断的无线移动终端,生成阻断无线移动终端的Deauthentication数据包。
所述无线移动终端阻断模块生成阻断无线移动终端的Deauthentication数据包的方法是:根据需要被阻断的无线移动终端所属的网络类型,构建相应的鉴权结束(Deauthentication)数据包。
所述无线移动终端阻断模块生成阻断无线移动终端的Deauthentication数据包的方法包括:对于无线移动终端属于基础型网络,将结束鉴权(Deauthentication)数据包中的目的地址设置为需要被阻断的无线移动终端的MAC地址,将数据包中的源地址和BSSID值都设置为该无线移动终端所属无线基本服务集BSSID值,Reason Code(原因码)的值设置为5表示无线接入点拒绝接入。
所述无线移动终端阻断模块生成阻断无线移动终端的Deauthentication数据包的方法包括:对于无线移动终端属于Ad-hoc网络,将鉴权结束(Deauthentication)数据包的目的地址设置为属于这个网络中其它无线移动终端的MAC地址,源地址设置为需要被阻断的无线移动终端的MAC地址,原因码的值设置为3,表示需要被阻断的无线移动终端主动推出。
所述无线移动终端阻断模块生成阻断无线移动终端的Deauthentication数据包的方法包括:在发送Deauthentication数据包去阻断无线移动终端时,将Duration(持续时间)值设置为0。将Duration(持续时间)值设置为0,可以减少访问媒介的时间限制,避免对不需要被阻断的无线移动终端的通信造成影响。
所述黑白名单判断模块中还存储有白名单,所述白名单中记录有本无线网络中允许的合法的无线移动终端,以及允许无线移动终端接入的无线基本服务集,黑白名单判断模块对比无线网络拓扑结构与白名单,判断无线移动终端是否需要被阻断。通过与白名单进行对比,可自动分析出无线移动终端是否需要被阻断。
所述黑白名单判断模块通过同时对比黑名单和白名单,判断无线移动终端是否需要被阻断:首先判断该无线移动终端是否在黑名单中,如果在黑名单中则返回阻断表示值,如果不在黑名单中则继续判断该无线移动终端是否在白名单中,如果在白名单中则返回不阻断表示值,如果不在白名单中则继续判断该无线移动终端所属的无线服务集是否在黑名单中,如果所属无线服务集在黑名单中则返回阻断表示值,否则返回不阻断表示值。
与现有技术相比,本发明的有益效果:
1、黑名单中记录有指定的不允许接入无线网络的无线移动终端,通过对比黑名单,实现了对指定的无线移动终端进行阻断。
2、将用于阻断无线移动终端的Deauthentication数据包中的Duration(持续时间)值设置为0,减少了访问媒介的时间限制,即减少了对信道占用的时间,保证了不需要被阻断的正常移动终端与无线接入点之间的通信。
3、白名单中记录有允许接入无线网络的无线移动终端,通过对比白名单,实现了自动分析出允许接入的无线移动终端,即实现了自动分析出需要被阻断的无线移动终端。
4、无线移动终端阻断模块能够针对不同网络类型的无线移动终端采取不同的阻断方式,有效阻断了非法无线移动终端和无线接入点,保证了无线网络的安全,同时又不会对正常的通信造成任何影响。
具体实施方式
下面结合试验例及具体实施方式对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。
本发明无线移动终端阻断系统用于阻断接入无线网络中的非法无线移动终端,所述非法无线移动终端是指不允许接入本无线网络的无线移动终端,包括指定的不允许接入本无线网络的无线移动终端,不允许接入本无线网络中某些无线基本服务集的无线移动终端,即无线移动终端接入某些无线基本服务集将被阻断。
参考图1,本实施例列举的一种无线移动终端阻断系统,包括无线移动终端数据包采集模块,用于采集无线网络中传输的无线移动终端数据包;无线移动终端分析模块,用于分析采集的无线移动终端数据包中包含的无线移动终端信息,并建立无线网络拓扑结构;黑白名单判断模块,用于判断无线移动终端是否需要被阻断;无线移动终端阻断模块,用于生成阻断无线移动终端的Deauthentication数据包。
无线移动终端数据包采集模块采用零拷贝技术(零拷贝技术即是通过减少或消除关键通信路径影响速率的操作,降低数据传输的操作系统开销和协议处理开销,从而有效提高通信性能,实现高速数据传输的方法),直接从网卡驱动中获取无线移动终端数据包,避免数据通过上层其它系统层的过程,使得抓取无线移动终端数据包更加及时,有效的提高了无线移动终端数据包抓取的效率,尽量的避免了无线移动终端数据包丢包而不能被获取的情况。
所述无线移动终端数据包的帧头中包含MAC(Media Access Control,介质访问控制)地址,无线网络分析模块以MAC地址作为分区条件,将所有无线移动终端数据包构建成无线网络拓扑结构,如图3(a)和3(b)所示,图3(a)为基于基础型无线网络的无线网络拓扑结构示意图,多个无线移动终端200接入同一个无线接入点100,共同组成基础型无线基本服务集;图3(b)为基于Ad-hoc无线网络的无线网络拓扑结构示意图,多个无线移动终端200组成独立型无线基本服务集。在无线网络拓扑结构中,无线接入点和/或多个无线移动终端构成一个无线基本服务集。无线基本服务集分为基础型无线基本服务集和独立型无线基本服务集。基础型无线基本服务集包括多个无线移动终端和一个作为中心移动终端的无线接入点,所属的网络类型为基础型网络。独立型无线基本服务集包括多个无线移动终端,不存在无线接入点作为中心移动终端,所属的网络类型为Ad-hoc网络。
无线基本服务集的数据结构所包含的数据元素包括:a、无线基本服务集的BSSID值;b、工作主信道;c、工作备用信道:对于使用802.11n协议的无线接入点会存在一个备用信道;d、无线网络加密方式;e、无线网络类型;无线网络类型包括基础型网络和ad-hoc网络,无线网络类型元素用来说明该无线网络是基础型网络还是ad-hoc网络;f、无线基本服务集名称(SSID);g、无线基本服务集采用的物理层类型;目前市面上无线产品采用的物理层类型分别有802.11a、802.11b、802.11g、802.11n,无线服务集采用的物理层类型用来说明采用的是其中哪种物理层类型;h、无线移动终端列表;i、第一次检测到该服务集的时间;j、最近检测到该服务集的时间。无线移动终端的数据结构所包含的数据元素包括:a、无线移动终端MAC地址;b、根据MAC地址得到的厂商信息;c、无线移动终端当前工作的信道。
无线移动终端分析模块每分析出一个新的无线移动终端(所述新的无线移动终端的含义是新接入无线网络中的无线移动终端),都会将该无线移动终端信息传入黑白名单判断模块,黑白名单判断模块将无线移动终端信息与黑名单中记录的信息进行对比,判断出该无线移动终端是否需要被阻断,并将判断结果输入至无线移动终端分析模块,无线移动终端分析模块根据黑白名单判断模块的判断结果判定是否将该无线移动终端添加至无线移动终端阻断列表中。无线移动终端阻断列表用于记录需要被阻断的无线移动终端,无线移动终端阻断列表动态生成并更新,每判定有新的需要被阻断的无线移动终端,就添加至无线移动终端阻断列表中,更新无线移动终端阻断列表。
接入本无线网络的非法无线移动终端被阻断后,就不会对本无线网络中的无线移动终端通信造成影响,为了简化无线网络拓扑结构和无线移动终端阻断列表,需要将已经被阻断的无线移动终端从无线网络拓扑结构和无线移动终端阻断列表中删除,因此,无线移动终端分析模块还会动态调整无线网络拓扑结构和无线移动终端阻断列表。当超过一定时间(一般为5分钟),没有检测到某个移动终端的无线移动终端数据包,无线移动终端分析模块自动从无线网络拓扑结构中删除该消失的无线移动终端,并同时从无线移动终端阻断列表中删除该无线移动终端。
黑名单中的数据结构包括两种:无线基本服务集和无线移动终端。黑名单和白名单中记录的无线基本服务集的内容包括BSSID值,记录的无线移动终端数据结构的内容包括无线移动终端的MAC地址、所属无线基本服务集的BSSID值,其中无线终端数据结构中的所属无线基本服务集的BSSID值可以为空,如果BSSID值为空则表示该无线移动终端属于任意无线基本服务集。
黑名单中记录的无线移动终端为指定的不允许接入本无线网络的无线移动终端,例如进行非正常操作(如盗取信息,传输病毒等)的无线移动终端;黑名单记录中的无线基本服务集,是指所述无线基本服务集下的所有的移动终端都将会被阻断。黑名单可以事先设置好,例如根据历史记录,将访问频率过高(例如超过某一设定值)的无线移动终端信息记录在黑名单中。黑名单也可以在阻断过程中根据扫描无线网络拓扑结构中的无线移动终端进行动态的添加,例如扫描到无线网络拓扑结构中的某无线移动终端的流量超过某一设定值,视为该无线移动终端在进行非正常操作,记录在黑名单中。
黑白名单判断模块通过对比黑名单,判断无线移动终端是否需要被阻断的方法是:首先判断无线移动终端所属无线基本服务集的BSSID值是否在黑名单中,如果在黑名单中则返回阻断表示值,例如二进制“1”,如果不在黑名单中,则继续判断该无线移动终端是否在黑名单中,如果在黑名单中则返回阻断表示值,如果不在则返回不阻断表示值,例如二进制“0”。通过本方式判断无线移动终端是否需要被阻断,可以对指定的无线移动终端(如盗取信息,传输病毒等进行非正常操作)的无线移动终端进行阻断,保障了网络安全。本方式还可以阻断无线移动终端接入本无线网络内的无线基本服务集,所述无线基本服务集为不允许无线移动终端接入中心移动终端的无线基本服务集,以避免新接入的无线移动终端占用信道带宽,影响数据传输速率。
作为另一种优选方式,所述黑白名单判断模块中还存储有白名单,所述白名单中记录有无线移动终端信息和无线基本服务集信息,所述无线移动终端为本无线网络中允许的合法的无线移动终端;所述无线基本服务集为允许接入无线移动终端的无线基本服务集,即加入到白名单中记录的无线基本服务集下的无线移动终端都认为是合法的。白名单既可以预先设置好,也可以在阻断过程中根据扫描出来的无线网络拓扑结构中的无线移动终端进行动态的添加。
白名单中记录的无线基本服务集和无线移动终端的数据结构与黑名单相同,记录的无线基本服务集的内容包括BSSID值,记录的无线移动终端数据结构的内容包括无线移动终端的MAC地址、所属无线基本服务集的BSSID值。同时,黑名单和白名单记录的无线基本服务集和无线移动终端的数据结构还包括所属名单类型,用以标明属于黑名单还是白名单。
黑白名单判断模块通过对比白名单,判断无线移动终端是否需要被阻断的方法是:先判断该无线移动终端是否在白名单中(即判断该无线移动终端的MAC地址是否在白名单中),如果在白名单中则直接返回不阻断表示值,例如二进制“0”,如果不在白名单中则继续判断该无线移动终端所属无线基本服务集的BSSID值是否在白名单中,如果BSSID值在白名单中则返回不阻断表示值,否则返回阻断表示值,例如二进制“1”。通过本方式判断无线移动终端是否需要被阻断,可以阻断白名单以外的非法无线移动终端接入本无线网络,即,可以阻断无线移动终端接入本无线网络内的无线基本服务集,所述无线基本服务集为不允许接入无线移动终端的无线基本服务集。对于需要传输机密信息的无线基本服务集,或者数据传输速率要求较高的无线基本服务集,不允许该无线基本服务集以外的无线移动终端接入,以避免新接入的无线移动终端占用信道带宽,影响数据传输速率,也避免机密信息被盗取,保障通信安全。
黑白名单判断模块还可以同时对比黑名单和白名单,判断无线移动终端是否需要被阻断:首先判断该无线移动终端是否在黑名单中,如果在黑名单中则返回阻断表示值,如果不在黑名单中则继续判断该无线移动终端是否在白名单中,如果在白名单中则返回不阻断表示值,如果不在白名单中则继续判断该无线移动终端所属的无线服务集(即无线服务集的BSSID值)是否在黑名单中,如果所属无线服务集在黑名单中则返回阻断表示值,否则返回不阻断表示值。通过本方式判断无线移动终端是否需要被阻断,可以阻断无线移动终端接入本无线网络内的无线基本服务集,所述无线基本服务集为不允许外来的无线移动终端接入中心移动终端的无线基本服务集。还可以对指定的无线移动终端进行阻断。
所述黑白名单判断模块将判断结果返回至无线移动终端分析模块,无线移动终端分析模块判断无线移动终端是否需要被阻断,并将需要被阻断的无线移动终端添加至无线移动终端阻断列表,无线移动终端阻断模块根据无线移动终端阻断列表,并根据需要被阻断的无线移动终端所属的网络类型,构建不同结束鉴权(Deauthentication)数据包,其方法是:对于无线移动终端属于基础型网络,将结束鉴权(Deauthentication)数据包中的目的地址设置为需要被阻断的无线移动终端的MAC地址,将数据包中的源地址和BSSID值都设置为该无线移动终端所属无线基本服务集BSSID值,Reason Code(原因码)的值设置为5表示无线接入点拒绝接入。Ad-hoc网络是分布式网络,没有一个类似无线接入点的中心节点,具有管理整个网络的权限,所有无线移动终端都只能主动推出。因此对于无线移动终端属于Ad-hoc网络,将鉴权结束(Deauthentication)数据包的目的地址设置为属于这个网络中其它无线移动终端的MAC地址,源地址设置为需要被阻断的无线移动终端的MAC地址,原因码的值设置为3,表示需要被阻断的无线移动终端主动推出。在发送Deauthentication数据包去阻断无线移动终端的时,将Duration(持续时间)值设置为0,以减少访问媒介的时间限制,避免对不需要被阻断的无线移动终端的通信造成影响。
参考图2,无线移动终端阻断系统实现无线移动终端阻断的方法,包括:
步骤S101:获取本无线网络中传输的无线移动终端数据包。
本步骤中,无线移动终端数据包采集模块采用零拷贝技术,直接从网卡驱动中获取无线移动终端数据包。
步骤S102:无线网络分析模块分析采集的无线移动终端数据包中包含的无线移动终端信息,并根据无线移动终端信息中包含的MAC地址,构建无线网络拓扑结构,同时,无线网络分析模块将分析出的无线移动终端信息传入至黑白名单判断模块。
步骤S103:黑白名单判断模块将无线移动终端信息与黑名单和/或白名单中记录的信息进行对比,判断出该无线移动终端是否需要被阻断,并将判断结果返回至无线网络分析模块。
本步骤中,黑白名单判断模块判断出该无线移动终端是否需要被阻断的方式有三种:
(1)将无线移动终端与黑名单进行对比:首先判断无线移动终端所属无线基本服务集的BSSID值是否在黑名单中,如果在黑名单中则返回阻断表示值,例如二进制“1”,如果不在黑名单中,则继续判断该无线移动终端是否在黑名单中,如果在黑名单中则返回阻断表示值,如果不在则返回不阻断表示值,例如二进制“0”。
(2)将无线移动终端与白名单进行对比:先判断该无线移动终端是否在白名单中(即判断该无线移动终端的MAC地址是否在白名单中),如果在白名单中则直接返回不阻断表示值,例如二进制“0”,如果不在白名单中则继续判断该无线移动终端所属无线基本服务集的BSSID值是否在白名单中,如果BSSID值在白名单中则返回不阻断表示值,否则返回阻断表示值,例如二进制“1”。
(3)将无线移动终端与白名单和黑名单进行对比:先判断该无线移动终端是否在黑名单中,如果在黑名单中则返回阻断表示值,如果不在黑名单中则继续判断该无线移动终端移动终端是否在白名单中,如果在白名单中则返回不阻断表示值,如果不在白名单中则继续判断该无线移动终端所属的无线服务集(即无线服务集的BSSID值)是否在黑名单中,如果所属无线服务集在黑名单中则返回阻断表示值,否则返回不阻断表示值。
步骤S104:无线网络分析模块根据黑白名单判断模块的判断结果判断该无线移动终端是否需要被阻断,并将需要被阻断的无线移动终端添加至无线移动终端阻断列表中。
步骤S105:无线移动终端阻断模块,根据无线移动终端阻断列表,根据无线移动终端所属的网络类型,生成阻断无线移动终端的Deauthentication数据包。
本步骤中,无线移动终端阻断模块首先判断需要被阻断的无线移动终端所属的网络类型,如果需要被阻断的无线移动终端所属的网络类型为基础型网络,则将Deauthentication数据包中的目的地址设置为需要被阻断的无线移动终端的MAC地址,将Deauthentication数据包中的源地址和BSSID值都设置为该无线移动终端所属无线基本服务集BSSID值,Reason Code的值设置为5,Duration值设置为零;如果需要被阻断的无线移动终端所属的网络类型为Ad-hoc网络,将Deauthentication数据包的目的地址设置为属于这个网络中其它无线移动终端的MAC地址,源地址设置为需要被阻断的无线移动终端的MAC地址,原因码的值设置为3,Duration值设置为零。