会议黑帽。 从300 Gb / s的DDOS攻击中幸存的经验教训。 第二部分

会议黑帽。 从300 Gb / s的DDOS攻击中幸存的经验教训。 第一部分

关于此攻击的有趣之处在于,我们不敢直接进行攻击,而是沿着我们的提供商的链条前进。 他们开始攻击位于CloudFlare上方的上游提供商,而攻击的源头确实在伦敦。 起初我不确定这一点,但是由于Spamhaus也在伦敦,因此黑客可能希望将其置于可耻的位置。 正如我所说,这次袭击的技术灵感似乎来自伦敦的一个少年,也许以此方式他可以更有效地追踪他的袭击的后果。 此幻灯片显示了BGP流量路由,其中​​最多包括30个下一跳传输节点。



我隐藏了伦敦宽带提供商的地址扩展名,最后一跳是Spamhaus IP地址之一,我们的网络中有多个。 您会看到流量是如何路由的,很难根据上述数据确定确切的路径,但是它已发送到我们在伦敦的设备,在经过我们在伦敦工作的网络的边界IP地址后,它在17毫秒之内发送了出去。

最初,攻击者攻击了带有箭头标记的地址,并且由于在此处使用了分布式DNS,因此他对伦敦造成了轻微冲击,对阿姆斯特丹和法兰克福的冲击很小,对美国,亚洲的冲击很小,对澳大利亚的冲击也很小。 然后,黑客意识到攻击是分散的并且没有效果,因此决定在基础结构的其他部分爬上路由链。 因此,在最后一个IP地址之后,他移至倒数第二个IP地址。 同样,如果您不知道Internet路由和连接的工作方式,那么我会说,当我将网络直接连接到另一个网络时,部分流量会直接在网络之间交换。 在这种特殊情况下,流量从Sky网络进入我们的网络,经过称为伦敦Internet交换或LINX的流量。

攻击者开始通过LINX作为港口传递大量流量。 LINX中的端口具有相对适度的功能,因此,如果您向LINX端口发送300 gig流量,则会使我们的端口和此交换机的其他端口超载。 因此,对我们而言,最合理的解决方案是,一旦我们看到该端口遭到攻击,并且流量以其他方式“绕过”该端口,就断开该端口的连接。

问题在于,附带损害影响了其他LINX端口,因此大型互联网网络的其他提供商也遇到了问题,因为我们降低了流量。 这非常令人不快,随后我们与他们合作,以帮助他们保护其网络。

这次攻击造成了暂时的区域违规行为,但是我们有很好的机会将流量重定向到其他节点,以使Spamhaus和所有其他客户保持在线状态。 攻击者还影响了我们的更高级别的传输提供商,向与我们签订了网络服务合同的人们发送了大量流量。 他们的目标是给我们的客户带来尽可能多的不便,以便使与我们的网络不直接相关的网络基础结构部分受到影响。



攻击可能达到了更高的水平,但是,我没有可以证实这一点的数据,但它们攻击了各种网络核心中运行的基本路由器。 实际上,这种攻击不仅对我们的网络,而且对我们周围的网络,我们使用的提供商以及这些提供商使用的提供商都是巨大的考验。 事实证明,由于这次攻击,我们对漏洞进行了审核。 后来,我们去了伦敦等各种Internet交易所,并在建立其网络方面实施了最佳解决方案,以提高抵制此类攻击的效率。 我们发现,不应将所有内部组织流量通过网络边缘路由器路由。 因此,如果您不想攻击Internet交换网络中的这些交换之一,则不应通过这些交换路由其IP地址。 理想情况下,您应该使用192.168,这是无法路由的RFC 1918地址之一,无法通过自身传递流量,即,不需要外部访问即可运行的网络。 这是您应对这种攻击的最佳方法。

您还可以做其他事情,例如在内部进行下一跳自路由,以确保打算在网络内传输的流量不会使用来自外部的数据包。 您不仅应该为自己的网络执行此操作,而且还应该说服上游提供商这样做。

