一种基于用户网络访问场景的防护的方法和装置与流程

文档序号:11990932阅读:208来源:国知局
一种基于用户网络访问场景的防护的方法和装置与流程
本发明涉及计算机安全领域,具体涉及一种基于用户网络访问场景的防护方法和装置。

背景技术:
随着互联网的发展,用户的终端也可以通过各种局域网连入互联网发送或者获取所需的信息。比如用户终端在咖啡厅等公共区域通过公用无线局域网连入互联网,所述无线局域网比如wifi(wifi是一种可以将个人电脑、手持设备(如PDA、手机)等终端以无线方式互相连接的技术),而用户的终端如果通过无线局域网进行一些网银交易,或者进行一些重要机密事件处理等,但如wifi等无线局域网本身并不一定安全。如果用户的终端在公共的无线局域网中进行连接动作,其MAC(Medium/MediaAccessControl,介质访问控制)信息基本上是对该局域网中其他的节点是公开的,从而用户终端的隐私信息很容易被其他终端获取,如果存在恶意的终端,比如进行ARP(AddressResolutionProtocol,地址解析协议)欺骗的终端,那么这对于该用户终端来说,其信息泄露的风险显然是很大的。

技术实现要素:
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种基于用户网络访问场景的防护装置和相应的一种基于用户网络访问场景的防护方法。依据本发明的一个方面,提供了一种基于用户网络访问场景的防护方法,包括:当用户终端接入局域网后,提取所述局域网对应的设备标识;将所述设备标识与预置的设备标识库进行比较,判断当前局域网所处的场景;当判断所述局域网所处的场景为不安全的网络场景后,则提示所述用户终端所处网络环境,并监控所述用户终端访问的网站的安全等级;当所述用户终端访问的网站的安全等级达到阈值,则拦截访问,并提示用户终端是否进入安全访问模式。可选的,所述设备标识包括所述局域网对应路由器的MAC地址和/或服务集标识;进一步的,将所述设备标识与预置的设备标识库进行比较,判断当前局域网所处的场景包括:获取所述局域网对应路由器的MAC地址,将其与云端服务器中的预置的设备标识库进行比较,判断当前局域网所处的场景;所述设备标识库包括MAC地址及对应的场景,所述场景包括公共网络场景;和/或,获取所述局域网对应路由器的服务集标识地址,将其与云端服务器中的预置的设备标识库进行比较,判断当前局域网所处的场景;所述设备标识库包括服务集标识及对应的场景,所述场景包括公共网络场景。可选的,所述安全访问模式包括:将所述用户终端在所述局域网内与外界的通信修改为只与所述局域网内的路由器进行通信。可选的,还包括:根据所述设备标识,判断所在局域网是否为欺诈局域网;进一步的所述安全访问模式包括:阻断接入所述局域网。可选的,所述将所述用户终端在所述局域网内与外界的通信修改为只与所述局域网内的路由器进行通信包括:将所述用户终端的MAC地址隐藏为只允许所述局域网内的路由器获取。可选的,所述将所述用户终端的MAC地址隐藏为只允许所述局域网内的路由器获取包括:针对所述用户终端接收到的非所述局域网的路由器的ARP请求包,阻止所述用户终端针对所述ARP请求包回应ARP应答包;阻止用户终端在所述局域网中,以非所述局域网的路由器为目的地址而发送的ARP广播包;放过用户终端发送给路由器的ARP应答包,并将用户终端发送给所述局域网路由器的ARP请求包修改为ARP应答包后发送给所述路由器。可选的,所述将所述用户终端的MAC地址隐藏为只允许所述局域网内的路由器获取包括:拦截用户终端出栈的ARP包;判断所述ARP包的目标IP是否为所述局域网的路由器IP;如果所述ARP包的目标IP不是路由器IP,则丢弃所述ARP包;如果所述ARP包的目标IP是路由器IP,则判断所述ARP包的目标MAC是否为广播地址;如果所述ARP包的目标MAC地址不是广播地址,则发送所述ARP包给所述路由器;如果所述ARP包的目标MAC地址是广播地址,则将所述ARP包修改为定向发送给路由器的定向ARP应答包,并将所述定向ARP应答包发送给所述路由器。可选的,还包括:在操作系统的Ring0层预置的出栈ARP包处理驱动;所述出栈ARP包处理驱动适于拦截用户终端出栈的ARP包;进一步的,所述拦截用户终端出栈的ARP包包括:通过操作系统的Ring0层的出栈ARP包处理驱动,拦截用户终端出栈的ARP包。可选的,还包括:在操作系统的Ring3层预置ARP包处理模块;所述ARP包处理模块适于分析和修改所述ARP包;进一步的,所述如果所述ARP包的目标IP是路由器IP,则判断所述ARP包的目标MAC是否为广播地址,则进一步包括:出栈ARP包处理驱动将所述拦截的ARP包进行缓存,并通过信号量Event通知在操作系统的Ring3层的ARP包处理模块读取所述缓存的ARP包;当所述ARP包处理模块接收到所述信号量Event后,读取所述缓存的ARP包,并判断所述ARP包的目标MAC地址是否为广播地址。可选的,所述判断所述ARP包的目标MAC地址是否为广播地址包括:解析所述ARP包,获取以太网包头结构_ehhdr和/或ARP数据包头结构_arphdr;判断所述以太网包头结构_ehhdr中的eh_dst数据值是否为广播地址,和/或,判断所述ARP数据包头结构_arphdr中的arp_tha数据值是否为广播地址。可选的,还包括:当将所述用户终端在所述局域网内与外界的通信修改为只与所述局域网内的路由器进行通信失败,则所述用户终端向交换机发送主动防御包;所述主动防御包包括通知所述交换机当前用户终端的真实MAC地址的信息。依据本发明的另一个方面,提供了一种基于用户网络访问场景的防护装置,包括:设备标识提取模块,适于当用户终端接入局域网后,提取所述局域网对应的设备标识;场景判断模块,适于将所述设备标识与预置的设备标识库进行比较,判断当前局域网所处的场景;第一提示模块,适于当所述局域网所处的场景为不安全的网络场景时,则提示所述用户终端所处网络环境,并监控所述用户终端访问的网站的安全等级;第二提示模块,适于当所述用户终端访问的网站的安全等级达到阈值,则拦截访问,并提示用户终端是否进入安全访问模块。可选的,所述设备标识包括所述局域网对应路由器的MAC地址和/或服务集标识;进一步的,所述场景判断模块包括:第一场景判断模块,适于获取所述局域网对应路由器的MAC地址,将其与云端服务器中的预置的设备标识库进行比较,判断当前局域网所处的场景;所述设备标识库包括MAC地址及对应的场景,所述场景包括公共网络场景;和/或,第二场景判断模块,适于获取所述局域网对应路由器的服务集标识地址,将其与云端服务器中的预置的设备标识库进行比较,判断当前局域网所处的场景;所述设备标识库包括服务集标识及对应的场景,所述场景包括公共网络场景。可选的,所述安全访问模块包括:将所述用户终端在所述局域网内与外界的通信修改为只与所述局域网内的路由器进行通信。可选的,还包括:欺诈判断模块,适于根据所述设备标识,判断所在局域网是否为欺诈局域网;进一步的所述安全访问模块包括:阻断接入所述局域网。可选的,所述安全访问模式包括:第一安全访问模式,适于将所述用户终端的MAC地址隐藏为只允许所述局域网内的路由器获取。可选的,所述第一安全访问模式包括:第一阻止模块,适于针对所述用户终端接收到的非所述局域网的路由器的ARP请求包,阻止所述用户终端针对所述ARP请求包回应ARP应答包;第二阻止模块,适于阻止用户终端在所述局域网中,以非所述局域网的路由器为目的地址而发送的ARP广播包;修改模块,适于放过用户终端发送给路由器的ARP应答包,并将用户终端发送给所述局域网路由器的ARP请求包修改为ARP应答包后发送给所述路由器。可选的,所述第一安全访问模式包括:ARP拦截模块,适于拦截用户终端出栈的ARP包;第一判断模块,适于判断所述ARP包的目标IP是否为所述局域网的路由器IP;丢弃模块,适于如果判断所述ARP包的目标IP不是路由器IP,则丢弃所述ARP包;第二判断模块,适于如果判断所述ARP包的目标IP是路由器IP,则判断所述ARP包的目标MAC是否为广播地址;直接发送模块,适于如果判断所述ARP包的目标MAC地址不是广播地址,则发送所述ARP包给所述路由器;第一修改模块,适于如果判断所述ARP包的目标MAC地址是广播地址,则将所述ARP包修改为定向发送给路由器的定向ARP应答包,并将所述定向ARP应答包发送给所述路由器。可选的,还包括:主动防御包发送模块,适于当将所述用户终端在所述局域网内与外界的通信修改为只与所述局域网内的路由器进行通信失败,则所述用户终端向交换机发送主动防御包;所述主动防御包包括通知所述交换机当前用户终端的真实MAC地址的信息。根据本发明的一种基于用户网络访问场景的防护方法可以判断用户是否在不安全的局域网场景中,并根据判断结果监控并提示用户端慎重在不安全的公共网络中使用高安全等级的应用(网银交易应用等)或者访问高安全等级的网站(网银交易网站等),并可进行安全保护,由此可解决用户终端无意中在公共网络等不安全的网络场景中将隐私信息暴露给局域网中其他终端问题,特别是解决了对于接入公共网络中用户终端的信息安全的问题,取得了降低用户终端信息被泄露的风险、提高用户终端信息安全性的有益效果。上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅适于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了根据本发明一个实施例的一种基于用户网络访问场景的防护方法实施例一的流程示意图;图2示出了根据本发明一个实施例的一种基于用户网络访问场景的防护方法实施例二的流程示意图;图2a示出根据本发明一个实施例的ARP结构示例;图3示出了根据本发明一个实施例的一种基于用户网络访问场景的防护装置的结构示意图;以及图4示出了根据本发明一个实施例的一种基于用户网络访问场景的防护系统的结构示意图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。本发明的核心思想之一为:预先采集各种公共网络场景的设备标识,构建设备标识库,当用户终端接入某个局域网时,获取所在局域网对应的设备标识与所述设备标识库进行比较,根据比较结果判定其所处的局域网的场景(比如是否是咖啡厅、麦当劳等场所的公共网络。),然后基于场景对用户终端进行提醒,甚至使用户终端进入安全访问模式,以避免隐私信息泄露。实施例一参照图1,其示出了本发明的一种基于用户网络访问场景的防护方法实施例一的流程示意图,具体可以包括:步骤110,当用户终端接入局域网后,提取所述局域网对应的设备标识;用户使用用户端,比如手机、笔记本电脑等移动终端接入局域网后,比如无线局域网(例如wifi),以与广域网(比如internet)进行通信,那么继而无线局域网后,可提取接入的局域网对应的设备标识,比如对应路由器的MAC,或者SSID(ServiceSetIdentifier,服务集标识)等。步骤120,将所述设备标识与预置的设备标识库进行比较,判断当前局域网所处的场景;本发明实施例可预先搜集wifi等局域网的公共网络的相关设备标识,比如路由的MAC,SSID,关键字(例如移动CMCC信号,麦当劳等公共网络热点信息),然后针对局域网的相关信息建立设备标识库,在设备标识库中针对每个设备标识,可描述该设备标识是公共网络场景还是私人网络场景,还可具体描述个局域网所处的场景,比如前述麦当劳、咖啡厅等场景。如前所述,针对局域网可预先建立设备标识库,存储设备标识以及对应的场景信息,比如设备标识A-公共网络(咖啡厅)、设备标识B-公共网络(麦当劳)等公用无线局域网场景。在本发明实施例中,一般收集所有公共网络的设备标识。可选的,所述设备标识包括所述局域网对应路由器的MAC地址和/或服务集标识;在本发明实施例中,可针对局域网的路由等接入设备的MAC地址构建设备标识库,可针对SSID构建设备标识库,也可同时针对MAC和SSID构建设备标识库。另外,本发明实施例中还可将局域网其他的与设备标识相关的信息作为标识,构建设备标识库,也可与上述标识一起构建设备标识库。进一步的,将所述设备标识与预置的设备标识库进行比较,判断当前局域网所处的场景包括:步骤S121,获取所述局域网对应路由器的MAC地址,将其与云端服务器中的预置的设备标识库进行比较,判断当前局域网所处的场景;所述设备标识库包括MAC地址及对应的场景,所述场景包括公共网络场景;在本发明实施例中,可由云端服务器收集公共网络的MAC地址等信息,构建设备标识库,其形式可以如:MAC字段-公共网络;若具体知道MAC字段是具体是何种公共网络,其形式可以如:MAC字段-公共网络-麦当劳,说明该MAC字段是麦当劳餐厅的公共网络。那么本申请实施例在获取到所接入的局域网的MAC地址后可将MAC与云端服务器的设备标识库进行匹配,匹配到对应的MAC地址是公共网络场景后,即可判断所述局域网所处的场景为不安全的网络场景。和/或,步骤S122,获取所述局域网对应路由器的服务集标识地址,将其与云端服务器中的预置的设备标识库进行比较,判断当前局域网所处的场景;所述设备标识库包括服务集标识及对应的场景,所述场景包括公共网络场景。在本发明实施例中,可由云端服务器收集公共网络的SSID地址等信息,构建设备标识库,其形式可以如:SSID-公共网络;若具体知道SSID是具体是何种公共网络,其形式可以如:SSID-公共网络-星巴克咖啡厅,说明该SSID是星巴克咖啡厅的公共网络。那么本申请实施例在获取到所接入的局域网的SSID后可将SSID与云端服务器的设备标识库进行匹配,匹配到对应的SSID是公共网络场景后,即可判断所述局域网所处的场景为不安全的网络场景。在本申请实施例中,可将设备标识发送至云端服务器进行匹配,由于局域网的相关设备标识数量相对庞大,要存储与局域网设备标识相关的设备标识库,其存储空间可能占用比较庞大,为了节省用户终端的存储空间,本发明实施例则将所述设备标识库存储于云端服务器。当然也可将设备标识库下载至本地的终端中,直接在终端中进行匹配。步骤130,当判断所述局域网所处的场景为不安全的网络场景后,则提示所述用户终端所处网络环境,并监控所述用户终端访问的网站的安全等级;当判定用户终端所接入的局域网为公共网络场景时,则提示用户终端处于公共网络场景,存在安全隐患,在确切指定所接入局域网是哪种局域网时,还可提示其具体所处的公共网络(比如处于麦当劳的局域网)。在用户终端使用终端访问网站时,还会判断其访问的网址的安全等级。本申请还可针预先对不同的网站设置不同的安全等级,比如银行网站等与用户金融账户相关的设为最高安全等级,邮箱网站等涉及用户隐私信息的网站设为次安全等级等,还可针对其他类型网站设置第三、第四安全等级等等,然后即可对用户访问的网站进行监控。其中对于手机等智能移动终端,其存在各种APP应用,这些APP应用也会访问相应的网站,那么本发明实施例监控用户终端当前运行的应用的安全等级是否达到阈值。本发明实施例可对各种应用设置安全等级,比如网银交易等与金融相关的应用设置最高安全等级,邮件、聊天工具等应用设为中等安全等级,浏览器、笑话等隐身性低的应用设为低安全等级。步骤140,当所述用户终端访问的网站的安全等级达到阈值,则拦截访问,并提示用户终端是否进入安全访问模式。如果达到,则拦截访问,则提示用户终端是否进入安全访问模式;如果用户选择进入安全访问模式,则切入安全访问模式;如果用户不选择进入安全访问模式,则放行所述访问,使其按正常流程访问。所述安全访问模式包括将所述用户终端在所述局域网内与外界的通信修改为只与所述局域网内的路由器进行通信等。在前述例子中,比如当判断到网银交易的应用实际发生,则提示关掉外部共享,或者是进入安全访问模式(在局域网中隐身,保证主机“隐身”使其MAC不可探测,欺骗者得不到主机MAC,无法实施欺骗;使用根据ARP报文的类型对ARP报文进行不同处理的方式可以实现局域网的隐身功能),使用户终端可以访问internet等网络,但是在网路中和其他的路由会隔离开,别的客户端无法访问到他的网络。在本发明实施例中,所述安全访问模式包括:将所述用户终端在所述局域网内与外界的通信修改为只与所述局域网内的路由器进行通信。当用户选择进入安全访问模式后,则控制用户终端与各路由的通信修改为只与当前无线局域网的路由器进行通信。那么用户终端的数据就无法被该无线网络中其他路由节点获取,从而可提高安全性。可选的,所述将所述用户终端在所述局域网内与外界的通信修改为只与所述局域网内的路由器进行通信包括:步骤S120,将所述用户终端的MAC地址隐藏为只允许所述局域网内的路由器获取。即使用户终端的MAC地址无法被无线局域网内其他终端获取,那么如果无线局域网内存在欺诈终端,那么由于欺诈终端无法获取当前用户终端的MAC地址,因而无法实施欺骗。所述将所述用户终端的MAC地址隐藏为只允许所述局域网内的路由器获取包括:步骤S121,针对所述用户终端接收到的非所述局域网的路由器的ARP请求包,阻止所述用户终端针对所述ARP请求包回应ARP应答包;步骤S122,阻止用户终端在所述局域网中,以非所述局域网的路由器为目的地址而发送的ARP广播包;步骤S123,放过用户终端发送给路由器的ARP应答包,并将用户终端发送给所述局域网路由器的ARP请求包修改为ARP应答包后发送给所述路由器。在OSI(OpenSystemInterconnect)开放式系统互联,也即osi模型中,ISO将整个通信功能划分为七个层次,ARP是第二层的数据链路层的通信,internet的通信过程中节点之间的通信首先需要进行ARP的交互。那么完成上述的三点即可实现用户终端的局域网隐身功能,即将所述用户终端在所述局域网内与外界的通信修改为只与所述局域网内的路由器进行通信。另外,在判断所述局域网不是安全的局域网之后,本发明实施例还可包括:可选的,本发明实施例中,还包括:步骤S124,根据所述设备标识,判断所在局域网是否为欺诈局域网。在本发明中,还可以进一步鉴别局域网的真伪,比如针对MAC地址建立一个白名单,其中提示MAC及其对应的其他设备标识。本申请中可同时获取所接入的局域网的网络接入设备的MAC地址和相关的其他关键字(比如cmcc关键字)。例如有个局域网改写个cmcc关键字标示,那么本申请会将MAC云端的白名单匹配。如果不是白名单的cmcc热点信息,则提示是假的公共wifi,进一步的还可提示用户是否进入安全访问模式,所述安全访问模式阻断接入所述局域网。可选的,还包括:步骤S160,当将所述用户终端在所述局域网内与外界的通信修改为只与所述局域网内的路由器进行通信失败,则所述用户终端向交换机发送主动防御包;所述主动防御包包括通知所述交换机当前用户终端的真实MAC地址的信息。即用户终端主动向局域网的交换机发送其真实的MAC地址,使其获得当前用户终端的真实MAC地址后,局域网中其他终端就无法伪装该用户终端的MAC地址再通知给交换机,从而达到主动防御的目的。本发明实施例可提醒用户在不安全的公共网络场景采用安全模式进行网络访问,避免用户的隐私信息被盗取,提高了用户隐私信息的安全性。实施例二参照图2,其示出了本发明的一种基于用户网络访问场景的防护方法实施例二的流程示意图,具体可以包括:步骤210,当用户终端接入局域网后,提取所述局域网对应的设备标识;比如获取无线局域网的SSID、网卡的MAC等信息。步骤220,将所述设备标识发送至云端服务器;所述云端服务器适于将所述设备标识与设备标识库进行匹配,判断当前局域网所处的场景;步骤230,接收所述云端服务器针对所述设备标识的判断结果;如果所述安全判断结果为所述局域网是安全的网络场景,则进入步骤240;如果所述安全判断结果为所述局域网为不安全的网络场景,则进入步骤250;步骤240,不对所述用户终端的ARP包做处理;如果所述安全判断结果为用户终端当前接入的局域网(比如wifi)为安全的,那么不对用户终端的ARP包做处理。步骤250,提示所述用户终端所处网络环境,并监控所述用户终端访问的网站的安全等级;步骤260判断用户终端当前运行的应用的安全等级是否达到阈值,如果达到,则拦截访问,并提示用户终端是否进入安全访问模式,即是否进入步骤270;如果未达到,则可不提示用户。步骤270,拦截用户终端出栈的ARP包;如果所述安全判断结果为用户终端当前接入的局域网(比如wifi)为安全的,那么拦截用户终端出栈的ARP包。在本发明实施例中,还包括:步骤S31,在操作系统的Ring0层预置的出栈ARP包处理驱动;所述出栈ARP包处理驱动适于拦截用户终端出栈的ARP包。进一步的,所述拦截用户终端出栈的ARP包包括:步骤S32,通过操作系统的Ring0层的出栈ARP包处理驱动,拦截用户终端出栈的ARP包。在现在的操作系统中,而每种操作4个处理器特权级别(特权环:Ring0、Ring1、Ring2和Ring3)。:Ring0-运行操作系统核心代码;Ring1-运行关键设备驱动程序和I/O处理例程;Ring2-运行其它受保护共享代码,如语言系统运行环境;Ring3-运行各种用户程序。多数UNIX、Linux以及Windows系列等大都只用了Ring0和Ring3两个特权级别。那么为了实现本发明拦截出栈的ARP包,需要在ring0层设置驱动进行拦截。步骤280,判断所述ARP包的目标IP是否为所述局域网的路由器IP;如果所述ARP包的目标IP不是路由器IP,则进入步骤281;如果所述ARP包的目标IP是路由器IP,则进入步骤282;拦截到所述ARP包后,则分析所述ARP包,判断所述ARP包的目标IP是否为所述局域网的路由器IP。在本发明实施例中,本步骤可由前述出栈ARP包处理驱动判断所述ARP包的目标IP是否为所述局域网的路由器IP。步骤281,丢弃所述ARP包;如果所述ARP包的目标IP不为所述局域网的路由器IP。那么本步骤则针对所述用户终端接收到的非所述局域网的路由器的ARP请求包,阻止所述用户终端针对所述ARP请求包回应ARP应答包;阻止用户终端在所述局域网中,以非所述局域网的路由器为目的地址而发送的ARP广播包。步骤282,判断所述ARP包的目标MAC是否为广播地址;如果所述ARP包的目标MAC地址不是广播地址,则进入步骤291;如果所述ARP包的目标MAC地址是广播地址,则进入步骤292;步骤291,发送所述ARP包给所述路由器;所述ARP包的目标MAC地址不为广播地址,所述ARP包处理模块调用所述出栈ARP包处理驱动发送所述ARP包给所述路由器。步骤292,将所述ARP包修改为定向发送给路由器的定向ARP应答包,并将所述定向ARP应答包发送给所述路由器。如前所述,ring3层属于应用层,许多复杂的逻辑可很简易的在ring层实现。进一步的,所述如果所述ARP包的目标IP是路由器IP,则判断所述ARP包的目标MAC是否为广播地址,则进一步包括:步骤S41,出栈ARP包处理驱动将所述拦截的ARP包进行缓存,并通过信号量Event通知在操作系统的Ring3层的ARP包处理模块读取所述缓存的ARP包;那么本发明实施例在Ring3层预置ARP包处理模块后,ring0出栈ARP包处理驱动将所述拦截的ARP包进行缓存,然后通过信号量Event通知在操作系统的Ring3层的ARP包处理模块读取所述缓存的ARP包。其中信号量Event可以理解为一个回调函数,该回调函数的功能为当拦截到的ARP包的目标IP是路由器IP则发送信号给ring3的ARP包处理模块,通知ARP包处理模块来取所述ARP包。步骤S42,当所述ARP包处理模块接收到所述信号量Event后,读取所述缓存的ARP包,并判断所述ARP包的目标MAC地址是否为广播地址。可选的,所述判断所述ARP包的目标MAC地址是否为广播地址包括:步骤S51,解析所述ARP包,获取以太网包头结构_ehhdr和/或ARP数据包头结构_arphdr;步骤S52,判断所述以太网包头结构_ehhdr中的eh_dst数据值是否为广播地址,和/或,判断所述ARP数据包头结构_arphdr中的arp_tha数据值是否为广播地址。参照图2a,其示出了ARP包的报文结构示例,其中包括_ehhdr定义了以太网帧头部结构;结构arphdr定义了ARP数据包头结构,其定义为,其信息适于在任何类型的介质上传送ARP请求和回答;_ehhdr结构除了包含arphdr结构外,还包含源主机和目的主机的地址。那么本发明实施例中,在获取到ARP包后,解析所述ARP包,获取以太网包头结构_ehhdr和/或ARP数据包头结构_arphdr,然后判断所述以太网包头结构_ehhdr中的eh_dst数据值是否为广播地址,和/或,判断所述ARP数据包头结构_arphdr中的arp_tha数据值是否为广播地址。即可判断判断所述ARP包的目标MAC地址是否为广播地址。根据定义,头6个字节也即eh_dst数据值是以太网目的地址ffffffffffff,这是一个广播地址,全网下的所有终端都能接收到。那么说明该ARP请求包需要被处理。其中arp_tha数据值为000000000000,而这数值表示目标硬件地址为空,也需在网内寻址,说明该ARP请求包需要被处理。步骤291,发送所述ARP包给所述路由器;所述ARP包的目标MAC地址不为广播地址,所述ARP包处理模块调用所述出栈ARP包处理驱动发送所述ARP包给所述路由器。步骤292,将所述ARP包修改为定向发送给路由器的定向ARP应答包,并将所述定向ARP应答包发送给所述路由器。所述ARP包的目标MAC地址为广播地址,那么则需要将所述ARP包修改为定向发送给路由器的定向ARP应答包,然后将所述定向ARP应答包发送给所述路由器。如前所述ARP请求包的示例中,将在原有数据包基础上修改eh_dst和arp_tha为路由器地址,修改arp_op=0x0002(表示该ARP包为应答包);然后重新封包。然后所述ARP包处理模块调用所述出栈ARP包处理驱动发送所述ARP包给所述路由器。如果所述安全判断结果为所述局域网是安全的局域网,则ARP包进行拦截,让其按原始流程进行处理。本发明实施例实现了不影响用户上网的情况下,隐藏主机设备标识等效果。实施例三参照图3,其示出了本发明的一种基于用户网络访问场景的防护装置的结构示意图,具体可以包括:设备标识提取模块310,适于当用户终端接入局域网后,提取所述局域网对应的设备标识;场景判断模块320,适于将所述设备标识与预置的设备标识库进行比较,判断当前局域网所处的场景;第一提示模块330,适于当所述局域网所处的场景为不安全的网络场景时,则提示所述用户终端所处网络环境,并监控所述用户终端访问的网站的安全等级;第二提示模块340,适于当所述用户终端访问的网站的安全等级达到阈值,则拦截访问,并提示用户终端是否进入安全访问模块。可选的,所述设备标识包括所述局域网对应路由器的MAC地址和/或服务集标识;进一步的,所述场景判断模块包括:第一场景判断模块,适于获取所述局域网对应路由器的MAC地址,将其与云端服务器中的预置的设备标识库进行比较,判断当前局域网所处的场景;所述设备标识库包括MAC地址及对应的场景,所述场景包括公共网络场景;和/或,第二场景判断模块,适于获取所述局域网对应路由器的服务集标识地址,将其与云端服务器中的预置的设备标识库进行比较,判断当前局域网所处的场景;所述设备标识库包括服务集标识及对应的场景,所述场景包括公共网络场景。可选的,所述安全访问模块包括:将所述用户终端在所述局域网内与外界的通信修改为只与所述局域网内的路由器进行通信。可选的,欺诈判断模块,适于根据所述设备标识,判断所在局域网是否为欺诈局域网;可选的,所述安全访问模式包括:第一安全访问模式,适于将所述用户终端的MAC地址隐藏为只允许所述局域网内的路由器获取。可选的,所述第一安全访问模式包括:第一阻止模块,适于针对所述用户终端接收到的非所述局域网的路由器的ARP请求包,阻止所述用户终端针对所述ARP请求包回应ARP应答包;第二阻止模块,适于阻止用户终端在所述局域网中,以非所述局域网的路由器为目的地址而发送的ARP广播包;修改模块,适于放过用户终端发送给路由器的ARP应答包,并将用户终端发送给所述局域网路由器的ARP请求包修改为ARP应答包后发送给所述路由器。可选的,所述第一安全访问模式包括:ARP拦截模块,适于拦截用户终端出栈的ARP包;第一判断模块,适于判断所述ARP包的目标IP是否为所述局域网的路由器IP;丢弃模块,适于如果判断所述ARP包的目标IP不是路由器IP,则丢弃所述ARP包;第二判断模块,适于如果判断所述ARP包的目标IP是路由器IP,则判断所述ARP包的目标MAC是否为广播地址;直接发送模块,适于如果判断所述ARP包的目标MAC地址不是广播地址,则发送所述ARP包给所述路由器;第一修改模块,适于如果判断所述ARP包的目标MAC地址是广播地址,则将所述ARP包修改为定向发送给路由器的定向ARP应答包,并将所述定向ARP应答包发送给所述路由器。可选的,所述ARP拦截模块为:在操作系统的Ring0层的出栈ARP包处理驱动;所述出栈ARP包处理驱动适于,拦截用户终端出栈的ARP包。可选的,还包括:在操作系统的Ring3层预置ARP包处理模块;所述ARP包处理模块适于分析和修改所述ARP包;进一步的,所述出栈ARP包处理驱动包括:缓存通知模块,适于出栈ARP包处理驱动将所述拦截的ARP包进行缓存,并通过信号量Event通知在操作系统的Ring3层的ARP包处理模块读取所述缓存的ARP包;所述第二判断模块属于所述ARP包处理模块,适于接收到所述信号量Event后,读取所述缓存的ARP包,并判断所述ARP包的目标MAC地址是否为广播地址。可选的,所述第二判断模块包括:解析模块,适于解析所述ARP包,获取以太网包头结构_ehhdr和/或ARP数据包头结构_arphdr;第三判断模块,适于判断所述以太网包头结构_ehhdr中的eh_dst数据值是否为广播地址,和/或,判断所述ARP数据包头结构_arphdr中的arp_tha数据值是否为广播地址。可选的,所述直接发送模块属于所述ARP包处理模块,适于调用所述出栈ARP包处理驱动发送所述ARP包给所述路由器。可选的,所述第一修改模块属于所述ARP包处理模块,适于将所述ARP包修改为定向发送给路由器的定向ARP应答包,然后发送给所述出栈ARP包处理驱动,通过所述出栈ARP包处理驱动将所述定向ARP应答包发送给路由器。可选的,还包括:主动防御包发送模块,适于当将所述用户终端在所述局域网内与外界的通信修改为只与所述局域网内的路由器进行通信失败,则所述用户终端向交换机发送主动防御包;所述主动防御包包括通知所述交换机当前用户终端的真实MAC地址的信息。实施例四参照图4,其示出了本发明的一种基于用户网络访问场景的防护系统的结构示意图,具体可以包括:云端服务器410和局域网防护装置420;所述云端服务器适于将用户终端发送的设备标识与其中的设备标识库进行匹配,判断对应的局域网所处的场景;所述一种基于用户网络访问场景的防护装置420包括:设备标识获取模块421,适于当用户终端接入局域网后,提取所述局域网对应的设备标识;设备标识发送模块422,适于将所述设备标识发送至云端服务器;安全信息接收模块423,适于接收所述云端服务器针对所述设备标识的判断结果;如果所述安全判断结果为所述局域网是安全的网络场景,则转入放行模块424;如果所述安全判断结果为所述局域网为不安全的网络场景,则转入ARP拦截模块425;放行模块424,适于不对所述用户终端的ARP包做处理;提示模块425,适于提示所述用户终端所处网络环境,并监控所述用户终端访问的网站的安全等级;切换模块426,适于判断用户终端当前运行的应用的安全等级是否达到阈值,如果达到,则拦截访问,并提示用户终端是否进入ARP拦截模块427;ARP拦截模块427,适于拦截用户终端出栈的ARP包;第一判断模块428,适于判断所述ARP包的目标IP是否为所述局域网的路由器IP;丢弃模块429,适于如果判断所述ARP包的目标IP不是路由器IP,则丢弃所述ARP包;第二判断模块430,适于如果判断所述ARP包的目标IP是路由器IP,则判断所述ARP包的目标MAC是否为广播地址;直接发送模块4301,适于如果判断所述ARP包的目标MAC地址不是广播地址,则发送所述ARP包给所述路由器;第一修改模块4302,适于如果判断所述ARP包的目标MAC地址是广播地址,则将所述ARP包修改为定向发送给路由器的定向ARP应答包,并将所述定向ARP应答包发送给所述路由器。可选的,所述ARP拦截模块为:在操作系统的Ring0层的出栈ARP包处理驱动;所述出栈ARP包处理驱动适于,拦截用户终端出栈的ARP包。可选的,还包括:在操作系统的Ring3层预置ARP包处理模块;所述ARP包处理模块适于分析和修改所述ARP包;进一步的,所述出栈ARP包处理驱动包括:缓存通知模块,适于出栈ARP包处理驱动将所述拦截的ARP包进行缓存,并通过信号量Event通知在操作系统的Ring3层的ARP包处理模块读取所述缓存的ARP包;所述第二判断模块属于所述ARP包处理模块,适于接收到所述信号量Event后,读取所述缓存的ARP包,并判断所述ARP包的目标MAC地址是否为广播地址。可选的,所述第二判断模块包括:解析模块,适于解析所述ARP包,获取以太网包头结构_ehhdr和/或ARP数据包头结构_arphdr;第三判断模块,适于判断所述以太网包头结构_ehhdr中的eh_dst数据值是否为广播地址,和/或,判断所述ARP数据包头结构_arphdr中的arp_tha数据值是否为广播地址。所述直接发送模块属于所述ARP包处理模块,适于调用所述出栈ARP包处理驱动发送所述ARP包给所述路由器。所述第一修改模块属于所述ARP包处理模块,适于将所述ARP包修改为定向发送给路由器的定向ARP应答包,然后发送给所述出栈ARP包处理驱动,通过所述出栈ARP包处理驱动将所述定向ARP应答包发送给路由器。可选的,还包括:主动防御包发送模块,适于当将所述用户终端在所述局域网内与外界的通信修改为只与所述局域网内的路由器进行通信失败,则所述用户终端向交换机发送主动防御包;所述主动防御包包括通知所述交换机当前用户终端的真实MAC地址的信息。本发明实施例中,所述将所述用户终端的MAC地址隐藏为只允许所述局域网内的路由器获取包括:拦截用户终端出栈的ARP包;判断所述ARP包的目标IP是否为所述局域网的路由器IP;如果所述ARP包的目标IP不是路由器IP,则丢弃所述ARP包;如果所述ARP包的目标IP是路由器IP,则判断所述ARP包的目标MAC是否为广播地址;如果所述ARP包的目标MAC地址不是广播地址,则发送所述ARP包给所述路由器;如果所述ARP包的目标MAC地址是广播地址,则将所述ARP包修改为定向发送给路由器的定向ARP应答包,并将所述定向ARP应答包发送给所述路由器。本发明实施例中,还包括:在操作系统的Ring0层预置的出栈ARP包处理驱动;所述出栈ARP包处理驱动适于拦截用户终端出栈的ARP包;进一步的,所述拦截用户终端出栈的ARP包包括:通过操作系统的Ring0层的出栈ARP包处理驱动,拦截用户终端出栈的ARP包。本发明实施例中,还包括:在操作系统的Ring3层预置ARP包处理模块;所述ARP包处理模块适于分析和修改所述ARP包;进一步的,所述如果所述ARP包的目标IP是路由器IP,则判断所述ARP包的目标MAC是否为广播地址,则进一步包括:出栈ARP包处理驱动将所述拦截的ARP包进行缓存,并通过信号量Event通知在操作系统的Ring3层的ARP包处理模块读取所述缓存的ARP包;当所述ARP包处理模块接收到所述信号量Event后,读取所述缓存的ARP包,并判断所述ARP包的目标MAC地址是否为广播地址。本发明实施例中,所述判断所述ARP包的目标MAC地址是否为广播地址包括:解析所述ARP包,获取以太网包头结构_ehhdr和/或ARP数据包头结构_arphdr;判断所述以太网包头结构_ehhdr中的eh_dst数据值是否为广播地址,和/或,判断所述ARP数据包头结构_arphdr中的arp_tha数据值是否为广播地址。本发明实施例中,还包括:欺诈判断模块,适于根据所述设备标识,判断所在局域网是否为欺诈局域网;进一步的所述安全访问模块包括:阻断接入所述局域网。本发明实施例中,所述安全访问模式包括:第一安全访问模式,适于将所述用户终端的MAC地址隐藏为只允许所述局域网内的路由器获取。本发明实施例中,所述第一安全访问模式包括:第一阻止模块,适于针对所述用户终端接收到的非所述局域网的路由器的ARP请求包,阻止所述用户终端针对所述ARP请求包回应ARP应答包;第二阻止模块,适于阻止用户终端在所述局域网中,以非所述局域网的路由器为目的地址而发送的ARP广播包;修改模块,适于放过用户终端发送给路由器的ARP应答包,并将用户终端发送给所述局域网路由器的ARP请求包修改为ARP应答包后发送给所述路由器。本发明实施例中,所述第一安全访问模式包括:ARP拦截模块,适于拦截用户终端出栈的ARP包;第一判断模块,适于判断所述ARP包的目标IP是否为所述局域网的路由器IP;丢弃模块,适于如果判断所述ARP包的目标IP不是路由器IP,则丢弃所述ARP包;第二判断模块,适于如果判断所述ARP包的目标IP是路由器IP,则判断所述ARP包的目标MAC是否为广播地址;直接发送模块,适于如果判断所述ARP包的目标MAC地址不是广播地址,则发送所述ARP包给所述路由器;第一修改模块,适于如果判断所述ARP包的目标MAC地址是广播地址,则将所述ARP包修改为定向发送给路由器的定向ARP应答包,并将所述定向ARP应答包发送给所述路由器。本发明实施例中,还包括:主动防御包发送模块,适于当将所述用户终端在所述局域网内与外界的通信修改为只与所述局域网内的路由器进行通信失败,则所述用户终端向交换机发送主动防御包;所述主动防御包包括通知所述交换机当前用户终端的真实MAC地址的信息。在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一种基于用户网络访问场景的防护设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为适于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1