顾成武 黄梓豪 孟祥国 刘恒
摘要:针对无线网络数据在传播过程中容易被攻击的问题,提出了一种wifi安全监测与防护系统。从监测与防护两个方面进行设计,对隐藏的威胁进行感知与过滤,同时动态分配网络带宽,避免资源浪费。面对异常SSID与ARP攻击进行检测与防御,并构建一体化平台实现系统的管理。
关键词:信息安全;wifi安全监测;网络攻击防护
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2019)09-0026-02
1引言
随着网络的快速普及,无线网络以其开放、共享的特性对社会的影响越来越大,人们对无线网络的要求也越来越高,公众及企业对wifi的需求已逐步从覆盖(能用)向体验(好用)方面发展,提升wifi的服务与质量是大数据时代的潮流与趋势。
另一方面,无线网络因为数据在空气中传输的特性,方便对数据进行捕获,容易受到攻击者的青睐[1]。大多家庭的wifi密码设置十分简易,甚至一些用户直接使用默认密码,这导致许多wifi遭到ARP攻击或DNS劫持攻击。一旦遭遇DNS劫持攻击,用户在登录网站时输入的账号密码、甚至是用于网上支付的支付密码都会被攻击者盗取,严重威胁到用户的财产安全。
同时,一些传统的无线网络设备,功能固定,升级和维护只能使用厂家的固件,无法由别的人开发与扩展使用功能,具备一定的局限性。本系统使用一个嵌入式的Linux发行版,作为最底层的系统。Linux具有开源的特性,可以为用户带来更多的选择。用户可以将相应的c/c++代码,通过专门的编译器来编译成一个相应的可执行程序,来不断扩展整个系统的功能,具备更大的灵活性与更佳的体验。
所以,研究wifi安全监测与防护技术,开发对应的一体化管理软件具有明显的实际意义和社会价值。
2相关概念
1)OpenWRT系统:
OpenWRT是一个开源的嵌入式Linux系统,提供了一些能对数据包进行分析和处理的接口,常被用来网络设备软件的开发[2]。
2)BeaconFram:
BeaconFrame作为一种定时广播发送的帧,主要有两种用途:一种用途是通知网络AP是否存在,另一种用途的使用场景是Station与AP建立联系的时候。使用Scan扫描之后,Station会得到Beacon,会从中获知AP的存在;在扫描时,也可以直接通过主动发送Probe来判断网络中AP的存在性。换句话说, Station与AP建立联系的方式主要有主动扫描和被动扫描两种。除此之外,在Beacon Frame中还包含了Power Save、以及地区等信息。
3)ARP攻击:
ARP攻击的具体表现形式是ARP欺骗。攻击者通过伪造IP地址与MAC地址,使网络中的ARP通信量激增,以达到阻塞网络的目的。攻击者会持续不断的发出伪造的ARP响应包,使目标主机ARP缓存中的IP-MAC条目被更改,此时,网络就会中断或受到中间人攻击[3]。可以通过编写程序来获取当前局域网内的数据包,分析是否有一个IP对应多个MAC地址,进而定位攻击者,将对应的设备拉入黑名单。
3需求分析
“监测”与“防护”是本项目的主要业务需求。鉴于用户在使用设备的过程中,难以确保自己的隐私和数据不被轻易泄露,所以设备应该像电脑中的“杀毒软件”保护电脑的安全一样,能够检测环境中是否存在异常。“监测”指设备会检测当前环境是否正常,这也是监测的目的。“防护”指在发现异常的时候的保护措施,如果发现问题而不去解决问题,则没有解决用户数据与隐私面临泄露的风险,达不到防护的目标。
结合实际情况,业务需求可以更加细致的划分为以下几个方面:
1)威胁感知:对于一些敏感的数据包做出合理的响应机制,能够对设备本身发起的攻击进行防御。
2)威胁过滤:丢弃或返回一些故意伪造的数据包,干扰攻击者的判断。如果攻击者已经在当前设备的网络环境中,能够对攻击者进行屏蔽。
3)智能带宽控制:合理分配网络带宽,避免使用者过多时,网络资源的不足;使用者较少时,网络资源的浪费。
4)构建一体化管理平台:要避免管理者额外地安装软件,方便地对整个wifi安全监测与防护系统进行管理与日志审计。
5)安全检测:能够分析当前网络环境中的设备情况是否异常(包括不仅限于伪热点,ARP欺骗,DHCP攻击等),避免让入侵者有机可乘。
4系统设计与实现
在硬件方面,本系统的物理设备本身就能就数据包的转发和路由的选择,存在硬件基础。在软件方面,本系统使用OpenWRT作为软件基础。主要实现了以下功能:
1)异常SSID检测:
通过编写相关程序来分析AP定期发送的BeaconFrame中的某些字节,来获取发送这些BeaconFrame的AP的MAC与SSID。程序再根据这些信息,判断当前环境中是否有相同的SSID设备,当SSID相同时,是否存在“伪热点”。其实现如图1所示:
2)ARP攻击检测与防御:
通过编写程序来获取当前局域网内的数据包,分析是否有一个IP对应多个MAC地址,进而定位攻擊者,将对应的设备列入黑名单处理。
3)端口扫描与防御:
一般正常的用户,并不会去批量的探测局域网内的相关主机的端口是否开启,参考“蜜罐”机制,设备错误的告知扫描设备一些端口的开放情况,当扫描设备尝试去访问这些特殊的端口时,可以判定为是攻击者,将由防火墙进行处理,如图2所示。
4)MAC地址厂商识别:
根据IEEE规定的OUI(OrganizationallyUniqueIdentifier),MAC地址前6位(16进制下)由相关的机构进行统一分配,也就是说,可以调研相关的厂商MAC地址数据库,写入系统中。然后程序获取当前的一些设备的MAC地址,再与数据库中的进行匹配,根据前6位来判定设备厂商,从而实现MAC地址厂商识别。
5)智能带宽控制:
采用Max-MinFairness算法,对网络带宽进行公平分配。WiFi负载监测如图3所示:
5总结
本文利用开源的OpenWRT开发了一个wifi安全监测与防护系统,完成了异常SSID监测,ARP攻击检测,端口扫描及防御,厂商MAC地址识别,动态带宽分配等功能的开发,同时构建了一体化的系统管理平台。其中,在厂商MAC地址识别方面,还可以进一步扩展到根据不同设备厂商设备之间的功率机衰减差异判断MAC地址是否是伪造的。
参考文献:
[1] 李亚方.WIFI无线网络技术及其安全问题分析[J].网络安全技术与应用,2016(12):114-117.
[2] 张博,曲强.基于OpenWrt的无线监控系统[J].电子世界,2016(8):78-79.
[3] 智阳光,胡曦明,马苗.浅析ARP攻击原理及其防御[J].网络安全技术与应用,2017(:7):30-32.
【通联编辑:梁书】