还有另一件事-基于对我们应用程序操作的理解,对特定IP地址进行边界过滤。 例如,我们的应用程序使用不同的协议,并且,如果我们看到不适合我们的DNS服务器的UDP数据包,则出了点问题。

从那时起,我们就以网络服务器的IP地址与DNS服务器的IP地址不同的方式对网络进行了分段,我们可以要求上游提供商简单地阻止所有到达该特定IP地址的UDP流量以确保我们网段的安全。 地址的这种分隔使我们能够对高级流量进行更积极的过滤。

BGP Flowspec过滤器是我们真正的朋友;这是Cisco提出的协议。 尽管其中存在错误,但我们仍使用此协议,并且希望中转提供商也使用它,因为它使我们可以将规则转移到影响路由的远程网络节点。 这使您可以快速应对此类攻击。

三层nLayer架构值得特别提及,我要对GTT的创建者表示由衷的感谢,他们为使网络特别抵御攻击做出了巨大的努力。 一旦他们看到了这种攻击的高峰,便迅速击败了来自网络边界的流量。 您是否想过成为Tier-1,Layer3或NTT提供者有多酷? 他们的所有工作都是一个稳定的周末,因为第一级提供商不为连接支付任何费用,这也意味着他们无法将过境转移给任何人。 当我们开始通过断开网络的各个部分来阻止攻击时,影响集中在少数处于攻击中心的Tier-1提供程序上,并且在其网络内部形成了一个“黑洞”,所有流量都涌入了该网络,因为它无处可去。 因此,对于许多一线提供商而言,这是一个艰巨的测试。

这是您在攻击后的第一个星期一看到Open Resolver Project创建的原因之一。 来自nLayer的家伙真的是一个精通技术的团队,他们为我们提供了很多帮助。 他们以理解的方式对待我们,而不仅仅是说:“离开这里,您会给我们带来太多问题。” 因此,我们制定了一些切实可行的步骤,以确保您的网络安全。



这是四个建议,第一个建议听起来很傻,但是很明显:首先请确保您不属于问题! 我想近年来有很多人告诉过你。 只需停下来至少一秒钟,然后检查这两个组件在您的网络上没有运行。

首先是开放式解析器。 如果它们在公司的IP地址空间中,则如果您的客户使用它们,则需要阻止它们或限制通信速度。 最好配置解析器,使其只接受直接来自您网络的流量。



在此幻灯片上,您可以看到我最喜欢的Trevor Pott撰写的关于The Register的文章。 它被称为“认可IT专业人员:我如何帮助最大的DDoS攻击。”



特雷弗写道:“我以为我做对了所有事情。 但是事实证明,我有一个开放的解析器,并且通过流量日志可以看到请求如何攻击Spamhouse。” 我知道有人负责具有开放DNS解析器的超大型网络的运行。 这样,您就为上述问题的产生做出了贡献,因此,我请您花一秒钟的时间来摆脱它们。

其次,确保您正在使用BCP38。 来自iBall网络的人们做得很好,但是在这里提供大型网络的许多人认为,如果他们不允许外部访问,则网络是封闭的。



但是,假设您的网络上有一台受损的WordPress服务器可以开始欺骗非本网络专用的源程序包,这将对Internet的其余部分造成很大的问题。

问题是开放的解析器,这些解析器是2800万个解析器,其数量每周都在增加。 我们只有共同努力才能解决这个问题。 您必须在边界路由器上设置标志,以确保它们仅接收来自网络内可信来源的数据包。 如果执行此操作,则使攻击者无法利用此漏洞。 困难在于发现可在网络上运行并允许欺骗的大型受损计算机。

如果您查看对WordPress的蛮力攻击,并且那里还有其他攻击(例如,使用僵尸网络),那么您将很难猜测到其原因正是使用欺骗的能力。

