一种验证DNS请求安全性的方法及系统技术方案

技术编号:26385348 阅读:78 留言:0更新日期:2020-11-19 23:54
本发明专利技术提供了一种验证DNS请求安全性的方法及系统,客户端通过TLS安全性组件,与服务端建立WebSocket连接通道,并将WebSocket Secure连接通道存储在连接池中;客户端接收DNS请求数据包,将DNS请求数据包通过连接池中非忙的WebSocket Secure连接通道发送到服务端;服务端接收DNS请求数据包,并获取DNS请求数据包对应的响应包,提取DNS请求数据包及响应包中的怀疑因素,并根据预设加权值计算怀疑因素对应的污染评分;服务端将污染评分与第一阈值比较,若污染评分大于所述第一阈值,返回验证不通过信息至客户端;对DNS请求数据包和其对应的响应包进行安全性验证,而不是直接返回响应包,进一步保证了客户端安全性,进一步保证了客户端所接收的DNS响应的安全和准确。

【技术实现步骤摘要】
一种验证DNS请求安全性的方法及系统
本专利技术涉及网页访问领域,尤其涉及一种验证DNS请求安全性的方法及系统。
技术介绍
DNS(DomainNameSystem,域名系统)是一项互联网基础服务,是一个能够将域名和IP地址相互映射的分布式数据库服务,它将域名解析到对应的IP地址,使人们更方便地访问互联网。但是DNS使用TCP(TransmissionControlProtocol,传输控制协议)和UDP(UserDatagramProtocol,用户数据报协议)的53端口进行明文查询,本身也不具有校验机制。这也导致DNS查询能够被劫持与污染攻击,通过拦截、伪造DNS数据包将用户导向错误网站,或窥探用户DNS请求,达到窃取用户隐私信息、钓鱼诈骗和窥探上网记录目的。为了解决明文查询安全性过低的问题,现有提出了基于签名校验的DNS安全性方案DNSSEC(DomainNameSystemSecurityExtensions,DNS安全扩展)以及基于加密的DNS安全性方案DNSoverHTTPS和DNSoverTLS;DNSSEC仅对数据包进行本文档来自技高网...

【技术保护点】
1.一种验证DNS请求安全性的方法,其特征在于,包括步骤:/nS1、客户端通过TLS安全性组件,与服务端建立WebSocket Secure连接通道,并将所述WebSocket Secure连接通道存储在连接池中;/nS2、所述客户端接收DNS请求数据包,将所述DNS请求数据包通过所述连接池中非忙的所述WebSocket Secure连接通道发送到所述服务端;/nS3、所述服务端接收所述DNS请求数据包,并获取所述DNS请求数据包对应的响应包,提取所述DNS请求数据包及所述响应包中的怀疑因素,并根据预设加权值计算所述怀疑因素对应的污染评分;/nS4、所述服务端将所述污染评分与第一阈值比较,若所...

【技术特征摘要】
1.一种验证DNS请求安全性的方法,其特征在于,包括步骤:
S1、客户端通过TLS安全性组件,与服务端建立WebSocketSecure连接通道,并将所述WebSocketSecure连接通道存储在连接池中;
S2、所述客户端接收DNS请求数据包,将所述DNS请求数据包通过所述连接池中非忙的所述WebSocketSecure连接通道发送到所述服务端;
S3、所述服务端接收所述DNS请求数据包,并获取所述DNS请求数据包对应的响应包,提取所述DNS请求数据包及所述响应包中的怀疑因素,并根据预设加权值计算所述怀疑因素对应的污染评分;
S4、所述服务端将所述污染评分与第一阈值比较,若所述污染评分大于所述第一阈值,则返回验证不通过信息至所述客户端。


2.根据权利要求1所述的一种验证DNS请求安全性的方法,其特征在于,所述S1具体为:
在本地的53端口建立DNS监听,通过TLS安全性组件与服务端建立所述WebSocketSecure连接通道,并将所述WebSocketSecure连接通道存储在连接池中,完成与所述服务端的握手。


3.根据权利要求1所述的一种验证DNS请求安全性的方法,其特征在于,所述S2具体为:
S21、接收所述DNS请求数据包,判断本地缓存模块中是否存在所述DNS请求数据包对应的应答数据包,若存在,则直接返回所述应答数据包,若不存在,则执行S22;
S22、由查询队列进行轮询,判断所述连接池中是否存在非忙的所述WebSocketSecure连接通道,若存在,则通过非忙的所述WebSocketSecure连接通道,将所述DNS请求数据包发送到所述服务端,若不存在,则执行S23;
S23、判断所述连接池中的连接数量是否超过第二阈值,若是,则返回S22,否则,创建新的WebSocketSecure连接通道,将所述DNS请求数据包通过新的所述WebSocketSecure连接通道发送到所述服务端。


4.根据权利要求1所述的一种验证DNS请求安全性的方法,其特征在于,所述S3具体为:
接收所述DNS请求数据包,并获取所述DNS请求数据包对应的响应包,若所述DNS请求数据包未包含DNSSEC签名,则提取所述DNS请求数据包中的请求记录类型、TTL生命周期及协议,同时提取所述响应包中的EDNS扩展部分实施、查询类型指示、数据包截断指示及递归指示;
若所述请求记录类型不一致/为无效派生,或所述TTL生命周期超出预设范围,或所述协议中的协议头/协议句尾中有一者无效,或所述EDNS扩展部分实施无效,或所述查询类型指示不一致/为无效派生,或所述数据包截断指示无效,或所述递归指示无效,上述情况每满足一项,则所述污染评分增加对应的预设加权值;
所述S4还包括:
若所述污染评分小于第一阈值且大于第三阈值,则对所述响应包进行主动污染查询测试,若未通过,则丢弃所述响应包,若通过,则返回所述响应包至所述客户端,所述第一阈值大于所述第三阈值;
若所述污染评分小于第三阈值,则返回所述响应包至所述客户端。


5.根据权利要求1所述的一种验证DNS请求安全性的方法,其特征在于,所述S4还包括发送响应包至所述客户端;
所述S4之后,还包括:
所述客户端通过WHOIS数据库,获取所述DNS请求数据包中的目标域对应的第一信息及所述响应包中的地址所对应的第二信息;
根据所述第一信息及所述第二信息,对所述目标域及所述地址进行威胁分析,得到威胁评分;
判断所述威胁评分是否大于第四阈值,若是,则返回验证不通过信息至网页端;
否则,返回所述地址至所述网页端。


6.一种验证DNS请求安全性的系统,包括客户端及服务端,所述客户端包括第一存储器、第一处理器及存储在所述第一存储器上并可在所述第一处理器上运行的第一计算机程序;所述...

【专利技术属性】
技术研发人员:谭有轩李武夷李恩琦李威奇王琳燕
申请(专利权)人:福州职业技术学院
类型:发明
国别省市:福建;35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1