usdt自动充提教程网(www.6allbet.com):Palo Alto 对近些年 DNS 历史破绽的整理剖析(下)

USDT自动充值API接口

菜宝钱包(caibao.it)是使用TRC-20协议的Usdt第三方支付平台,Usdt收款平台、Usdt自动充提平台、usdt跑分平台。免费提供入金通道、Usdt钱包支付接口、Usdt自动充值接口、Usdt无需实名寄售回收。菜宝Usdt钱包一键生成Usdt钱包、一键调用API接口、一键无实名出售Usdt。

Palo Alto 对近些年 DNS 历史破绽的整理剖析(上)

新缓解措施

已实现的显著缓解措施是为每个请求随机分配事务ID(而不是使用升序计数器)。这种缓解措施使攻击加倍难以执行。实在,MAX_SIZE_OF_QUERY_ID更难。事务ID为16位,因此缓解措施使攻击变得比以前难题65536倍。

这些缓解措施着实使攻击犯难了,不外道高一尺魔高一丈。 16位随机密钥虽然很大,但还不够大。让我们来算算。

为了举行以下盘算,我们需要记下一些数据:

典型DNS响应的巨细:100字节= 800位;

攻击者的带宽:每秒1兆位= 1000000位

正当响应返回解析器所需的时间:2秒;

有关2秒的注意事项:现在,使用现代互联网毗邻,纵然对于未缓存的域,显然也只需不到两秒即可完成DNS请求。然则出于示例的思量,我选择了延迟,不外我还选择了已往的网速:每秒1兆位。

有65536个可能的事务ID,我们有两秒的时间窗口发送一个响应,其中包罗乐成攻击的准确响应。为了盘算每次攻击的乐成率,我们需要盘算出在现实的正当响应到达解析器之前,攻击者可以发送若干响应包。这很容易盘算:带宽除以数据包巨细乘以时间。

依附1 Mbit / s的带宽,攻击者可以在一秒钟内发送多达1000000 / 800 = 1250个响应数据包,这意味着攻击者在两秒钟的窗口中可以发送2500个响应数据包。到达可能的攻击所需的实验次数(即1 Mbit / s带宽至少50%的乐成率)约为18次实验。

完整的盘算是这样的,100万是我们用1mbits的毗邻每秒可以发送的位数。我们将其除以800,这就是产生了每秒可以发送的响应数目。由于2秒的窗口,我们将其乘以2,然后将其除以除以2的16次方,16是事务ID字段的巨细。即单次攻击的乐成率为了获得乐成的攻击,我们需要在x次实验中乐成举行一次实验。我们的x次实验称为“实验”,该实验所有可能效果的聚集称为样本空间。击中样本空间中任何物体的概率显然是100%(这是方程中最外层的1)。为了获得可能的攻击的机遇,我们需要获取整个样本空间并从中减去任何不能“乐成地举行至少一次攻击”的内容,也就是所有x次实验都失败的另一种说法。一次实验的失败就是“所有的(1)减去一次实验的乐成”也就是1减去乐成率。然后,我们告诉Wolfram Alpha,我们正在寻找一个x,该x的值将大于0.5(即50%)。

换句话说,只有18次实验,带宽为1 Mbit / s的攻击者在缓解攻击后,通过此攻击可以获得的乐成率大于50%,可见昔时谋划这场毁灭性的攻击有多容易。

更多缓解措施

回过头来看选择云云弱的缓解措施似乎有些新鲜,但主要的是要记着,完全重新发现DNS协议是基本不能能的。它可能会毁了互联网,想想所有的装备都有一个内置的解析器。他们会完全停止工作。但另有更多的事情要做。如上所示,事务ID缓解很弱。因此,这次对源端口使用了相同的缓解措施。来自DNS客户端、解析器或名称服务器的每个DNS请求都来自一个源端口,在缓解之前,该端口并未被随机分配。

源端口为16位数字,与事务ID相同,仅用于功效目的。例如,解析器可能实验使用端口10650,若是先前请求中正在使用该端口,则它将实验使用10651,依此类推。固然,并非所有16位都可用,由于有用于其他用途的牢固端口。

源端口和事务ID一起用作DNS通讯的密钥-32位密钥。请记着,由于这在攻击中将异常主要,我将进一步讨论,多出来的这16位大大降低了乐成攻击的可能性。

