System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及dns处理技术,尤其涉及一种dns污染处理方法、装置、电子设备及存储介质。
技术介绍
1、dns(domain name system)服务器的基本功能是完成域名解析,即提供ip地址与域名之间的映射关系。一台本地dns服务器上可以只记录本地主机的ip地址与域名之间的映射关系,若通过该本地dns服务器向权威dns服务器请求获取非本地主机的ip地址与域名之间的映射关系时,该本地dns服务器可以将权威dns服务器返回的内容进行保存,从而构成了dns缓存。然而,该dns缓存易于受到dns缓存投毒攻击,所述dns缓存投毒的原理是攻击服务器通过使用虚假ip地址替换权威dns服务器返回的真实ip地址,从而使dns缓存中的信息为虚假信息。
2、相关技术中,对于dns缓存投毒的情况,通常是接收到多个dns应答数据包时,向权威dns服务器发送查询,以确定各dns应答数据包是否是对应于查询请求的目标dns应答数据包。然而,这种检测方法需要消耗大量时间、效率较低。
技术实现思路
1、为克服相关技术中存在的问题,本公开提供一种dns污染处理方法、装置、电子设备及存储介质,以克服现有技术中目标dns应答数据包的检测方法需要消耗大量时间、效率较低的问题。
2、根据本公开实施例的第一方面,提供一种dns污染处理方法,包括:
3、向dns服务器发送dns查询请求;
4、在所述dns服务器基于所述dns查询请求返回的应答数据包为至少两个的情况下,确定各个应答数
5、基于所述初始应答顺序,从至少两个应答数据包中确定所述dns查询请求对应的目标dns应答数据包。
6、在一些实施例中,所述基于所述初始应答顺序,从至少两个应答数据包中确定所述dns查询请求对应的目标dns应答数据包,包括:
7、将各个应答数据包按照所述初始应答顺序,依次存储至先入后出队列中;
8、将从所述先入后出队列中读取各个应答数据包的顺序,确定为各个应答数据包的目标应答顺序;
9、基于所述目标应答顺序,从所述先入后出队列存储的应答数据包中确定所述目标dns应答数据包。
10、在一些实施例中,所述基于所述目标应答顺序,从所述先入后出队列存储的应答数据包中确定所述目标dns应答数据包,包括:
11、将按照所述目标应答顺序的指示,从所述先入后出队列读取出的第一个应答数据包,确定为所述目标dns应答数据包。
12、在一些实施例中,所述方法还包括:
13、在发送所述dns查询请求的过程中,获取所述dns查询请求的请求数据包;
14、从所述请求数据包中解析出第一事务id;
15、基于所述第一事务id,构建所述先入后出队列。
16、在一些实施例中,所述将各个应答数据包按照所述初始应答顺序,依次存储至先入后出队列中,包括:
17、从各个应答数据包中解析出第二事务id;
18、将各个应答数据包的第二事务id与所述第一事务id进行匹配,确定与第一事务id相匹配的应答数据包作为第一候选应答数据包;
19、按照所述初始应答顺序,将各个第一候选应答数据包,依次存储至所述先入后出队列中。
20、在一些实施例中,在所述基于所述目标应答顺序,从所述先入后出队列存储的应答数据包中确定所述目标dns应答数据包之前,还包括:
21、确认第一个存储至所述先入后出队列的应答数据包的存储时长达到预设时长阈值。
22、在一些实施例中,所述将各个应答数据包按照所述初始应答顺序,依次存储至先入后出队列中,包括:
23、对各个应答数据包进行过滤处理,得到满足端口条件和/或事务id条件的应答数据包作为第二候选应答数据包;
24、按照所述初始应答顺序,将各个第二候选应答数据包,依次存储至所述先入后出队列中。
25、在一些实施例中,所述按照所述初始应答顺序,将各个第二候选应答数据包,依次存储至所述先入后出队列中,包括:
26、获取各个第二候选应答数据包中的标志位信息和/或回答问题区域的资源记录信息;
27、基于各个第二候选应答数据包中的标志位信息和/或回答问题区域的资源记录信息,对各个第二候选应答数据包进行过滤处理;
28、按照所述初始应答顺序,将过滤后的第二候选应答数据包依次存储至所述先入后出队列中。
29、在一些实施例中,所述方法还包括:
30、在检测到所述目标dns应答数据包的取出操作结束的情况下,对所述先入后出队列执行清除处理。
31、根据本公开实施例的第二方面,提供一种dns污染处理装置,包括:
32、发送模块,被配置为向dns服务器发送dns查询请求;
33、第一确定模块,被配置为在所述dns服务器基于所述dns查询请求返回的应答数据包为至少两个的情况下,确定各个应答数据包的初始应答顺序;其中,所述初始应答顺序用于指示接收到各个应答数据包的顺序;
34、第二确定模块,被配置为基于所述初始应答顺序,从至少两个应答数据包中确定所述dns查询请求对应的目标dns应答数据包。
35、在一些实施例中,所述第二确定模块,具体包括:
36、第一存储模块,被配置为将各个应答数据包按照所述初始应答顺序,依次存储至先入后出队列中;
37、第三确定模块,被配置为将从所述先入后出队列中读取各个应答数据包的顺序,确定为各个应答数据包的目标应答顺序;
38、第四确定模块,被配置为基于所述目标应答顺序,从所述先入后出队列存储的应答数据包中确定所述目标dns应答数据包。
39、在一些实施例中,所述第四确定模块,具体被配置为:
40、将按照所述目标应答顺序的指示,从所述先入后出队列读取出的第一个应答数据包确定为所述目标dns应答数据包。
41、在一些实施例中,所述dns污染处理装置,还包括:
42、第一获取模块,被配置为在发送所述dns查询请求的过程中,获取所述dns查询请求的请求数据包;
43、第二获取模块,被配置为从所述请求数据包中解析出第一事务id;
44、构建模块,被配置为基于所述第一事务id,构建所述先入后出队列。
45、在一些实施例中,所述第一存储模块,具体被配置为:
46、从各个应答数据包中解析出第二事务id;
47、将各个应答数据包的第二事务id与所述第一事务id进行匹配,确定与第一事务id相匹配的应答数据包作为第一候选应答数据包;
48、按照所述初始应答顺序,将各个第一候选应答数据包,依次存储至所述先入后出队列中。
49、在一些实施例中,所述dns污染处理装置,还包括:
<本文档来自技高网...【技术保护点】
1.一种DNS污染处理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述基于所述初始应答顺序,从至少两个应答数据包中确定所述DNS查询请求对应的目标DNS应答数据包,包括:
3.根据权利要求2所述的方法,其特征在于,所述基于所述目标应答顺序,从所述先入后出队列存储的应答数据包中确定所述目标DNS应答数据包,包括:
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述将各个应答数据包按照所述初始应答顺序,依次存储至先入后出队列中,包括:
6.根据权利要求2所述的方法,其特征在于,在所述基于所述目标应答顺序,从所述先入后出队列存储的应答数据包中确定所述目标DNS应答数据包之前,还包括:
7.根据权利要求2所述的方法,其特征在于,所述将各个应答数据包按照所述初始应答顺序,依次存储至先入后出队列中,包括:
8.根据权利要求7所述的方法,其特征在于,所述按照所述初始应答顺序,将各个第二候选应答数据包,依次存储至所述先入后出队
9.根据权利要求2至8任一项所述的方法,其特征在于,所述方法还包括:
10.一种DNS污染处理装置,其特征在于,所述装置,包括:
11.一种电子设备,其特征在于,包括:
12.一种非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,实现如权利要求1至9任一项所述DNS污染处理方法中的步骤。
...【技术特征摘要】
1.一种dns污染处理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述基于所述初始应答顺序,从至少两个应答数据包中确定所述dns查询请求对应的目标dns应答数据包,包括:
3.根据权利要求2所述的方法,其特征在于,所述基于所述目标应答顺序,从所述先入后出队列存储的应答数据包中确定所述目标dns应答数据包,包括:
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述将各个应答数据包按照所述初始应答顺序,依次存储至先入后出队列中,包括:
6.根据权利要求2所述的方法,其特征在于,在所述基于所述目标应答顺序,从所述先入后出队列存储的应答数据...
【专利技术属性】
技术研发人员:贾永鹏,邱春武,聂彦超,马超,
申请(专利权)人:新浪技术中国有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。