一种防止域名服务器被攻击的方法、系统及防火墙与流程

文档序号:12134825阅读:365来源:国知局
一种防止域名服务器被攻击的方法、系统及防火墙与流程

本发明涉及网络通信安全防护技术领域,特别涉及一种防止域名服务器被攻击的方法、系统及防火墙。



背景技术:

域名解析系统,简称DNS(Domain Name System),能够帮助用户更加方便的访问互联网。由于DNS的存在,互联网用户在访问网站的时候可以直接使用域名来实现,而不用记住网站所使用的IP地址。通过域名最终找到对应的IP地址的行为叫做域名解析。

用户在进行DNS查询动作时,DNS查询报文首先到达DNS缓存服务器,如果DNS缓存服务器中没有该域名与IP的映射关系的话,会去授权服务器请求获取映射关系,然后把获取到的映射关系存储到内存中一段时间,直到记录老化,如果有客户端再次请求这个域名的解析时,缓存服务器会直接将缓存中的映射关系回应给客户端。

在实现本发明的过程中,发明人发现至少存在如下问题:在现有的DNS中,黑客向DNS缓存服务器发送一个不存在的子域名解析请求,缓存服务器不存在相应子域名的映射表,就会向授权服务器发起查询请求;在授权服务器回应这个请求前,黑客会伪造大量的DNS回复报文发送到DNS缓存服务器。这些伪造的DNS回复报文的源IP地址是授权服务器的源IP地址,目的端口是缓存服务器的源端口。DNS缓存服务器将黑客发送的映射表存在缓存中后,当前授权服务器将真正的回应报文发送到缓存服务器时,缓存服务器不再接收,直接丢弃。这样当客户端再次通过缓存服务器请求解析这个域名时,就会被指向恶意主机。如果将银行的域名重新定向到黑客所伪造的网站就会对用户造成大量的经济损失。



技术实现要素:

本发明的目的是提供一种防止域名服务器被攻击的方法、系统及防火墙,通过在域名服务器之外部署防火墙,当防火墙接收到子域名解析请求之后,将相应的主域名解析请求发送给域名服务器。域名服务器返回主域名解析回复报文,防火墙提取主域名解析回复报文中的主域名以及对应的IP地址。防火墙发送子域名解析请求,当接收到子域名解析回复报文时,提取子域名解析回复报文中的主域名以及对应的IP地址并与存储的主域名以及对应的IP地址进行比对,若一致将截获的所述子域名解析回复报文转发至域名服务器。这样就能够有效的避免黑客通过发送错误的子域名解析请求,去串改相应的主域名对应的IP地址,防止用户在不知情的情况下,登陆钓鱼网站,保证用户数据网络的安全性。

根据本发明实施例的一个方面提供了一种防止域名服务器被攻击的方法,应用于防火墙,包括:截获接收到子域名解析请求;发送与所述子域名解析请求相对应的主域名解析请求;检测是否接收到基于所述主域名解析请求返回的主域名解析回复报文;若接收到,则发送截获的所述子域名解析请求;截获响应于所述子域名解析请求返回的子域名解析回复报文;判断所述子域名解析回复报文是否存在主域名解析回复报文;若存在,则将该主域名解析回复报文与之前接收到的主域名解析回复报文进行比对;若比对结果一致,则转发截获的所述子域名解析回复报文。

进一步,在所述向所述域名服务器发送与所述子域名解析请求相对应的主域名解析请求之前包括:从所述子域名解析请求中提取域名信息,所述域名信息包括子域名和主域名;根据所述主域名生成主域名解析请求。

进一步,在检测是否接收到域名服务器基于所述主域名解析请求所回复的主域名解析回复报文之后,还包括:从所述主域名解析回复报文中提取IP地址;建立所述主域名与所述IP地址的映射关系;将所述主域名与所述IP地址的映射关系添加至映射缓存表以对其存储。

进一步,为所述映射缓存表中的每条映射关系设置超时时间;当映射缓存表中的某条映射关系在该映射缓存表中所存储的时间达到所述超时时间时,将该条映射关系从该映射缓存表中删除。