以前,使用1mbit /s带宽时,我们的乐成率为3.8%(你可以在Wolfram Alpha中查看相关盘算)。使用源端口缓解措施后,若是使用与以前相同的数据,则乐成攻击的可能性为0.00005821%,实现与以前相同的乐成攻击所需的实验次数为1190820。这使得攻击的乐成不够可靠,现实上,源端口随机化终结了大多数DNS缓存攻击。

更高级的破绽

到目前为止,我们主要关注单个DNS纪录的缓存,www.example.com位于93.184.216.34,也称为A纪录。我们在受害者自己的DNS服务器(如路由器或Kubernetes集群)上下载恶意软件,通过这种方式,我们起劲举行攻击以攻击单个域。

平安研究员Dan Kaminsky在2008年发现了一种更好的方式,它比我们迄今为止在此文中讨论的方式加倍有用。这个破绽在平安界引起了轩然 *** ,通用执行方式与到目前为止讨论的方式异常相似,这意味着我们仍然需要展望事务ID和源端口。乐成的可能性险些相同,然则根据卡明斯基的方式,若是我们乐成了,我们可能会毁掉更多的纪录。

NS纪录

顾名思义,名称服务器(NS)纪录是DNS纪录,指示哪个DNS服务器对域具有权威性,这意味着哪个服务器包罗域的现实IP地址。在前面的示例中,example.com的NS纪录将是一台服务器,其中包罗www.example.com,email.example.com和任何?.example.com的地址。

攻击者的目的是攻击受害者的解析器,使受害者在实验接见www.example.com,email.example.com或任何?.example.com时,解析器会将请求转发给攻击者的名称服务器,而不是example.com名称服务器。

这样,攻击者就可以控制对example.com的每一个子域的接见,而不是像以前那样仅控制www域。

令人惊讶的是,该攻击与我们在本文中形貌的攻击异常相似,然则攻击者没有实验使用A纪录来攻击解析器的缓存,而是会实验使用NS纪录来攻击缓存。

攻击者首先会为他们想要攻击的域设置一个名称服务器,没有什么可以阻止任何人设置他们自己的域名服务器。然而,它通常毫无意义,由于没有其他服务器会指向它。

,

Usdt第三方支付接口

菜宝钱包(caibao.it)是使用TRC-20协议的Usdt第三方支付平台,Usdt收款平台、Usdt自动充提平台、usdt跑分平台。免费提供入金通道、Usdt钱包支付接口、Usdt自动充值接口、Usdt无需实名寄售回收。菜宝Usdt钱包一键生成Usdt钱包、一键调用API接口、一键无实名出售Usdt。

,

整个区域攻击

然后攻击者会继续向他们想要攻击的区域的子域发出DNS请求,它必须是一个没有缓存的域,这样他们就可以确定解析器会将请求转发给根服务器。不仅云云,在我们的示例中,该域名的NS纪录(example.com的权威域名服务器)也不应该被缓存。若是缓存了请求,解析器将直接将请求转发给权威名称服务器,甚至不需要将请求转发给根服务器。

攻击者使受害者的解析器将其请求转发到根服务器后,根服务器通常会以NS纪录举行回复,这大致相当于说:“我不知道谜底,然则您可以在那儿询问该服务器。这是它的IP地址。”

为了乐成举行攻击,攻击者现在需要在发送根服务器的响应之前逾越根服务器并流传包罗有恶意软件的响应。这是通过发送带有所需域的NS纪录的大量响应来实现的,别忘了攻击者还需要展望买卖ID(可能另有源端口)。

每个NS回复都带有一个“glue”纪录,这是名称服务器的现实IP地址。若是接纳其他方式,则请求服务器将不知道在那里可以找到名称服务器。解析器吸收此“glue”纪录,对其举行缓存并与“glue” 纪录指向的名称服务器联系,以获取所请求域的地址。

若是攻击乐成,从现在开始,每一个向解析器发出的请求都将到达攻击者的域名服务器,该域名在攻击域区域(www.example.com中的example.com)下没有缓存。

应用空间

使用这种高级攻击,攻击者可以同时对大量域提议攻击。理论上,攻击者甚至可以攻击整个.com域。