另一个建议是使用真正可靠的协议。 您可以说:“嘿,我获得了这个IP地址,并使用UDP启动了服务,并且该服务正在使用TCP和通过ICMP的其他通信,并将所有这些协议绑定到相同的IP。” 我想警告您,如果出现问题,限制了您对这种类型的攻击做出灵活响应的能力,尤其是因为您可以轻松地对网络进行分段,从而使每个协议都可以在其自己的IP地址上工作。 最好,如果您可以过滤上游流量。 这些攻击中的任何一种攻击的目的都不是为了阻止网络中的流量,而是将其阻止在尽可能靠近流量源的位置,因此,通过使某人能够阻止定向到每个IP的所有UDP流量(选定的地址除外),您将大大减少攻击面。攻击者可以使用它。

因此,与上游提供者进行交互时,用于单个IP的单独协议可以有效地工作。 您只是问他们一个问题:“嘿,您可以实施这些类型的过滤吗?”。 顺便说一下,我们作为供应商支持Flowspec的原因之一是,我们可以正确地问他们:“你们,您是否支持Flowspec?”,如果他们回答“是”,则对话结束了,并且我们可以根据需要将自己的过滤器部署在网络边缘。

第三个建议是ACL基础结构的实现,即使用访问控制列表。 我的意思是,如果软件包的来源不属于该内部网络,则该软件包不能发往您的内部网络。 如果数据包来自您的网络或从边缘路由器进入您的网络,则不应“穿越”内部网络的基础结构。 有很多方法可以执行此规定。 您可以应用过滤以防止某些IP地址到达网络边界,可以使用Next Hop Self路由来阻止访问某些内部地址,可以在网络内部使用RFC 1918协议来确保您的内部IP不用于来自外界的演讲。



这确实会带来更多的麻烦,因为它会迫使您检查路由器的设置,真正使用VPN网络,而不是假装使用它,等等。 这些不是最受欢迎的解决方案,但是如果未实施,则攻击者可以调查您的网络并针对其各个网段,以造成更大的危害。

第四个建议是您应该了解上游流量。 我想再次强调,这种攻击没有使用复杂的应用程序或合成软件包,它只是一个拥有沉重俱乐部的穴居人。 在某种程度上,您应该比坏家伙拥有更多的运输机会。 它可以产生300 Gbps的流量,而且我敢肯定,目前很少有人能吹嘘如此大流量的网络。 这意味着您必须有一个流量很大的朋友,并且要吸引他进行合作,您就可以避免这种攻击。 为了能够及时注意到此类攻击,我们对与我们一起工作的传出流量非常有选择性。

前几天,我与一家主要公交服务提供商的首席技术官进行了交谈,问他是否打算向我出售公交车,他回答-不,伙计们,作为客户,您只会感到头疼。

但是,我们会寻找此类流量,甚至向提供商支付我们使用的过境奖金,因为发生此类攻击时,我们希望能够致电给他们并寻求帮助以减轻攻击的后果。 如果可以在合作伙伴网络之间分配高峰流量,则无需构建吞吐量为3-4-5 TB的网络。

这些不一定是拥有强大DDoS保护的公司,它们只需要使用nLayer架构即可真正完成工作并在出现问题时为您提供帮助。 与他们紧密合作,扩大您的网络范围。 使用允许您加入其网络边界的网络配置策略,如果您有合格的网络提供商,提供商将愿意这样做。 这就是有关300 Gb攻击的全部故事,我们还有大约10分钟的时间回答您的问题。



如果您同意排队问问题,我请您使用麦克风。 我忘了谈谈的另一项创新:Blackhat的组织者希望得到演讲者的反馈,如果您从外部“点亮”徽章,他们会将您的信息传递给NSA并获得反馈。 我开玩笑讲了第一部分,但相对的第二部分是对的-您可以使用反馈,因此您可以称我为白痴,通常会提出任何问题。

问:在运行CloudFlare时,除了UDP和53外,还遇到了哪些放大协议?