根据本发明实施例的另一个方面提供了一种防止域名服务器被攻击的系统,包括:第一获取模块:用于截获接收到的子域名解析请求;主域名发送模块:用于发送与所述子域名解析请求相对应的主域名解析请求;检测模块:用于检测是否接收到基于所述主域名解析请求返回的主域名解析回复报文;子域名发送模块:用于当接收到基于所述主域名解析请求返回的主域名解析回复报文时,发送截获的所述子域名解析请求;第二获取模块:用于截获响应于所述子域名解析请求返回的子域名解析回复报文;判断模块:用于判断所述子域名解析回复报文是否存在主域名解析回复报文;对比模块:用于当所述子域名解析回复报文存在主域名解析回复报文时,将该主域名解析回复报文与之前从域名服务器所接收的主域名解析回复报文进行比对;回复报文发送模块:用于当比对结果一致时,转发截获的所述子域名解析回复报文。

进一步,还包括:域名提取模块:用于从所述子域名解析请求中提取域名信息,所述域名信息包括子域名和主域名;生成模块:用于根据所述主域名生成主域名解析请求。

进一步,还包括:IP地址提取模块:用于从所述主域名解析回复报文中提取IP地址;映射模块:用于建立所述主域名与所述IP地址的映射关系;存储模块:用于将所述主域名与所述IP地址的映射关系添加至映射缓存表以对其存储。

进一步,还包括:设置单元:用于为所述映射缓存表中的每条映射关系设置超时时间;删除单元:当映射缓存表中的某条映射关系在该映射缓存表中所存储的时间达到所述超时时间时,将该条映射关系从该映射缓存表中删除。

本发明实施例通过设置防火墙,当接收到子域名解析请求时,先对其对应的主域名进行解析,得到相应的IP地址后存储在防火墙中,再对子域名进行解析,当防火墙收到子域名解析回复报文后,提取其中的主域名以及相应的IP地址,并将其与之前存储的主域名以及相应的IP地址进行比对,若一致将截获的所述子域名解析回复报文转发至域名服务器。这样通过将对主域名解析时得到的主域名IP地址与对子域名解析时的到的主域名IP地址进行对比,防止黑客篡改主域名的IP地址。提高用户的数据网路安全性,防止钓鱼网站对用户造成损失。

附图说明

图1是本发明第一实施例提供的一种防止域名服务器被攻击的方法的流程图;

图2是本发明第二实施例提供的一种防止域名服务器被攻击的方法的流程图;

图3是本发明第三实施例提供的一种防止域名服务器被攻击的方法的流程图;

图4是本发明第四实施例提供的一种防止域名服务器被攻击的方法的流程图;

图5是本发明第一实施例提供的一种防止域名服务器被攻击的系统的模块关系示意图;

图6本发明第一实施例提供的映射模块的内部关系示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。

本发明的实施例公开了一种防止域名服务器被攻击的方法、系统及防火墙。通过在域名服务器之外部署防火墙,来防止恶意篡改主域名对应的IP地址。当防火墙接收到子域名解析请求时,先对其对应的主域名进行解析,并将解析后得到的主域名以及对应的IP地址进行存储。在对其子域名进行解析,接收到子域名解析回复报文后,提取其中的主域名以及对应的IP地址。将其与之前存储的主域名以及对应的IP地址进行比对。若比对一致,则将截获的所述子域名解析回复报文转发至域名服务器。通过这样的设置,防止黑客利用域名服务器在接收子域名解析回复报文时,发送大量虚假报文,篡改相应主域名的IP地址。防止用户在不知情的情况下,登陆钓鱼网站。保证用户数据网络的安全性。

请参阅图1,图1是本发明第一实施例提供的一种防止域名服务器被攻击的方法的流程图。

如图1所示:一种防止域名服务器被攻击的方法可以包括以下步骤S1至步骤S8:

步骤S1,截获接收到子域名解析请求。

具体的,在本发明实施例中,截获到的子域名解析请求可以通过手机、iPad、电脑等终端发出,即用户通过上述终端进行子域名解析请求时,需通过终端向域名服务器发送子域名解析请求。防火墙截获子域名解析请求,并提取子域名解析请求中的域名信息。

步骤S2,发送与所述子域名解析请求相对应的主域名解析请求;

具体的,防火墙截获子域名解析请求之后,对子域名解析请求中的域名信息进行提取,并根据提取到的域名信息分析出主域名信息,根据主域名信息向域名服务器发送相应的主域名解析请求。当防火墙向域名服务器发送主域名解析请求之后,防火墙等待域名服务器的应答报文,在未收到应答报文之前,防火墙不做任何处理,不转发关于子域名的子域名解析请求和应答报文。

