让子弹多飞一会:论如何优化DDoS

简介:

假设1枚炮弹击中目标的伤害为10,而4枚炮弹同时击中目标的伤害为200。现在我方只有一门火炮,4枚炮弹。此火炮每次只能发射一枚炮弹。问如何操作可以使其伤害达到200?

答案是”让子弹多飞一会儿”,不过这个回答不是来自姜文的电影,而是源于美军在二战中提出的 MRSI (Multiple Rounds Simultaneous Impact)技术,粗糙的翻译一下就是“发射多次却同时命中”。

我们知道炮弹飞行的时间取决于开炮时的发射仰角,比如仰角大于45度时,炮弹的飞行的长度和时间比仰角小于45度要长。那么我们就可以采用MRSI 技术,以从大到小的发射仰角,连续发射4次。这样第一次发射的炮弹飞行时间最长,最后一次发射的飞行时间最短。只要我们精确的计算好角度和发射的时间间隔,就有可能让4枚炮弹同时击中目标,从而造成200的伤害。

简而言之,就是利用炮弹的飞行时间差来弥补发射的间隔时间。

Ryan Rasti在Temporal Lensing and its Application in Pulsing Denial-of-Service Attacks一文中提出了一种利用网络延迟来增强DDoS攻击效果的方法。以DNS放大攻击为例。假设攻击者选择了两个DNS 服务器(A和B)来攻击目标, 已知A到目标的网络延迟为110毫秒,B到目标的网络延迟为40毫秒。而攻击者到A和B的延迟忽略不计。那么攻击者可以先给A发一个假冒的DNS请求,让A反射目标。略等70毫秒以后(110-40=70毫秒),攻击者再发给B请求,让B反射目标。这样,虽然攻击者的两个DNS请求不是同时发出的,但是反射出来的攻击消息却可以同时击中目标。如下图所示

这么做的好处是什么呢?当然是提高了DDoS的效率,攻击者的发报率是1包/70毫秒,而在某个时间点却有2个反射包击中目标。这相当于巧妙的利用了网络延迟而把所有的攻击包汇聚在某一个特定的时间点上。例子中只用到了2个DNS服务器,但是在实际攻击中,可以扩展到n个。攻击方式也不仅限于DNS放大攻击,用http 代理的CC攻击也可以。

优化过的DDoS步骤是

1.假设有n条线路(取决于具体的攻击方法,可能有n个DNS服务器,n个http代理等等),攻击者先测量出每条攻击路线的延迟, 对应记为 (L1,L2,…,Ln)。

2.从(L1,L2,…,Ln)中找出最大延迟,记为Lmax

  1. 对于路线i(1≤ i ≤n),攻击者在发送前须等待 Lmax-Li

普通的DDoS是拼命打,有多少打多少。这样的结果是数据包击中最终目标的时间是平均分布的,如下图所示

而优化过的DDoS应该是这样的

然而为了成功的优化DDoS,我们还必须得解决一个首要问题,如何测量网络延迟。 对于HTTP CC类攻击来说比较简单,攻击者配制好代理,对攻击目标发一个http请求,接收http响应,就可以得到请求往返时间,然后用这个请求往返时间来估算网络延迟。当然,在实际情况中,网络延迟取决于很多因素,还需要用不同的方法降低噪音带来的影响,比如多次测量取平均值等等。

对于DNS放大攻击,一般用King测量法。比如攻击者(A)打算用DNS服务器D来攻击目标T。然而,直接测量 A经过D到T的网络延迟 (LADT)是很难的。但是,我们可以利用DNS递归查询的特性,测量出 A经过D到T的DNS服务器 的网络延迟(LADT(DNS))。方法是让A对D发一个关于T域的DNS查询,在这种情况下D会向T的DNS服务器递归查询。从而该攻击者可以用此DNS请求往返时间来估算LAT(DNS)。一般来说, DNS服务器都在离其他服务器很近的地方,延迟差别可以忽略不计,因此LAT ≈ LAT(DNS) 。

比如攻击者打算利用google DNS (8.8.8.8)来攻击test.com的web 服务器。为了优化,攻击者需要先知道他到8.8.8.8再到test.com web服务器的延迟。怎么计算延迟呢? 攻击者可以给8.8.8.8发送一个DNS查询:[随机子域].test.com 。由于8.8.8.8 并不负责test.com子域名,它只能递归询问test.com的DNS服务器。test.com的DNS服务器收到该询问以后,会进行本地记录查询。因为该子域是随机产生的,所以肯定会返回找不到啦,8.8.8.8收到回答以后,会再把这一回答继续转发给攻击者。这样攻击者就可以计算出他到8.8.8.8再到test.com DNS服务器的延迟。由于一般DNS服务器都在离WEB服务器很近的地方,因此可以推算出到8.8.8.8再到test.com web服务器的延迟。

