一种无线移动终端阻断系统及方法
技术领域
本发明涉及无线网络技术领域,特别涉及一种无线移动终端阻断系统以及无线移动终端阻断方法。
背景技术
Wi-Fi是一种可以将个人电脑、手持设备(如PDA、手机)等终端以无线方式互相连接的技术。无线上网可免去布线的麻烦,而且无线Wi-Fi技术已较为成熟,越来越多的企业和个人使用无线Wi-Fi上网。无线上网带来便利的同时也伴随着安全隐患,一旦无线上网的接入点(Access Point,缩写AP)的入网密码被破解,一些非法的无线移动终端(即非本网络无线接入点合法用户)就可以登录到被破解密码的无线接入点进行蹭网,占用其它设备的上网带宽,甚至盗取通过同一无线接入点上网的其它设备中的敏感信息。
非法的无线移动终端是指不允许接入本无线网络的无线移动终端。为了防止非法的无线移动终端通过无线接入点使用Wi-Fi上网,目前通常采用的方法有白噪声全频段干扰、指定信道射频干扰和NAV信道抢占攻击。白噪声全频段干扰是在无线网络工作频段,采用噪声调频技术干扰整个无线网络工作频段,来达到干扰无线移动终端的正常通信,起到阻断的作用。白噪声全频段干扰能够有效的阻断非法的无线移动终端,但同时也阻断了合法的无线移动终端的正常通信。指定信道射频干扰,其工作原理与白噪声全频段干扰的工作原理类似,只是干扰的范围仅限于指定信道,这样可以保证其它信道的无线通信能够正常工作,但是被干扰的指定信道上连接的合法无线移动终端也会被阻断,以至于无法进行正常通信。无线协议中要求无线移动终端在探测到RTS/CTS数据包之后,利用其中的Duration域设置自己的NAV时间,然后开始倒计时,直到NAV内时间耗尽,在NAV内时间还未结束之前,无线移动终端认为信道处于忙碌状态,既不会向网络中其他无线移动终端发进数据包,也不会尝试去监听信道。NAV信道抢占攻击利用这个理论,伪造Duration域的数值,使其大于正常数据包需要占用信道的时间,以此影响网络的质量和性能,从而达到干扰指定信道下无线移动终端通信的效果。同样的,NAV信道抢占攻击能够阻断指定信道上的非法无线移动终端,但同时也阻断了该信道上的合法无线移动终端。综上所述,上述方法均能有效的阻断和干扰非法无线移动终端的通信,但同时也都存在以下缺陷:
(1)不能自动分析出需要阻断的无线移动终端。
(2)当非法无线移动终端和合法无线移动终端工作在相同信道时,无法保证合法无线移动终端与无线接入点之间的正常通信。
发明内容
本发明的目的在于克服现有技术中所存在的不能自动分析出需要阻断的无线移动终端的不足,提供一种无线移动终端阻断系统,也提供一种阻断无线移动终端的方法。
为了实现上述发明目的,本发明提供了以下技术方案:
一种无线移动终端阻断系统,所述无线移动终端为无线移动终端,包括:
无线移动终端数据包采集模块,用于采集无线网络中传输的无线移动终端数据包;
无线移动终端分析模块,用于分析采集的无线移动终端数据包中包含的无线移动终端信息,并建立无线网络拓扑结构;
白名单判断模块,用于通过对比无线网络拓扑结构与白名单,判断无线移动终端是否需要被阻断;
无线移动终端阻断模块,用于根据判断结果,针对需要被阻断的无线移动终端生成阻断无线移动终端的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):无线移动终端分析模块分析采集的无线移动终端数据包中包含的无线移动终端信息,并根据无线移动终端信息中包含的MAC地址,构建无线网络拓扑结构,同时,无线移动终端分析模块将分析出的无线移动终端信息传入至白名单判断模块;
(3):白名单判断模块将无线移动终端信息与白名单中记录的信息进行对比,判断出该无线移动终端是否需要被阻断,并将判断结果返回至无线移动终端分析模块;
(4):无线移动终端分析模块根据白名单判断模块的判断结果判断该无线移动终端是否需要被阻断,并将需要被阻断的无线移动终端添加至无线移动终端阻断列表中;
(5):无线移动终端阻断模块根据无线移动终端阻断列表,根据无线移动终端所属的网络类型,生成阻断无线移动终端的Deauthentication数据包。
与现有技术相比,本发明的有益效果:
1、通过白名单判断模块的对比判断,无线移动终端分析模块能够自动分析出需要被阻断的无线移动终端,仅对需要被阻断的无线移动终端进行阻断,保障了网络中其他合法的无线移动终端不会被阻断。
2、将用于阻断无线移动终端的Deauthentication数据包中的Duration(持续时间)值设置为0,减少了访问媒介的时间限制,即减少了对信道占用的时间,保证了不需要被阻断的合法移动终端与无线接入点之间的通信。
3、无线移动终端阻断模块能够针对不同网络类型的无线移动终端采取不同的阻断方式,有效阻断了非法无线移动终端,保证了无线网络的安全,同时又不会对正常的通信造成任何影响。
附图说明:
图1为本发明无线移动终端阻断系统结构示意框图。
图2为通过本发明无线移动终端阻断系统实现无线移动终端阻断的方法的流程图。
图3(a)为基于基础型无线网络的无线网络拓扑结构示意图。
图3(b)为基于Ad-hoc无线网络的无线网络拓扑结构示意图。
附图标记:100-无线接入点,200-无线移动终端。
具体实施方式
下面结合试验例及具体实施方式对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。
本发明无线移动终端阻断系统用于阻断接入无线网络中的非法无线移动终端,所述非法无线移动终端是指不允许接入本无线网络的无线移动终端,包括不允许接入本无线网络的无线移动终端,不不允许接入本无线网络中某些无线基本服务集的无线移动终端。
参考图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值为空则表示该无线移动终端属于任意无线基本服务集。
白名单既可以预先设置好,也可以在阻断过程中根据扫描出来的无线网络拓扑结构中的无线移动终端进行动态的添加。白名单中记录的无线移动终端为本无线网络中允许接入的合法的无线移动终端;记录的无线基本服务集为允许接入无线移动终端的无线基本服务集,即加入到白名单中记录的无线基本服务集下的无线移动终端都认为是合法的。
白名单判断模块通过对比白名单,判断无线移动终端是否需要被阻断的方法是:先判断该无线移动终端是否在白名单中(即判断该无线移动终端的MAC地址是否在白名单中),如果在白名单中则直接返回不阻断表示值,例如二进制“0”,如果不在白名单中则继续判断该无线移动终端所属无线基本服务集的BSSID值是否在白名单中,如果BSSID值在白名单中则返回不阻断表示值,否则返回阻断表示值,例如二进制“1”。
通过本方式判断无线移动终端是否需要被阻断,可以阻断白名单以外的非法无线移动终端接入本无线网络,即,可以阻断无线移动终端接入本无线网络内的无线基本服务集,所述无线基本服务集为不允许接入无线移动终端的无线基本服务集。对于需要传输机密信息的无线基本服务集,或者数据传输速率要求较高的无线基本服务集,不允许该无线基本服务集以外的无线移动终端接入,以避免新接入的无线移动终端占用信道带宽,影响数据传输速率,也避免机密信息被盗取,保障通信安全。
无线移动终端阻断模块根据无线移动终端阻断列表,根据需要被阻断的无线移动终端所属的网络类型,构建不同鉴权结束(Deauthentication)数据包,其方法是:对于无线移动终端属于基础型网络,将鉴权结束(Deauthentication)数据包中的目的地址设置为需要被阻断的无线移动终端的MAC地址,将数据包中的源地址和BSSID值都设置为该无线移动终端所属无线基本服务集BSSID值,Reason Code(原因码)的值设置为5表示无线接入点拒绝接入。Ad-hoc网络是分布式网络,没有一个类似无线接入点的中心移动终端,具有管理整个网络的权限,所有无线移动终端都只能主动推出。因此对于无线移动终端属于Ad-hoc网络,将鉴权结束(Deauthentication)数据包的目的地址设置为属于这个网络中其它无线移动终端的MAC地址,源地址设置为需要被阻断的无线移动终端的MAC地址,原因码的值设置为3,表示需要被阻断的无线移动终端主动推出。在发送Deauthentication数据包去阻断无线移动终端的时,将Duration(持续时间)值设置为0,以减少访问媒介的时间限制,避免对不需要被阻断的无线移动终端的通信造成影响。
参考图2,利用无线移动终端阻断系统实现无线移动终端阻断的方法,包括:
步骤S101:获取本无线网络中传输的无线移动终端数据包。
本步骤中,无线移动终端数据包采集模块采用零拷贝技术,直接从网卡驱动中获取无线移动终端数据包。
步骤S102:无线移动终端分析模块分析采集的无线移动终端数据包中包含的无线移动终端信息,并根据无线移动终端信息中包含的MAC地址,构建无线网络拓扑结构,同时,无线移动终端分析模块将分析出的无线移动终端信息传入至白名单判断模块。
步骤S103:白名单判断模块将无线移动终端信息与白名单中记录的信息进行对比,判断出该无线移动终端是否需要被阻断,并将判断结果返回至无线移动终端分析模块。
本步骤中,白名单判断模块首先判断无线移动终端是否在白名单中,如果在白名单中则直接返回不阻断表示值,如果不在白名单中则继续判断该无线移动终端所属的无线基本服务集是否在白名单中,如果在白名单中则返回不阻断表示值,否则返回阻断表示值。
步骤S104:无线移动终端分析模块根据白名单判断模块的判断结果判断该无线移动终端是否需要被阻断,并将需要被阻断的无线移动终端添加至无线移动终端阻断列表中。
步骤S105:无线移动终端阻断模块根据无线移动终端阻断列表,根据无线移动终端所属的网络类型,生成阻断无线移动终端的Deauthentication数据包。
本步骤中,无线移动终端阻断模块首先判断需要被阻断的无线移动终端所属的网络类型,如果需要被阻断的无线移动终端所属的网络类型为基础型网络,则将Deauthentication数据包中的目的地址设置为需要被阻断的无线移动终端的MAC地址,将Deauthentication数据包中的源地址和BSSID值都设置为该无线移动终端所属无线基本服务集BSSID值,Reason Code的值设置为5,Duration值设置为零;如果需要被阻断的无线移动终端所属的网络类型为Ad-hoc网络,将Deauthentication数据包的目的地址设置为属于这个网络中其它无线移动终端的MAC地址,源地址设置为需要被阻断的无线移动终端的MAC地址,原因码的值设置为3,Duration值设置为零。