步骤S3,检测是否接收到基于所述主域名解析请求返回的主域名解析回复报文。

具体的,域名服务器在接收到防火墙发送的主域名解析请求后,提取主域名解析请求中的域名信息,根据域名服务器中存储的映射表查找相应主域名的IP地址信息,若查找到相应的IP地址信息,则将IP地址信息写入主域名解析回复报文,并发送给防火墙;若未查找到相应的IP地址信息,则将域名错误信息写入主域名解析回复报文,并发送给防火墙。防火墙实时检测是否接收到域名服务器基于所述主域名解析请求所回复的主域名解析回复报文。

步骤S4,若接收到,则发送截获的所述子域名解析请求。

具体的,防火墙在未收到主域名解析回复报文之前,不做任何处理,不转发关于子域名的子域名解析请求和应答报文。防火墙系统接收到主域名解析回复报文时,对主域名解析回复报文的报文信息进行提取;若提取到IP地址信息,则将IP地址信息以及对应的主域名信息存储至防火墙;若提取到域名错误信息,则向客户端返回所述域名错误信息。

步骤S5,截获响应于所述子域名解析请求返回的子域名解析回复报文。

具体的,域名服务器接收到子域名解析请求,并提取所述子域名请求信息中的域名信息;域名服务器不会具有这种随机产生的子域名与IP地址的映射表,因此会向授权域名服务器去查询。域名服务器根据域名信息,向授权域名服务器发送相应子域名查询请求。授权服务器对相应子域名查询完毕后,会向域名服务器发送子域名解析回复报文。防火墙截获向域名服务器发送的对所述子域名解析请求所回复的子域名解析回复报文。

步骤S6,判断所述子域名解析回复报文是否存在主域名解析回复报文。

具体的,防火墙在截取到子域名解析回复报文后,对报文中的主域名以及相应IP地址信息进行提取。若不存在主域名以及相应IP地址信息,则向客户端返回域名错误信息。

步骤S7,若存在,则将该主域名解析回复报文与之前接收到的主域名解析回复报文进行比对;

具体的,当防火墙从子域名解析回复报文提取到主域名以及相应IP地址信息是,将提取到的主域名以及相应IP地址信息与前述存储在防火墙中的主域名以及相应IP地址信息进行对比,若对比结果不一致,则不进行转发行为。

步骤S8,若比对结果一致,则转发截获的所述子域名解析回复报文。

具体的,防火墙将从子域名解析回复报文提取到的主域名以及相应IP地址信息与前述存储在防火墙中的主域名以及相应IP地址信息进行对比,若比对结果一致,则将截获的所述子域名解析回复报文转发至域名服务器。域名服务器接收子域名解析回复报文,提取查询子域名解析回复报文中子域名及其对应的IP地址信息,并将子域名与对应的IP地址信息的映射关系存储至映射表中,并将所述相应IP地址信息返回至客户端。

现有技术中,当用户向域名服务器发送子域名解析请求,域名服务器直接对其子域名解析请求进行接收,并通过授权域名服务器进行查询。这样设置容易造成安全隐患,容易给不法分子留下漏洞,让不法分子通过发送错误子域名解析请求来篡改相应的主域名的IP地址。本发明实施例设置了防火墙,通过防火墙先对子域名解析请求相应的主域名进行IP地址查询,并对查询结果进行存储,再对子域名进行IP地址查询,在接收到子域名IP地址查询结果后,先提取子域名查询结果中主域名以及相应的IP地址,并与防火墙存储的主域名以及相应的IP地址进行对比,若对比结果一致,再将截获的所述子域名解析回复报文转发至域名服务器。有效的防止了不法分子通过发送错误子域名解析请求来篡改相应的主域名的IP地址。为用户提供了安全的数据网络环境。

请参阅图2,图2是本发明第二实施例提供的一种防止域名服务器被攻击的方法的流程图。如图2所示,本发明实施例在第一实施例的基础上,从所述子域名解析请求中提取域名信息,所述域名信息包括子域名和主域名;根据所述主域名生成主域名解析请求。