为什么查询的时候要使用随机子域呢?是为了防止查询结果被cache缓存。如果查询结果被缓存了,那么DNS服务器就不递归查询了,从而导致测量结果不准确。
本文转自d1net(转载)

相关文章
|
1月前
|
算法 C#
23.c#计算敌人被玩家攻击的剩余血值
23.c#计算敌人被玩家攻击的剩余血值
16 0
解决、鼠标间歇性、自动断开、又重连(有图)
解决、鼠标间歇性、自动断开、又重连(有图)
263 0
解决、鼠标间歇性、自动断开、又重连(有图)
|
测试技术
clswindow使用案例:随机移动鼠标防锁屏(含源码)
clswindow使用案例:随机移动鼠标防锁屏(含源码)
160 0
|
负载均衡 安全 CDN
7月13日 “B 站崩了” 事件分析
最近小破站崩了的事情相信很多朋友都听说了。 2021年7月13日晚上23:44分,亿级流量的平台崩了🤔
157 0
7月13日 “B 站崩了” 事件分析
程序人生 - 汽车后视镜锁车自动折叠为啥失灵?
程序人生 - 汽车后视镜锁车自动折叠为啥失灵?
90 0
程序人生 - 汽车后视镜锁车自动折叠为啥失灵?
|
SQL 弹性计算 安全
网站服务器被黑怎么处理
近日,某一客户网站服务器被入侵,导致服务器被植入木马病毒,重做系统也于事无补,目前客户网站处于瘫痪状态,损失较大,通过朋友介绍找到我们SINESAFE,我们立即成立安全应急处理小组,针对客户服务器被攻击,被黑的情况进行全面的安全检测与防护部署。记录一下我们整个的安全处理过程,教大家该如何防止服务器被攻击,如何解决服务器被入侵的问题。
193 0
网站服务器被黑怎么处理
|
安全 搜索推荐 数据库
网站被黑入侵被挂马后跳转如何解决处理掉跳转代码?
网站被黑入侵被挂马后跳转如何解决处理掉跳转代码?
234 0
网站被黑入侵被挂马后跳转如何解决处理掉跳转代码?
|
安全 Linux Shell
Linux服务器被黑,该怎么处理解决
很多客户网站服务器被入侵,被攻击,找到我们SINE安全公司寻求技术支持与帮助,有些网站被篡改,被跳转,首页内容被替换,服务器植入木马后门,服务器卡顿,服务器异常网络连接,有的客户使用的是阿里云服务器,经常被提醒服务器有挖矿程序,以及网站被上传webshell的安全提醒,包括腾讯云提示服务器有木马文件,客户网站被攻击的第一时间,是需要立即处理的,降损失降到最低,让网站恢复正常的访问,由于每个客户找到我们SINE安全都是比较着急的,安全的处理时间也需要尽快的处理,根据我们的处理经验,我们总结了一些服务器被攻击,被黑的排查办法,专门用来检查服务器第一时间的安全问题,看发生在哪里,服务器是否被黑,是否
340 0
Linux服务器被黑,该怎么处理解决
|
安全
网站被黑导致被西部数码关闭 提示有害信息未处理的解决方案
前段时间有一客户的网站打不开了,打开网站被提示什么:抱歉,主机因存在有害信息逾期未处理被关闭 Sorry, the site now can not be accessed. 客户第一时间找到我们SINE安全寻求解决方案,我们根据客户的反馈,进行详细的记录,分析问题,找到了被系统自动阻断拦截的原因,客户网站用的是西部数码主机,再一个主要的原因是,客户网站被篡改并上传了一些有害,违法的内容信息,导致被西部数码的有害信息监测处置系统监控到,立即进行了拦截,阻断处理。
2151 0
|
安全 数据库 数据安全/隐私保护
网站被黑入侵被挂马跳转如何解决?
网站被黑入侵被挂马跳转如何解决? 昨天,发现客户的公司官网被黑了,标题是正常的,点击进去却跳转到了博彩网站。 这里记录一下,我的解决方法。(不一定适用每一个网站) 首先是主页在百度排名的显示情况,如下图被修改之后(百度更新也太及时了,上午发现的下午就更新了。
1545 0