答:您问,除了上述提到的扩增方案之外,还有其他扩增方案吗? 我们仍在观察使用ICMP来执行良好的老式Smurf攻击,但是没有什么比我告诉过您的攻击规模可比了。 因此,明年我们将坚决主张人们不要使用开放式解析器,而要使用合法的,经过授权的DNS服务器。 使用CloudFlare,Bind或UltraDNS来启动网络,如果您可以列出授权服务器负责的所有域,找到名称列表非常大的域,则可以保护您的网络,因为这样的服务器会在必要时进行限制交通速度。 我们已经花了很多时间来实施该解决方案,我很高兴告诉那些真正感兴趣的人。

问题:此攻击未使用僵尸网络,但是您能否推荐一些资源,以便能够检测到您控制的大型网络是否正在使用僵尸网络进行DDoS攻击?

答:这取决于您所在的位置-例如,您可以在监视僵尸网络行为的组织中搜索此类工具,然后找到适合您需求的工具。 如果您需要一个开源项目,我推荐几年前出现的Honeypot。 借助它,我们可以有效地监视全球僵尸网络的重要部分,您可以指定IP地址的范围,并显示其中是否存在恶意网络。 这只是许多此类项目之一。 您可以简单地查找网络上发现的异常流量的模式,因此,如果您看到千兆流量被路由到单个IP地址,并且没有合理的原因说明在给定时间发生这种流量,则可能是这种流量即将到来。不是来自Web服务器,而是来自僵尸网络。 这应该使您感到怀疑。

问题:Google有最受欢迎的开放DNS解析器之一,您不认为这会引起问题吗?

答案:他们做了很多工作来限制流量,并且最好的验证方法是使用与我作为示例相同的digANY请求,并将PCCW网络IP地址替换为888。任何在场的人都只能发送一个请求次,重复它是行不通的。 . , – UDP, , , , .

: , BGP Flowspec, , , , , , BGP Flowspec?

: , BGP Flowspec, - Cisco, . , , , . , Flowspec , . , Juniper, Flowspec. , 12 Cisco .

: Flowspec CloudFlare?

: , . , , Flowspec. , . , Flowspec, , . , , upstream-.



: CloudFlare, . , - , . , : «, »?

: , , . , , , , . , DDoS- , , 300 / . , Akamai, . , , «», , . , , .
, , , , . , , , . , , Akamai, Amazon, CloudFlare, Google, , , . , , ?

: , BC38, , DNSSec…

: , DNSSec!

: , , DNSSec, , ?

: . , DNSSec , . ? . , , – DNSSec , . , DNSSec, , , DNS-, .

DNSSec, , , , DNSSec. , Cloudflare, DNS, , . DNS- .

: upstream- ? .



: , , , upstream-. , . CloudFlare , , .

, , , - . , DNS DDoS: , , , .

问题:是否可能由于DDoS攻击而将您的费用转移到支付过多流量的费用上,从而促使客户做出这样的决定,即他们需要太多的钱吗?

答:您低估了我们银行里有多少钱!

谢谢大家,我很高兴在另一个地方与大家交谈,现在是时候让这个平台让下一位发言者了。


感谢您与我们在一起。 你喜欢我们的文章吗? 想看更多有趣的资料吗? 通过下订单或将其推荐给您的朋友来支持我们, 为我们为您发明的入门级服务器的独特模拟,为Habr用户提供30%的折扣: 关于VPS(KVM)E5-2650 v4(6核)的全部真相10GB DDR4 240GB SSD 1Gbps从$ 20还是如何划分服务器? (RAID1和RAID10提供选件,最多24个内核和最大40GB DDR4)。

VPS(KVM)E5-2650 v4(6核)10GB DDR4 240GB SSD 1Gbps直到春季免费,在支付半年费用时,您可以在此处订购。

戴尔R730xd便宜2倍?在荷兰和美国,我们有2台Intel Dodeca-Core Xeon E5-2650v4 128GB DDR4 6x480GB SSD 1Gbps 100电视(249美元起) 阅读有关如何构建基础架构大厦的信息。 使用价格为9000欧元的Dell R730xd E5-2650 v4服务器的上等课程?

Source: https://habr.com/ru/post/zh-CN439708/


All Articles