只管攻击整个.com域将是一个挑战,但在某些情形下,攻击者现实上会攻击整个缓存。详细示例如下:

1.2015年1月26日,一个黑客组织想法将接见者重定向至马来西亚航空网站,并将其重定向到另一个显示恶意内容的网站。

2.2011年11月7日,黑客想法攻击了整个互联网服务提供商的缓存,将用户重定向到安装了恶意软件的网站,然后再将他们重定向回他们要求的网站。

3.2009年12月18日,DNS挟制攻击使Twitter暂时受到约一个小时的影响。

每年都市发生数百起此类攻击。

缓解措施

没有现实的新缓解措施发生,由于使用已经使用的事务ID和端口随机化缓解措施险些已经无法执行此攻击。然则,若是攻击者想法绕过了这些缓解措施,那么使用这种攻击而不是“通例的”单A纪录攻击将会严重得多。

与前面一样,使用事务ID和端口随机化一起建立一个足够大的密钥,使攻击者难以展望,从而起到缓解作用。

最近的破绽

纵然DNS协议被认为是平安的,开发人员也可能无法平安地实现它。

例如,存在一个普遍的误解,即随机函数应该是不能展望的,因此可以将其用于天生加密密钥。然则,这些函数并不用于密码学或平安性。不幸的是,在DNS实现的情形下经常会发生随机化函数的误用。

仅在两年前,使用用于随机化CoreDNS中事务ID的函数就发生了这种情形。开发人员选择使用math.rand,它是Golang中非加密平安的伪随机数天生器。这是一个大问题。若是攻击者可以展望买卖ID,则他们绝对能够根据本文前面所述的方式攻击CoreDNS的缓存。这意味着每个使用CoreDNS作为其DNS解析器的应用程序都容易受到恶意DNS纪录的攻击。换句话说,由于CoreDNS主要用于Kubernetes,因此整个集群中每个节点中的每个应用程序都容易受到此攻击。

另一个示例是几周前才发现的一项新手艺,该手艺使用Internet控制新闻协议(ICMP)来确定服务器上哪些端口已关闭,从而展现了哪些端口现实上是打开的。这在DNS攻击中使用,可以大大削减攻击者需要展望的端口数目,从而降低了前面注释的端口随机缓解措施的有用性。

固然,另有一些与缓存不相关的典型破绽,例如缓冲区溢出。 dn *** asq是许多Linux发行版和路由器中使用的常见DNS解析器,甚至在Kubernetes的早期版本中也使用过。近年来,发现dn *** asq易受众多内存破绽的影响,这些破绽可能导致拒绝服务(DoS),远程代码执行(RCE)等问题。

总结

本文中形貌的DNS攻击若是乐成,将是毁灭性的。由于有了现代的缓解措施,攻击者不太可能发动DNS攻击,除非与解析器应用程序中的任何其他破绽连系在一起。不幸的是,这样的破绽至今还经常被发现。

多年来,研究人员发现了可以缓解我们在本文中讨论的一些缓解破绽的措施,例如,用户数据报协议(UDP)分段。

只管云云,随着当今平安浏览和证书的使用,纵然攻击者想法攻击某个域的DNS服务器,由于证书不匹配,浏览器的受害者很可能不会加载该页面。然则,通过使ISP的DNS解析器攻击并将请求转发到不存在的IP地址,该手艺仍然可以用于伟大的DoS攻击。

Palo Alto Networks的用户可以通过多种方式免受本文所述的攻击,Palo Alto Networks下一代防火墙可以通过检测可疑DNS查询和异常DNS响应来阻止DNS攻击。与消耗或大量通讯量有关的攻击可通过防火墙内置的DoS或区域珍爱设置文件来处置,这些珍爱是通过DNS平安服务笼罩DNS威胁和指示器的弥补。

此外,Pri *** a Cloud可以通过忠告过时和易受攻击的组件以及云中设置错误的应用程序来珍爱集群。本文形貌的大多数攻击都要求损坏集群的内部 *** ,以便能够从内部向DNS服务器发送恶意数据包,此类破绽险些总是通过行使过时且设置错误的应用程序而发生。

本文翻译自:https://unit42.paloaltonetworks.com/dns-vulnerabilities/

添加回复:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。