本发明涉及网络安全技术领域,尤其涉及检测无线网络恶意性的方法及装置。
背景技术:
商超、门店、咖啡厅、机场等公共场所,往往架设有公用无线网络,其中最常用的就是wifi,公共场所通过一个或多个ap(accesspoint,接入点)实现预设范围内的wifi覆盖,为用户提供了方便的上网环境。
然而,公共场所wifi的安全性一般较差,一些恶意wifi很容易导致用户的个人信息泄露。比如,攻击者通过搭建恶意ap,并通过恶意ap的dhcp(dynamichostconfigurationprotocol,动态主机配置协议)服务器为客户端分配恶意dns(domainnamesystem,域名系统)代理的ip地址,这样,用户通过客户端上网时,恶意dns代理会将客户端的域名请求解析到恶意web代理,恶意web代理植入恶意脚本到相应网络数据包,从而将用户引诱到非法网站上,实施抓包嗅探、网络钓鱼等非法窃取用户个人信息的行为,这将导致用户在不经意间泄露个人信息,严重威胁了用户的上网安全,目前还缺乏一种有效检测wifi恶意性的方法。
技术实现要素:
本发明的主要目的在于提出一种检测无线网络恶意性的方法及装置,旨在实现无线网络恶意性的主动检测,提高用户使用无线网络上网的安全性。
为实现上述目的,本发明提供一种检测无线网络恶意性的方法,所述方法包括如下步骤:
在移动终端接入无线网络时,通过所述无线网络的接入点向dns服务器发送域名解析请求,所述域名解析请求携带预设的域名数据;
获取所述dns服务器解析所述域名数据得到的ip地址,判断所述ip地址是否与预设的ip地址匹配,记录第一判断结果;
根据所述ip地址发起第一网络访问请求,判断响应的所述第一网络访问请求中是否被注入恶意脚本,记录第二判断结果;
根据所述第一判断结果和所述第二判断结果分析并判断所述无线网络的恶意性。
可选地,所述根据所述ip地址发起第一网络访问请求,判断响应的所述第一网络访问请求中是否被注入脚本,记录第二判断结果的步骤之后,还包括:
根据预设知名网站的ip地址发起第二网络访问请求,判断响应的所述第二网络访问请求中是否被注入脚本,并记录第三判断结果;
所述根据所述第一判断结果和所述第二判断结果分析并判断所述无线网络的恶意性的步骤包括:
根据所述第一判断结果、所述第二判断结果和所述第三判断结果分析并判断所述无线网络的恶意性。
可选地,所述判断响应的所述第二网络访问请求中是否被注入脚本的步骤包括:
将响应的所述第二网络访问请求中的脚本与预设的所述知名网站的脚本进行对比;
若响应的所述第二网络访问请求中的脚本与预设的所述知名网站的脚本不匹配,则判定响应的所述第二网络访问请求中被注入恶意脚本。
可选地,所述根据所述第一判断结果、所述第二判断结果和所述第三判断结果分析并判断所述无线网络的恶意性的步骤包括:
对所述第一判断结果、所述第二判断结果和所述第三判断结果进行分析,得到所述无线网络的风险等级;
若所述风险等级大于或等于预设的风险等级,则判定所述无线网络为恶意无线网络。
可选地,所述根据所述第一判断结果和所述第二判断结果分析并判断所述无线网络的恶意性的步骤之后,还包括:
在判定所述无线网络为恶意无线网络时,发出相应告警信息。
此外,为实现上述目的,本发明还提供一种检测无线网络恶意性的装置,所述装置包括:
发送模块,用于在移动终端接入无线网络时,通过所述无线网络的接入点向dns服务器发送域名解析请求,所述域名解析请求携带预设的域名数据;
第一判断模块,用于获取所述dns服务器解析所述域名数据得到的ip地址,判断所述ip地址是否与预设的ip地址匹配,记录第一判断结果;
第二判断模块,用于根据所述ip地址发起第一网络访问请求,判断响应的所述第一网络访问请求中是否被注入恶意脚本,记录第二判断结果;
分析模块,用于根据所述第一判断结果和所述第二判断结果分析并判断所述无线网络的恶意性。
可选地,所述装置还包括:
第三判断模块,用于根据预设知名网站的ip地址发起第二网络访问请求,判断响应的所述第二网络访问请求中是否被注入脚本,并记录第三判断结果;
所述分析模块还用于根据所述第一判断结果、所述第二判断结果和所述第三判断结果分析并判断所述无线网络的恶意性。
可选地,所述第三判断模块还用于:
将响应的所述第二网络访问请求中的脚本与预设的所述知名网站的脚本进行对比;
若响应的所述第二网络访问请求中的脚本与预设的所述知名网站的脚本不匹配,则判定响应的所述第二网络访问请求中被注入恶意脚本。
可选地,所述分析模块还用于:
对所述第一判断结果、所述第二判断结果和所述第三判断结果进行分析,得到所述无线网络的风险等级;
若所述风险等级大于或等于预设的风险等级,则判定所述无线网络为恶意无线网络。
可选地,所述装置还包括:
告警模块,用于在判定所述无线网络为恶意无线网络时,发出相应告警信息。
本发明在移动终端接入无线网络时,通过所述无线网络的接入点向dns服务器发送域名解析请求,所述域名解析请求携带预设的域名数据;获取所述dns服务器解析所述域名数据得到的ip地址,判断所述ip地址是否与预设的ip地址匹配,记录第一判断结果;根据所述ip地址发起第一网络访问请求,判断响应的所述第一网络访问请求中是否被注入恶意脚本,记录第二判断结果;根据所述第一判断结果和所述第二判断结果分析并判断所述无线网络的恶意性。通过上述方式,本发明能够判断dns服务器是否被劫持,以及判断响应的网络访问请求中是否被注入恶意脚本,从而能够实现无线网络恶意性的主动检测,提高用户使用无线网络上网的安全性。
附图说明
图1为本发明检测无线网络恶意性的方法第一实施例的流程示意图;
图2为本发明检测无线网络恶意性的方法第二实施例的流程示意图;
图3为本发明检测无线网络恶意性的方法第三实施例的流程示意图;
图4为本发明检测无线网络恶意性的装置第一实施例的功能模块示意图;
图5为本发明检测无线网络恶意性的装置第二实施例的功能模块示意图;
图6为本发明检测无线网络恶意性的装置第三实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种检测无线网络恶意性的方法。
参照图1,图1为本发明检测无线网络恶意性的方法第一实施例的流程示意图。所述方法包括如下步骤:
步骤s10,在移动终端接入无线网络时,通过所述无线网络的接入点向dns服务器发送域名解析请求,所述域名解析请求携带预设的域名数据;
在本实施例中,移动终端包括智能手机、平板电脑、笔记本等具有无线网络接入功能的设备,无线网络即wlan(wirelesslocalareanetworks,无线局域网络),是一种利用射频技术进行据传输的系统,常见的wlan热点信号包括cmcc(中国移动)、chinanet(中国公用计算机互联网)等。wifi作为无线联网的技术之一,被广泛应用于各种场合,通常情况下,用户通过移动终端的wifi连接功能即可实现无线网络的接入。
本实施例的应用场景可以为:用户将手机携带进商超、门店、咖啡厅或机场等公共场所,该公共场所通过一个或多个ap(如无线路由器)实现预设范围内的wifi覆盖,用户使用手机接入wifi,并启用手机上的相关应用程序对当前接入的wifi进行安全检测,相关检测程序在一个隔离的环境中运行,以保证在当前wifi为恶意wifi时,用户的手机系统不会受到攻击。
具体地,在移动终端接入无线网络时,首先通过无线网络的接入点向dns服务器发送域名解析请求,该域名解析请求携带预设的域名数据,且该域名数据对应的ip地址是已知的。比如,已知域名数据为:xxx.com,其对应的ip地址为202.108.22.5,移动终端通过ap向dns服务器发送xxx.com的域名解析请求,以使dns服务器将域名解析为ip地址,若该ap本身是恶意的,则会将域名解析请求发送到恶意dns服务器,若该ap是合法的,其所对应的dns服务器也可能遭遇劫持而变为恶意dns服务器。
步骤s20,获取所述dns服务器解析所述域名数据得到的ip地址,判断所述ip地址是否与预设的ip地址匹配,记录第一判断结果;
移动终端获取dns服务器解析域名数据得到的ip地址,判断获取到的ip地址是否与预设的ip地址匹配,并记录第一判断结果。
在dns服务器是恶意的情况下,其解析得到的ip地址将会是一个虚假的ip地址,比如解析上述域名xxx.com得到的ip地址将不会是202.108.22.5,移动终端通过判断dns服务器解析域名数据得到的ip地址是否与预设的ip地址匹配,从而可以获知dns服务器的劫持状态,若dns服务器返回的ip地址与预设的ip地址不匹配,则判定dns服务器被劫持,此时移动终端记录下dns服务器的劫持状态。
步骤s30,根据所述ip地址发起第一网络访问请求,判断响应的所述第一网络访问请求中是否被注入恶意脚本,记录第二判断结果;
该步骤中,移动终端根据dns服务器返回的ip地址发起第一网络访问请求,判断响应的第一网络访问请求中是否被注入恶意脚本,记录第二判断结果。
若dns服务器返回的ip地址是虚假的,则网络访问请求将发送到恶意web服务器,恶意web服务器会将网络访问请求转发到真实网站,并在真实网站的http响应中注入http、js(javascript,一种脚本语言)等攻击脚本,比如攻击脚本为http://www.yyy.com/xxx/a.js,此时客户端向http://www.yyy.com/xxx/a.js的网络访问请求同样会被恶意web服务器劫持,此时恶意web服务器根本不向真实的yyy服务器发起请求,只是返回其预先准备的“桩”文件,该“桩”文件包含黑客的恶意代码且有很长的缓存时间。很长时间之后,即使用户连接的不是该恶意wifi而是正常wifi,但是由于攻击者已经将“桩”文件缓存到受害者的手机,当受害者访问www.yyy.com的时候,就会触发恶意代码的执行,造成信息泄露。
由于恶意脚本一般具有明显的特征,因而移动终端可以将响应的第一网络访问请求中的脚本数据与预先设置的常见恶意脚本数据进行对比,若两者相同,则判定响应的第一网络访问请求中被注入了恶意脚本,此时移动终端记录下http响应的脚本注入状态。
步骤s40,根据所述第一判断结果和所述第二判断结果分析并判断所述无线网络的恶意性。
移动终端在记录下第一判断结果和第二判断结果后,再根据第一判断结果和第二判断结果分析并判断无线网络的恶意性。具体地,如果dns服务器解析所述域名数据得到的ip地址与预设的ip地址不匹配,或者响应的第一网络访问请求中被注入恶意脚本,则移动终端可以判定当前连接的无线网络为恶意无线网络,当然,移动终端也可以只在响应的第一网络访问请求中被注入恶意脚本时判定当前连接的无线网络为恶意无线网络,具体实施时可进行灵活设置。
进一步地,在步骤s40之后,还可以包括:在判定所述无线网络为恶意无线网络时,发出相应告警信息。
在判定当前连接的无线网络为恶意无线网络时,移动终端可向用户发出告警信息,告警信息包括危险类型、危险程度等,告警方式包括文字、语音、震动等,用户在接收到告警信息后,可手动断开与该无线网络的连接,以方式个人信息泄露。
在本实施例中,在移动终端接入无线网络时,通过所述无线网络的接入点向dns服务器发送域名解析请求,所述域名解析请求携带预设的域名数据;获取所述dns服务器解析所述域名数据得到的ip地址,判断所述ip地址是否与预设的ip地址匹配,记录第一判断结果;根据所述ip地址发起第一网络访问请求,判断响应的所述第一网络访问请求中是否被注入恶意脚本,记录第二判断结果;根据所述第一判断结果和所述第二判断结果分析并判断所述无线网络的恶意性。通过上述方式,本实施例能够判断dns服务器是否被劫持,以及判断响应的网络访问请求中是否被注入恶意脚本,从而能够实现无线网络恶意性的主动检测,提高用户使用无线网络上网的安全性。
进一步地,参照图2,图2为本发明检测无线网络恶意性的方法第二实施例的流程示意图。基于上述图1所示的实施例,在步骤s30之后,还可以包括:
步骤s50,根据预设知名网站的ip地址发起第二网络访问请求,判断响应的所述第二网络访问请求中是否被注入脚本,并记录第三判断结果;
此时步骤s40可以替换为:
步骤s60,根据所述第一判断结果、所述第二判断结果和所述第三判断结果分析并判断所述无线网络的恶意性。
在本实施例中,为进一步准确判断当前无线网络的恶意性,移动终端可以预先设置几个知名网站的ip地址,然后根据预设知名网站的ip地址发起第二网络访问请求,判断响应的第二网络访问请求中是否被注入脚本,并记录第三判断结果。
进一步地,判断响应的第二网络访问请求中是否被注入脚本的步骤可以包括:
步骤s51,将响应的所述第二网络访问请求中的脚本与预设的所述知名网站的脚本进行对比;
步骤s52,若响应的所述第二网络访问请求中的脚本与预设的所述知名网站的脚本不匹配,则判定响应的所述第二网络访问请求中被注入恶意脚本。
作为一种实施方式,移动终端可预先调查并保存预设知名网站的正常响应页面,页面中包含正常的脚本,移动终端将响应的第二网络访问请求中的脚本与预先保存的正常脚本进行对比,若两者不匹配,则可判定无线网络为恶意无线网络,此时移动终端可将该无线网络归类为高风险,并强制断开与该无线网络的连接。
需要说明的是,向知名网站发起网络访问请求的原因在于:相对于普通网站,知名网站往往访问流量大,在用户驻留公共场所的短暂时间内,网络攻击者以知名网站如百度、新浪、网易等为主要脚本注入对象,向客户端注入恶意代码的可能性就更大。
本实施例考虑了恶意无线网络的上述攻击特点,通过向知名网站发起网络访问请求,判断响应的网络访问请求中是否被注入脚本,结合之前的判断结果综合分析无线网络的恶意性,提高了判断结果的准确性。
进一步地,参照图3,图3为本发明检测无线网络恶意性的方法第三实施例的流程示意图。基于上述图2所示的实施例,步骤s60可以包括:
步骤s61,对所述第一判断结果、所述第二判断结果和所述第三判断结果进行分析,得到所述无线网络的风险等级;
步骤s62,若所述风险等级大于或等于预设的风险等级,则判定所述无线网络为恶意无线网络。
在本实施中,判断无线网络恶意性的方法可以为:综合分析第一判断结果、第二判断结果和第三判断结果,得到所述无线网络的风险等级。比如,可预先为每个风险评估项设置权重,比如,可将dns服务器被劫持设置为低风险权重,将网络访问请求被注入恶意脚本设置为高风险权重等,具体实施时可进行灵活设置。之后,移动终端分别检测每个风险评估项,并根据检测结果和预先设置的权重评估此次网络恶意性检测的风险等级,若评估得到的风险等级大于或等于预设的风险等级,则判定无线网络为恶意无线网络,否则判定无线网络是安全的。
本实施例通过设置风险等级,能够使用户清楚获知无线网络的安全程度,从而在无线网络风险较低时不影响用户的正常上网,而在风险较高时发出告警信息,以防止用户敏感信息的泄露。
本发明还提供一种检测无线网络恶意性的装置。
参照图4,图4为本发明检测无线网络恶意性的装置第一实施例的功能模块示意图。所述装置包括:
发送模块10,用于在移动终端接入无线网络时,通过所述无线网络的接入点向dns服务器发送域名解析请求,所述域名解析请求携带预设的域名数据;
在本实施例中,移动终端包括智能手机、平板电脑、笔记本等具有无线网络接入功能的设备,无线网络即wlan(wirelesslocalareanetworks,无线局域网络),是一种利用射频技术进行据传输的系统,常见的wlan热点信号包括cmcc(中国移动)、chinanet(中国公用计算机互联网)等。wifi作为无线联网的技术之一,被广泛应用于各种场合,通常情况下,用户通过移动终端的wifi连接功能即可实现无线网络的接入。
本实施例的应用场景可以为:用户将手机携带进商超、门店、咖啡厅或机场等公共场所,该公共场所通过一个或多个ap(如无线路由器)实现预设范围内的wifi覆盖,用户使用手机接入wifi,并启用手机上的相关应用程序对当前接入的wifi进行安全检测,相关检测程序在一个隔离的环境中运行,以保证在当前wifi为恶意wifi时,用户的手机系统不会受到攻击。
具体地,在移动终端接入无线网络时,首先发送模块10通过无线网络的接入点向dns服务器发送域名解析请求,该域名解析请求携带预设的域名数据,且该域名数据对应的ip地址是已知的。比如,已知域名数据为:xxx.com,其对应的ip地址为202.108.22.5,移动终端通过ap向dns服务器发送xxx.com的域名解析请求,以使dns服务器将域名解析为ip地址,若该ap本身是恶意的,则会将域名解析请求发送到恶意dns服务器,若该ap是合法的,其所对应的dns服务器也可能遭遇劫持而变为恶意dns服务器。
第一判断模块20,用于获取所述dns服务器解析所述域名数据得到的ip地址,判断所述ip地址是否与预设的ip地址匹配,记录第一判断结果;
第一判断模块20获取dns服务器解析域名数据得到的ip地址,判断获取到的ip地址是否与预设的ip地址匹配,并记录第一判断结果。
在dns服务器是恶意的情况下,其解析得到的ip地址将会是一个虚假的ip地址,比如解析上述域名xxx.com得到的ip地址将不会是202.108.22.5,移动终端通过判断dns服务器解析域名数据得到的ip地址是否与预设的ip地址匹配,从而可以获知dns服务器的劫持状态,若dns服务器返回的ip地址与预设的ip地址不匹配,则第一判断模块20判定dns服务器被劫持,并记录下dns服务器的劫持状态。
第二判断模块30,用于根据所述ip地址发起第一网络访问请求,判断响应的所述第一网络访问请求中是否被注入恶意脚本,记录第二判断结果;
第二判断模块30根据dns服务器返回的ip地址发起第一网络访问请求,判断响应的第一网络访问请求中是否被注入恶意脚本,记录第二判断结果。
若dns服务器返回的ip地址是虚假的,则网络访问请求将发送到恶意web服务器,恶意web服务器会将网络访问请求转发到真实网站,并在真实网站的http响应中注入http、js(javascript,一种脚本语言)等攻击脚本,比如攻击脚本为http://www.yyy.com/xxx/a.js,此时客户端向http://www.yyy.com/xxx/a.js的网络访问请求同样会被恶意web服务器劫持,此时恶意web服务器根本不向真实的yyy服务器发起请求,只是返回其预先准备的“桩”文件,该“桩”文件包含黑客的恶意代码且有很长的缓存时间。很长时间之后,即使用户连接的不是该恶意wifi而是正常wifi,但是由于攻击者已经将“桩”文件缓存到受害者的手机,当受害者访问www.yyy.com的时候,就会触发恶意代码的执行,造成信息泄露。
由于恶意脚本一般具有明显的特征,因而第二判断模块30可以将响应的第一网络访问请求中的脚本数据与预先设置的常见恶意脚本数据进行对比,若两者相同,则判定响应的第一网络访问请求中被注入了恶意脚本,此时记录下http响应的脚本注入状态。
分析模块40,用于根据所述第一判断结果和所述第二判断结果分析并判断所述无线网络的恶意性。
在记录下第一判断结果和第二判断结果后,分析模块40再根据第一判断结果和第二判断结果分析并判断无线网络的恶意性。具体地,如果dns服务器解析所述域名数据得到的ip地址与预设的ip地址不匹配,或者响应的第一网络访问请求中被注入恶意脚本,则分析模块40可以判定当前连接的无线网络为恶意无线网络,当然,分析模块40也可以只在响应的第一网络访问请求中被注入恶意脚本时判定当前连接的无线网络为恶意无线网络,具体实施时可进行灵活设置。
在本实施例中,在移动终端接入无线网络时,发送模块10通过所述无线网络的接入点向dns服务器发送域名解析请求,所述域名解析请求携带预设的域名数据;第一判断模块20获取所述dns服务器解析所述域名数据得到的ip地址,判断所述ip地址是否与预设的ip地址匹配,记录第一判断结果;第二判断模块30根据所述ip地址发起第一网络访问请求,判断响应的所述第一网络访问请求中是否被注入恶意脚本,记录第二判断结果;分析模块40根据所述第一判断结果和所述第二判断结果分析并判断所述无线网络的恶意性。通过上述方式,本实施例能够判断dns服务器是否被劫持,以及判断响应的网络访问请求中是否被注入恶意脚本,从而能够实现无线网络恶意性的主动检测,提高用户使用无线网络上网的安全性。
进一步地,参照图5,图5为本发明检测无线网络恶意性的装置第二实施例的功能模块示意图。基于上述图4所示的实施例,所述装置还可以包括:
第三判断模块50,用于根据预设知名网站的ip地址发起第二网络访问请求,判断响应的所述第二网络访问请求中是否被注入脚本,并记录第三判断结果;
所述分析模块40还用于根据所述第一判断结果、所述第二判断结果和所述第三判断结果分析并判断所述无线网络的恶意性。
在本实施例中,为进一步准确判断当前无线网络的恶意性,可以预先设置几个知名网站的ip地址,然后第三判断模块50根据预设知名网站的ip地址发起第二网络访问请求,判断响应的第二网络访问请求中是否被注入脚本,并记录第三判断结果。
第三判断模块50还用于:将响应的所述第二网络访问请求中的脚本与预设的所述知名网站的脚本进行对比;若响应的所述第二网络访问请求中的脚本与预设的所述知名网站的脚本不匹配,则判定响应的所述第二网络访问请求中被注入恶意脚本。
作为一种实施方式,可预先调查并保存预设知名网站的正常响应页面,页面中包含正常的脚本,第三判断模块50将响应的第二网络访问请求中的脚本与预先保存的正常脚本进行对比,若两者不匹配,则可判定无线网络为恶意无线网络,此时可将该无线网络归类为高风险,并强制断开与该无线网络的连接。
需要说明的是,向知名网站发起网络访问请求的原因在于:相对于普通网站,知名网站往往访问流量大,在用户驻留公共场所的短暂时间内,网络攻击者以知名网站如百度、新浪、网易等为主要脚本注入对象,向客户端注入恶意代码的可能性就更大。
本实施例考虑了恶意无线网络的上述攻击特点,通过向知名网站发起网络访问请求,判断响应的网络访问请求中是否被注入脚本,结合之前的判断结果综合分析无线网络的恶意性,提高了判断结果的准确性。
进一步地,继续参照图5,所述分析模块40还用于:对所述第一判断结果、所述第二判断结果和所述第三判断结果进行分析,得到所述无线网络的风险等级;若所述风险等级大于或等于预设的风险等级,则判定所述无线网络为恶意无线网络。
在本实施中,分析模块40判断无线网络恶意性的方法可以为:综合分析第一判断结果、第二判断结果和第三判断结果,得到所述无线网络的风险等级。比如,可预先为每个风险评估项设置权重,比如,可将dns服务器被劫持设置为低风险权重,将网络访问请求被注入恶意脚本设置为高风险权重等,具体实施时可进行灵活设置。之后,分析模块40分别检测每个风险评估项,并根据检测结果和预先设置的权重评估此次网络恶意性检测的风险等级,若评估得到的风险等级大于或等于预设的风险等级,则判定无线网络为恶意无线网络,否则判定无线网络是安全的。
本实施例通过设置风险等级,能够使用户清楚获知无线网络的安全程度,从而在无线网络风险较低时不影响用户的正常上网,而在风险较高时发出告警信息,以防止用户敏感信息的泄露。
进一步地,参照图6,图6为本发明检测无线网络恶意性的装置第三实施例的功能模块示意图。基于上述的实施例,所述装置还可以包括:
告警模块60,用于在判定所述无线网络为恶意无线网络时,发出相应告警信息。
在判定当前连接的无线网络为恶意无线网络时,告警模块50可向用户发出告警信息,告警信息包括危险类型、危险程度等,告警方式包括文字、语音、震动等,用户在接收到告警信息后,可手动断开与该无线网络的连接,以方式个人信息泄露。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。