一种基于场景的DNS访问解析方法和系统转让专利
申请号 : CN202110706522.3
文献号 : CN113596186B
文献日 : 2022-05-20
发明人 : 杨霄 , 张宇明 , 郭思琦 , 杨呈飞 , 丛群
申请人 : 北京网瑞达科技有限公司
摘要 :
权利要求 :
1.一种基于场景的DNS访问解析方法,其特征在于,包括:步骤1,获得场景监测窗口内由DNS客户端向DNS服务器发送的查询请求报文;
步骤2,DNS服务器分析所述场景监测窗口内该DNS客户端发送查询请求报文的状况,进行场景模式判断;
步骤3,根据所述场景模式,评估该DNS客户端的风险度,并对应该风险度设置控制策略;
在步骤1中,所述DNS服务器根据场景安全需求确定响应策略,在所述场景监测窗口内针对所述查询请求报文,按照该响应策略对DNS客户端执行响应;其中,所述响应策略包括以下策略的任意一种或者多种:伪随机域名重传响应,即利用DNS的特性,递归请求具有迭代查询一直到获取最终结果的特点,由 DNS服务器的递归服务器先给DNS客户端返回一个唯一随机字符串,作为伪随机域名,并追踪该DNS客户端是否继续发起针对该伪随机域名的查询请求报文;协议转化重传响应,由DNS服务器的递归服务器给DNS客户端返回一个伪应答且将该应答TC标记置为1,并追踪该DNS客户端是否继续发起域名字段的TCP协议的查询请求报文;隧道会话重传响应,由DNS服务器的递归服务器给DNS客户端返回一个隧道会话应答,并追踪该DNS客户端是否继续发起建立隧道会话的请求,进而在该请求得到允许后发送查询报文请求;丢弃报文响应,利用DNS的特性,在DNS客户端在限定的时间内没有收到DNS服务器的应答时,会重发该查询报文请求,因此DNS服务器的递归服务器将直接丢弃首次查询请求报文,并追踪该DNS客户端是否继续发起该域名字段的二次查询报文请求。
2.根据权利要求1所述的基于场景的DNS访问解析方法,其特征在于,步骤2包括:所述DNS服务器根据DNS客户端在所述响应下的查询请求报文发送状况,进行所述场景模式的判断。
3.根据权利要求1所述的基于场景的DNS访问解析方法,其特征在于,步骤2的场景模式判断中,根据步骤1中所采用的响应策略,相适应地确定准会话或者会话机制,以及准会话或者会话中的规则逻辑;对于准会话或者会话中的规则逻辑,包括适配每种响应策略的场景模式判断意图、场景模式槽位以及会话/准会话控制机制;在实际的会话或者准会话过程中,按照会话/准会话控制机制,调度控制会话或者准会话的执行;对DNS客户端的查询请求报文发送状况进行持续监视,从而填充场景模式槽位,直至场景模式槽位填充完毕则结束当前的准会话或者会话。
4.一种基于场景的DNS访问解析系统,其特征在于,包括:DNS交互响应模块,获得场景监测窗口内由DNS客户端向DNS服务器发送的查询请求报文;
场景模式判断模块,DNS服务器分析所述场景监测窗口内该DNS客户端发送查询请求报文的状况,进行场景模式判断;
风险度评估控制模块,根据所述场景模式,评估该DNS客户端的风险度,并对应该风险度设置控制策略;
其中,所述DNS交互响应模块用于控制所述DNS服务器根据场景安全需求确定响应策略,在所述场景监测窗口内针对所述查询请求报文,按照该响应策略对DNS客户端执行响应;所述响应策略包括以下策略的任意一种或者多种:伪随机域名重传响应,即利用DNS的特性,递归请求具有迭代查询一直到获取最终结果的特点,由 DNS服务器的递归服务器先给DNS客户端返回一个唯一随机字符串,作为伪随机域名,并追踪该DNS客户端是否继续发起针对该伪随机域名的查询请求报文;协议转化重传响应,由DNS服务器的递归服务器给DNS客户端返回一个伪应答且将该应答TC标记置为1,并追踪该DNS客户端是否继续发起域名字段的TCP协议的查询请求报文;隧道会话重传响应,由DNS服务器的递归服务器给DNS客户端返回一个隧道会话应答,并追踪该DNS客户端是否继续发起建立隧道会话的请求,进而在该请求得到允许后发送查询报文请求;丢弃报文响应,利用DNS的特性,在DNS客户端在限定的时间内没有收到DNS服务器的应答时,会重发该查询报文请求,因此DNS服务器的递归服务器将直接丢弃首次查询请求报文,并追踪该DNS客户端是否继续发起该域名字段的二次查询报文请求。
5.根据权利要求4所述的基于场景的DNS访问解析系统,其特征在于,场景模式判断模块用于控制所述DNS服务器根据DNS客户端在所述响应下的查询请求报文发送状况,进行所述场景模式的判断。
6.根据权利要求4所述的基于场景的DNS访问解析系统,其特征在于,所述场景模式判断模块在场景模式判断中,根据所采用的响应策略,相适应地确定准会话或者会话机制,以及准会话或者会话中的规则逻辑;对于准会话或者会话中的规则逻辑,包括适配每种响应策略的场景模式判断意图、场景模式槽位以及会话/准会话控制机制;在实际的会话或者准会话过程中,按照会话/准会话控制机制,调度控制会话或者准会话的执行;对DNS客户端的查询请求报文发送状况进行持续监视,从而填充场景模式槽位,直至场景模式槽位填充完毕则结束当前的准会话或者会话。
说明书 :
一种基于场景的DNS访问解析方法和系统
技术领域
背景技术
类的IP地址从而判断网络访问的目的地。而例如www.xxyyzz.com等形式的域名是不能用于
直接判断网络访问的目标地的。我们在网络访问时提供域名后,需要由DNS服务器自动把域
名“翻译”成相应的IP地址,从而根据IP地址确定网络访问的目的地,这一过程即是“DNS访
问解析”。
机名和域名转换为IP地址。具体来说,网络节点运行DNS系统的客户端,将域名字段提供给
DNS客户端之后,DNS客户端向DNS服务器端发送一份查询请求报文,DNS服务器向DNS客户端
反馈答复报文,该报文包含有该域名字段对应的IP地址。DNS服务器端包括递归服务器和多
级的DNS权威服务器,多级的DNS权威服务器又可以划分为根服务器、顶级域名服务器、次级
域名服务器。递归服务器迭代多次查询各级DNS权威服务器,将多次查询的结果组合为IP地
址。
水攻击,造成DNS服务器瘫痪。DDoS攻击通常分为流量型攻击和应用型攻击。流量型攻击会
瞬间堵塞网络带宽;应用型攻击主要是将DNS服务器的资源耗尽,攻击将造成DNS服务器反
应缓慢直至再也无法响应正常的请求。DNS劫持,即攻击者通过劫持DNS服务器,拦截域名解
析的请求,并篡改了某个域名的解析结果,导致按照该域名访问网络的用户实际访问的是
攻击者篡改后的IP地址指向的网络节点,攻击者进而可以利用该网络节点实施冒充合法网
站欺诈等操作。
击行为,仅仅查看某个DNS数据报文是不可能区分是否为攻击请求或者真实用户请求的,这
就导致DNS访问解析成为网络基础中比较薄弱的环节。
发明内容
险度,对应该风险度给与不同级别的控制策略,从而增强DNS访问解析对DDoS、DNS劫持等黑
客攻击手段的防御能力。
随机域名,并追踪该DNS客户端是否继续发起针对该伪随机域名的查询请求报文;
报文;
查询报文请求;
求报文,并追踪该DNS客户端是否继续发起该域名字段的二次查询报文请求。
则逻辑,包括适配每种响应策略的场景模式判断意图、场景模式槽位以及会话/准会话控制
机制;在实际的会话或者准会话过程中,按照会话/准会话控制机制,调度控制会话或者准
会话的执行;对DNS客户端的查询请求报文发送状况进行持续监视,从而填充场景模式槽
位,直至场景模式槽位填充完毕则结束当前的准会话或者会话。
响应。
随机域名,并追踪该DNS客户端是否继续发起针对该伪随机域名的查询请求报文;
报文;
查询报文请求;
求报文,并追踪该DNS客户端是否继续发起该域名字段的二次查询报文请求。
话中的规则逻辑,包括适配每种响应策略的场景模式判断意图、场景模式槽位以及会话/准
会话控制机制;在实际的会话或者准会话过程中,按照会话/准会话控制机制,调度控制会
话或者准会话的执行;对DNS客户端的查询请求报文发送状况进行持续监视,从而填充场景
模式槽位,直至场景模式槽位填充完毕则结束当前的准会话或者会话。
而在场景模式下基于各个维度的槽位实现对DNS客户端的风险度评估,并对应该风险度设
置控制策略,从而能够有效遏制恶意DNS客户端的DNS攻击风险。
书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
具体实施方式
所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围
完整的传达给本领域的技术人员。
高。也可以根据不同的域名字段分类来设定场景安全需求,例如,DNS服务器包含的递归服
务器解析域名字段,如果域名字段中含有预设的敏感字段关键词,例如BANK、GOV等,则预判
具有高场景安全需求等级。
随机域名,并追踪该DNS客户端是否继续发起针对该伪随机域名的查询请求报文。如果该
DNS客户端在限定的时间内跟进发起了针对伪随机域名的查询请求报文,则确认该DNS客户
端是可被信任的,由递归服务器将该DNS客户端的查询请求报文分配给对应的DNS权威服务
器进行解析和处理。相对地,如果DNS客户端超时并没有发起针对该伪随机域名的请求,则
该DNS客户端将被判定存在安全风险。
将该应答TC标记置为1,并追踪该DNS客户端是否继续发起该域名字段的TCP协议的查询请
求报文。如果DNS客户端在限定的时间内跟进发起了TCP协议的查询请求报文,确认该DNS客
户端是可被信任的,由递归服务器将该DNS客户端的查询请求报文分配给对应的DNS权威服
务器进行解析和处理。相对地,如果DNS客户端超时并没有发起TCP协议的查询请求报文,则
该DNS客户端将被判定存在安全风险。
务器和DNS客户端之间开辟专门的隧道,支持专门隧道基础上的会话操作,进而由DNS服务
器的递归服务器给DNS客户端返回一个隧道会话应答,并追踪该DNS客户端是否继续发起建
立隧道会话的请求,进而在该请求得到允许后发送查询报文请求。如果DNS客户端在限定的
时间内跟进发起了所述隧道会话的请求,确认该DNS客户端是可被信任的,由递归服务器允
许建立隧道并将该DNS客户端通过隧道会话传来的查询请求报文分配给对应的DNS权威服
务器进行解析和处理。相对地,如果DNS客户端超时并没有发起所述隧道会话的请求,则该
DNS客户端将被判定存在安全风险。
求报文,并追踪该DNS客户端是否继续发起该域名字段的二次查询报文请求。如果DNS客户
端在限定的时间内跟进发起了针对域名字段的二次查询请求报文,确认该DNS客户端是可
被信任的,由递归服务器将该DNS客户端的查询请求报文分配给对应的DNS权威服务器进行
解析和处理。相对地,如果DNS客户端超时并没有发起二次的查询请求报文,则该DNS客户端
将被判定存在安全风险。
起所述查询请求报文的DNS客户端执行响应。例如,如果当前场景安全需求等级级别为普
通,则可以采取丢弃报文响应的机制;如果当前场景安全需求等级级别为中级,则可以采取
伪随机域名重传响应;如果当前场景安全需求等级级别为高级,则可以采取协议转化重传
响应;如果当前场景安全需求等级级别为最高级,则可以采取隧道会话重传响应。
DNS客户端误判为恶意的可能性,例如,DNS客户端有可能受到自身限制而不能发起TCP协议
的查询请求报文。为此,步骤2中加入了场景模式的判断。
协议或者隧道,显然可以实现会话机制;而对于依旧基于UDP协议的丢弃报文响应和伪随机
域名重传响应,则可以采用多次丢弃或者多次返回伪随机域名的形式,实现准会话的机制。
对于准会话或者会话中的规则逻辑,则可以包括适配每种响应策略的场景模式判断意图、
场景模式槽位以及会话/准会话控制机制。
的场景模式槽位,即实现该场景模式判断意图所必需明确的判断因素,可以定义为“二次查
询延迟时间”、“二次查询请求次数”;进而,定义会话/准会话控制机制为:在达到丢弃报文
的次数上限之前,丢弃每次从DNS客户端收到的查询报文请求,并监控每次丢弃后收到二次
查询请求的延迟时间;如果延迟时间在预计的正常延迟时间内,则对二次查询请求次数+1;
并且,根据每次的延迟时间动态调整丢弃报文的次数上限;达到次数上限后,按照最终的二
次查询请求次数和平均的二次查询延迟时间填充对应的场景模式槽位。
“域名匹配性”、“域名更新次数”、“域名重传延迟时间”、“域名重传次数”;进而,定义会话/
准会话控制机制为:在达到伪随机域名重传的次数上限之前,每次向DNS客户端反馈伪随机
域名,并且监控收到下一次查询请求中的域名是否与前次反馈的伪随机域名完全匹配,如
果完全匹配则维护域名匹配性为有效,且为域名正确更新次数+1;并且在伪随机域名匹配
的情况下,监控每次反馈后收到下一次查询请求的延迟时间;如果延迟时间在预计的正常
延迟时间内,则对域名重传次数+1;当域名匹配性变为无效时,停止域名重传响应,当域名
匹配性保持有效时,根据延迟时间动态调整伪随机域名重传的次数上限,直至达到次数上
限时停止域名重传响应;基于以上机制停止域名重传响应后,按照最终的域名匹配性状态、
域名正确更新次数、平均域名重传延迟时间、域名重传次数填充对应的场景模式槽位。
确的判断因素,可以定义为“会话建立有效性”、“会话建立延迟时间”、“会话维持有效性”
“会话持续维持时间”、“会话响应延迟时间”;进而,定义会话/准会话控制机制为:在向DNS
客户端返回TC标记置为1的应答、或者隧道会话应答之后,监控是否成功基于TCP协议或者
隧道通信方式而建立会话,根据监控结果维护会话建立有效性为有效,并监控和记录从返
回应答到会话建立的延迟时间;在会话建立之后,可以基于伪随机域名重传类似的机制,通
过会话给DNS客户端反馈伪随机域名,在这一过程中,监控TCP协议或者隧道会话是否维持
有效性,并且监控整个伪随机域名机制过程中的会话持续维持时间,以及每次反馈伪随机
域名到收到针对该伪随机域名的查询请求这一过程的会话响应延迟时间。最终,按照会话
建立有效性、|会话建立延迟时间、会话维持有效性、会话持续维持时间、会话响应延迟时间
填充对应的场景模式槽位。
策略的维持或者变更而及时切换场景模式判断意图;另一方面,在当前的场景模式判断意
图下,基于该意图而对DNS服务器的响应在符合响应策略的前提下进行调度,以及对DNS客
户端的查询请求报文发送状况进行持续监视,从而填充场景模式槽位,直至场景模式槽位
填充完毕则结束当前的准会话或者会话。
险度设置控制策略。例如,对于丢弃报文响应,根据所述场景模式槽位“二次查询延迟时
间”、“二次查询请求次数”,当二次查询延迟时间短且二次查询请求次数多时,则可以DNS客
户端的风险度低,从而可以针对该风险度,在后续的DNS解析中对该DNS客户端采取相对宽
松的控制策略。对于伪随机域名重传响应,类似地,可以根据域名匹配性状态、域名正确更
新次数、平均域名重传延迟时间、域名重传次数,判断DNS客户端的风险度,进而决定在后续
的DNS解析中国采取宽松还是严格的控制策略。对于协议转化重传响应和隧道会话重传响
应,按照会话建立有效性、|会话建立延迟时间、会话维持有效性、会话持续维持时间、会话
响应延迟时间等场景模式槽位,判断DNS客户端的风险度,进而决定在后续的DNS解析中国
采取宽松还是严格的控制策略。
求的等级也就高。也可以根据不同的域名字段分类来设定场景安全需求,例如,DNS服务器
包含的递归服务器解析域名字段,如果域名字段中含有预设的敏感字段关键词,例如BANK、
GOV等,则预判具有高场景安全需求等级。
随机域名,并追踪该DNS客户端是否继续发起针对该伪随机域名的查询请求报文。如果该
DNS客户端在限定的时间内跟进发起了针对伪随机域名的查询请求报文,则确认该DNS客户
端是可被信任的,由递归服务器将该DNS客户端的查询请求报文分配给对应的DNS权威服务
器进行解析和处理。相对地,如果DNS客户端超时并没有发起针对该伪随机域名的请求,则
该DNS客户端将被判定存在安全风险。
将该应答TC标记置为1,并追踪该DNS客户端是否继续发起该域名字段的TCP协议的查询请
求报文。如果DNS客户端在限定的时间内跟进发起了TCP协议的查询请求报文,确认该DNS客
户端是可被信任的,由递归服务器将该DNS客户端的查询请求报文分配给对应的DNS权威服
务器进行解析和处理。相对地,如果DNS客户端超时并没有发起TCP协议的查询请求报文,则
该DNS客户端将被判定存在安全风险。
务器和DNS客户端之间开辟专门的隧道,支持专门隧道基础上的会话操作,进而由DNS服务
器的递归服务器给DNS客户端返回一个隧道会话应答,并追踪该DNS客户端是否继续发起建
立隧道会话的请求,进而在该请求得到允许后发送查询报文请求。如果DNS客户端在限定的
时间内跟进发起了所述隧道会话的请求,确认该DNS客户端是可被信任的,由递归服务器允
许建立隧道并将该DNS客户端通过隧道会话传来的查询请求报文分配给对应的DNS权威服
务器进行解析和处理。相对地,如果DNS客户端超时并没有发起所述隧道会话的请求,则该
DNS客户端将被判定存在安全风险。
求报文,并追踪该DNS客户端是否继续发起该域名字段的二次查询报文请求。如果DNS客户
端在限定的时间内跟进发起了针对域名字段的二次查询请求报文,确认该DNS客户端是可
被信任的,由递归服务器将该DNS客户端的查询请求报文分配给对应的DNS权威服务器进行
解析和处理。相对地,如果DNS客户端超时并没有发起二次的查询请求报文,则该DNS客户端
将被判定存在安全风险。
重传响应或者丢弃报文响应,对发起所述查询请求报文的DNS客户端执行响应。例如,如果
当前场景安全需求等级级别为普通,则可以采取丢弃报文响应的机制;如果当前场景安全
需求等级级别为中级,则可以采取伪随机域名重传响应;如果当前场景安全需求等级级别
为高级,则可以采取协议转化重传响应;如果当前场景安全需求等级级别为最高级,则可以
采取隧道会话重传响应。
将正常DNS客户端误判为恶意的可能性,例如,DNS客户端有可能受到自身限制而不能发起
TCP协议的查询请求报文。
隧道,显然可以实现会话机制;而对于依旧基于UDP协议的丢弃报文响应和伪随机域名重传
响应,则可以采用多次丢弃或者多次返回伪随机域名的形式,实现准会话的机制。对于准会
话或者会话中的规则逻辑,则可以包括适配每种响应策略的场景模式判断意图、场景模式
槽位以及会话/准会话控制机制。
的场景模式槽位,即实现该场景模式判断意图所必需明确的判断因素,可以定义为“二次查
询延迟时间”、“二次查询请求次数”;进而,定义会话/准会话控制机制为:在达到丢弃报文
的次数上限之前,丢弃每次从DNS客户端收到的查询报文请求,并监控每次丢弃后收到二次
查询请求的延迟时间;如果延迟时间在预计的正常延迟时间内,则对二次查询请求次数+1;
并且,根据每次的延迟时间动态调整丢弃报文的次数上限;达到次数上限后,按照最终的二
次查询请求次数和平均的二次查询延迟时间填充对应的场景模式槽位。
“域名匹配性”、“域名更新次数”、“域名重传延迟时间”、“域名重传次数”;进而,定义会话/
准会话控制机制为:在达到伪随机域名重传的次数上限之前,每次向DNS客户端反馈伪随机
域名,并且监控收到下一次查询请求中的域名是否与前次反馈的伪随机域名完全匹配,如
果完全匹配则维护域名匹配性为有效,且为域名正确更新次数+1;并且在伪随机域名匹配
的情况下,监控每次反馈后收到下一次查询请求的延迟时间;如果延迟时间在预计的正常
延迟时间内,则对域名重传次数+1;当域名匹配性变为无效时,停止域名重传响应,当域名
匹配性保持有效时,根据延迟时间动态调整伪随机域名重传的次数上限,直至达到次数上
限时停止域名重传响应;基于以上机制停止域名重传响应后,按照最终的域名匹配性状态、
域名正确更新次数、平均域名重传延迟时间、域名重传次数填充对应的场景模式槽位。
确的判断因素,可以定义为“会话建立有效性”、|”会话建立延迟时间”、“会话维持有效性”
“会话持续维持时间”、“会话响应延迟时间”;进而,定义会话/准会话控制机制为:在向DNS
客户端返回TC标记置为1的应答、或者隧道会话应答之后,监控是否成功基于TCP协议或者
隧道通信方式而建立会话,根据监控结果维护会话建立有效性为有效,并监控和记录从返
回应答到会话建立的延迟时间;在会话建立之后,可以基于伪随机域名重传类似的机制,通
过会话给DNS客户端反馈伪随机域名,在这一过程中,监控TCP协议或者隧道会话是否维持
有效性,并且监控整个伪随机域名机制过程中的会话持续维持时间,以及每次反馈伪随机
域名到收到针对该伪随机域名的查询请求这一过程的会话响应延迟时间。最终,按照会话
建立有效性、|会话建立延迟时间、会话维持有效性、会话持续维持时间、会话响应延迟时间
填充对应的场景模式槽位。
策略的维持或者变更而及时切换场景模式判断意图;另一方面,在当前的场景模式判断意
图下,基于该意图而对DNS服务器的响应在符合响应策略的前提下进行调度,以及对DNS客
户端的查询请求报文发送状况进行持续监视,从而填充场景模式槽位,直至场景模式槽位
填充完毕则结束当前的准会话或者会话。
风险度设置控制策略。例如,对于丢弃报文响应,根据所述场景模式槽位“二次查询延迟时
间”、“二次查询请求次数”,当二次查询延迟时间短且二次查询请求次数多时,则可以DNS客
户端的风险度低,从而可以针对该风险度,在后续的DNS解析中对该DNS客户端采取相对宽
松的控制策略。对于伪随机域名重传响应,类似地,可以根据域名匹配性状态、域名正确更
新次数、平均域名重传延迟时间、域名重传次数,判断DNS客户端的风险度,进而决定在后续
的DNS解析中国采取宽松还是严格的控制策略。对于协议转化重传响应和隧道会话重传响
应,按照会话建立有效性、|会话建立延迟时间、会话维持有效性、会话持续维持时间、会话
响应延迟时间等场景模式槽位,判断DNS客户端的风险度,进而决定在后续的DNS解析中国
采取宽松还是严格的控制策略。
而在场景模式下基于各个维度的槽位实现对DNS客户端的风险度评估,并对应该风险度设
置控制策略,从而能够有效遏制恶意DNS客户端的DNS攻击风险。
之内,则本发明也意图包含这些改动和变型在内。