具体的,当防火墙截获客户端向域名服务器发送的子域名解析请求之后,防火墙对子域名解析请求中的域名信息进行提起,域名信息中包括了子域名信息以及与子域名对应的主域名的信息,防火墙根据相应主域名信息生成主域名解析请求,并将此主域名解析请求发送给域名服务器。

请参阅图3,图3是本发明第三实施例提供的一种防止域名服务器被攻击的方法的流程图。如图3所示,本发明实施例在第一实施例的基础上,从所述主域名解析回复报文中提取IP地址;建立所述主域名与所述IP地址的映射关系;将所述主域名与所述IP地址的映射关系添加至映射缓存表以对其存储。

具体的,防火墙从主域名解析回复报文中提取与主域名相应的IP地址信息,并建立主域名与相应IP地址的映射关系,将所述主域名与相应的IP地址映射关系添加至映射关系缓存列表进行存储,以备下次调用时的提取。

请参阅图4,图4是本发明第四实施例提供的一种防止域名服务器被攻击的方法的流程图;如图4所示,本发明实施例在第一实施例的基础上,为所述映射缓存表中的每条映射关系预先设置超时时间;当映射缓存表中的某条映射关系在该映射缓存表中所存储的时间达到所述超时时间时,则将该条映射关系从该映射缓存表中删除。

具体的,防火墙对映射缓存列表中的每天映射关系都预先设置超时时间,为了防止防火墙缓存中存储大量的映射关系后,处理其他事物的速度变慢,当映射表中的映射关系所存储的时间到达超时时间后,则将该条映射关系从该映射列表中删除。

请参阅图5和图6,图5是本发明第一实施例提供的一种防止域名服务器被攻击的系统的模块关系示意图,图6本发明第一实施例提供的映射模块的内部关系示意图。

如图5、图6所示,第一获取模块1:用于截获接收到的子域名解析请求;主域名发送模块2:用于发送与所述子域名解析请求相对应的主域名解析请求;检测模块3:用于检测是否接收到基于所述主域名解析请求返回的主域名解析回复报文;子域名发送模块4:用于当接收到基于所述主域名解析请求返回的主域名解析回复报文时,发送截获的所述子域名解析请求;第二获取模块5:用于截获响应于所述子域名解析请求返回的子域名解析回复报文;判断模块6:判断所述子域名解析回复报文是否存在主域名解析回复报文;对比模块7,用于当所述子域名解析回复报文存在主域名解析回复报文时,将该主域名解析回复报文与之前接收到的主域名解析回复报文进行比对;回复报文发送模块8:用于当比对结果一致时,转发截获的所述子域名解析回复报文。域名提取模块9:用于从所述子域名解析请求中提取域名信息,所述域名信息包括子域名和主域名;生成模块10:用于根据所述主域名生成主域名解析请求。IP地址提取模块11:用于从所述主域名解析回复报文中提取IP地址;映射模块12:用于建立所述主域名与所述IP地址的映射关系;存储模块13:用于将所述主域名与所述IP地址的映射关系添加至映射缓存表以对其存储。设置单元121:用于为所述映射缓存表中的每条映射关系设置超时时间;删除单元122:用于当映射缓存表中的某条映射关系在该映射缓存表中所存储的时间达到所述超时时间时,将该条映射关系从该映射缓存表中删除。

具体的,客户端采集用户的子域名解析请求,并将所述子域名解析请求发送至域名服务器;第一获取模块1与域名提取模块9相连接,用于截获子域名解析请求,并将子域名解析请求发送给域名提取模块9,域名提取模块9与生成模块10相连接,提取子域名解析请求中的域名信息;提取到的域名信息包括主域名信息和子域名信息,并将提取到的域名信息发送给生成模块10。生成模块10与主域名发送模块2相连接,根据域名提取模块9提取出的主域名信息生成主域名解析请求,并将主域名解析请求发送给主域名发送模块2。主域名发送模块2将接收到的主域名解析请求发送给域名服务器。域名服务器在接收到主域名发送模块2发送的主域名解析请求后,提取主域名解析请求中的域名信息,根据域名服务器中存储的映射表查找相应主域名的IP地址信息,若查找到相应的IP地址信息,则将IP地址信息写入主域名解析回复报文,并发送给防火墙。若未查找到相应的IP地址信息,则将域名错误信息写入主域名解析回复报文,并发送给防火墙。

检测模块3分别于子域名发送模块4和IP地址提取模块11相连接。实时监测是否接收到主域名解析回复报文,若未检测到主域名解析回复报文,则不做任何处理,不转发关于子域名的子域名解析请求和应答报文。若检测到主域名解析回复报文,则对子域名发送模块4发送消息,子域名发送模块4向域名服务器发送子域名解析请求,并将主域名解析回复报文发送给IP地址提取模块11。IP地址提取模块11与映射模块12相连接,对主域名解析回复报文的报文信息进行提取;若提取到IP地址信息,则将IP地址信息以及对应的主域名信息发送给映射模块12,映射模块12与存储模块13相连接,将所述主域名与所述IP地址建立映射关系,并将所述主域名与所述IP地址的映射关系添加至映射缓存表,将添加完成的映射缓存表发送给存储模块13,存储模块13将接收到的映射缓存表进行存储。若提取到域名错误信息,则向客户端返回所述域名错误信息。

域名服务器接收到子域名解析请求,并提取所述子域名请求信息中的域名信息;域名服务器不会具有这种随机产生的子域名与IP地址的映射表,因此会向授权域名服务器去查询。域名服务器根据域名信息,向授权域名服务器发送相应子域名查询请求。授权服务器对相应子域名查询完毕后,回向域名服务器发送子域名解析回复报文。第二获取模块5与判断模块6相连,接截获向域名服务器发送的对所述子域名解析请求所回复的子域名解析回复报文。并将子域名解析回复报文发送至判断模块6。判断模块6与对比模块7相连接,对报文中的主域名以及相应IP地址信息进行提取。若不存在主域名以及相应IP地址信息,则向客户端返回域名错误信息。若存在,对比模块7则将该主域名解析回复报文与之前从域名服务器所接收的主域名解析回复报文进行比对。

若对比结果不一致,则不进行转发行为。若比对结果一致,则将截获的所述子域名解析回复报文转发至回复报文发送模块8,回复报文发送模块8将子域名解析回复报文发送给域名服务器。域名服务器接收子域名解析回复报文,提取查询子域名解析回复报文中子域名及其对应的IP地址信息,并将子域名与对应的IP地址信息的映射关系存储至映射表中,并将所述相应IP地址信息返回至客户端。

映射模块12中设置单元121对映射缓存列表中的每天映射关系都预先设置超时时间,为了防止防火墙缓存中存储大量的映射关系后,处理其他事务的速度变慢,当映射表中的银蛇关系所存储的时间到达超时时间后,删除单元122将该条映射关系从该映射列表中删除。

本发明实施例通过设置防火墙,当接收到子域名解析请求时,先对其对应的主域名进行解析,得到相应的IP地址后存储在防火墙中,再对子域名进行解析,当防火墙收到子域名解析回复报文后,提取其中的主域名以及相应的IP地址,并将其与之前存储的主域名以及相应的IP地址进行比对,若一致将截获的所述子域名解析回复报文转发至域名服务器。这样通过将对主域名解析时得到的主域名IP地址与对子域名解析时的到的主域名IP地址进行对比,防止黑客篡改主域名的IP地址。提高用户的数据网路安全性,防止钓鱼网站对用户造成损失。

本发明实施例还提供了一种防火墙,该防火墙内设置有上述防止域名服务器被攻击的系统,该防火墙与所述域名服务器通信连接。

如上所述,详细介绍了本发明实施例提供的一种防止域名服务器被攻击的方法和系统、及包括该防止域名服务器被攻击的系统的防火墙,本发明实施例通过在域名服务器之外部署防火墙,来防止恶意篡改主域名对应的IP地址。当防火墙接收到子域名解析请求时,先对其对应的主域名进行解析,并将解析后得到的主域名以及对应的IP地址进行存储。在对其子域名进行解析,接收到子域名解析回复报文后,提取其中的主域名以及对应的IP地址。将其与之前存储的主域名以及对应的IP地址进行比对。若比对一致,则将截获的所述子域名解析回复报文转发至域名服务器。通过这样的设置,防止黑客利用域名服务器在接收子域名解析回复报文时,发送大量虚假报文,篡改相应主域名的IP地址。防止用户在不知情的情况下,登陆钓鱼网站。保证用户数据网络的安全性。

应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1