AWS平台之DDoS攻击防范

2023-11-18

AWS平台之DDoS攻击防范

在这里插入图片描述
互联网上的DDoS攻击无处不在,游戏,互联网等大部分行业的客户也往往深受其害。本文主要介绍DDoS攻击的主要方式,AWS的基础设施和服务的介绍,以及如何利用AWS资源防范DDoS攻击,保护用户系统的安全。

什么是DDos ?

拒绝服务(简称DoS)攻击是一类旨在令网站或者应用无法正常向最终用户进行服务交付的攻击活动。为实现这一目标,攻击者利用一系列技术手段大量消耗我们的网络或者其它资源,从而破坏合法最终用户的正常访问。而在分布式拒绝服务(简称 DDoS)攻击当中,攻击者会利用多个源以编排起规模更大的针对性攻击。

DDoS攻击常见于开放系统系统互连(简称 OSI)模型中的 3、4、6 与7层,如下表所示:
在这里插入图片描述

常见的DDos攻击

UDP反射

最为常见的DDoS攻击——即用户数据报协议(简称 UDP)反射攻击。UDP是一种无状态协议,这使得攻击者能够伪造请求来源,从而对目标服务器造成更为严重的影响。而放大系数,即请求规模与响应规模之间的比例,则具体取决于所使用的协议——例如域名系统(简称DNS)、网络时间协议(简称NTP)、简单服务发现协议(简称SSDP)等等。攻击者可以利用此类方案生成庞大的流量,直接淹没网络或者系统的可承载容量。
在这里插入图片描述

SYN洪水

SYN洪水在规模上可达到数十 Gbps,但其攻击目标在于消耗系统中的可用资源,即将连接一直保持在半开放状态。如图所示,当最终用户接入一项TCP服务时,例如一台Web服务器,则客户即发送一个SYN数据包。目标服务器将返回 SYN-ACK,此后客户端再返回 ACK 从而完成三方握手。

在SYN洪水当中,ACK永远不会返回,这意味着目标服务器会一直等待其响应。如此一来,新用户将无法正常接入该服务器。
在这里插入图片描述

SSL滥用

在通过安全嵌套层(简称 SSL)交付Web 应用的情况下,攻击者可以选择攻击SSL 协商过程。SSL 是一种高强度计算流程,这使得攻击者能够通过发送难以理解的数据影响目标服务器的可用性。此类攻击的其它变种还包括由攻击者争夺 SSL 握手,但永远停留在加密方法协商阶段。同样的,也有部分攻击者会选择不断打开并关闭大量 SSL 会话以耗尽服务器资源。

HTTP洪水

在HTTP洪水当中,攻击者发出的HTTP请求在表面上看似乎来自Web应用的真实用户。攻击者控制某些僵尸主机不停地发大量看似合法的HTTP GET或POST数据包请求Web服务器或Web应用,Web服务不得不去处理这些HTTP的请求数据,一旦目标服务器已满足请求并且无法响应正常流量,会造成目标服务器资源耗尽,一直到宕机崩溃,那么真正的用户的HTTP请求则无法处理。

AWS平台的DDos

灵活调整实例

AWS的Amazon EC2具有灵活的计算容量调整能力,即允许大家根据实际要求快速实现实例规模伸缩。您可以通过Amazon CloudWatch 警报机制则可用于启动Auto Scaling,后者能够自动对Amazon EC2集群规模进行扩张,添加更多实例以实现水平扩展,亦可以使用规模更大的实例完成垂直扩展。部分实例类型还支持其它功能,例如包含10 Gigabit网络接口与增强网络,这能够改善您应对大规模流量的能力。

弹性负载均衡器

大规模DDoS攻击可能在规模上超出单一Amazon EC2 实例的承载范围。为了应对此类攻击,大家可能需要考虑以负载均衡方式进行流量分流。利用 Elastic Load Balancing(即弹性负载均衡,简称 ELB),您可以将应用程序流量分散至多个后端实例当中,从而降低其过载的风险。

ELB只接受格式良好的TCP 连接。这意味着大部分DDoS攻击,例如SYN洪水或者 UDP反射攻击会被ELB直接过滤掉,即无法触及您的应用程序。当ELB检测到此类攻击活动时,其会自动进行规模扩展以消化额外流量,而您完全无需承担任何额外费用。
在这里插入图片描述

Amazon CloudFront / Amazon WAF

Amazon CloudFront 是一项内容交付网络(简称 CDN)服务,允许大家缓存静态内容,并由AWS Edge Locations进行交付,从而降低原始位置受到的负载压力。

Amazon CloudFront只接受格式良好的连接,这就直接防止了大多数常见DDoS攻击——包括SYN洪水与UDP反射攻击触及您的应用。通过Amazon CloudFront配合AWS WAF可以保护自己的应用程序免受攻击影响。另外,Amazon CloudFront还能够自动关闭慢速读取或者慢速写入攻击者建立的连接(例如Slowloris)。您还可以使用Amazon CloudFront进行地理位置限定,避免来自特定地理位置的用户访问您的内容。这将有效阻断预期最终用户所在位置之外区域内攻击者发起的恶意冲击。

对于常见的应用层DDoS攻击, 例如HTTP洪水或者WordPress pingback洪水,大家可以使用AWS WAF以建立自己的防护体系。如果您知晓需要屏蔽的源IP地址,则可创建一条规则进行屏蔽并将其关联至Web ACL。在此之后,大家可以在Web ACL中创建一条IP 地址匹配条件,用于阻断该源IP地址参与的一切攻击活动。
在这里插入图片描述
在这里插入图片描述

AWS资源的模糊处理

对于大多数应用来讲,您的AWS资源都不需要完全面向互联网开放。在这种情况下,大家可以只允许最终用户通过特定TCP端口访问此ELB,并只允许该ELB与对应AmazonEC2实例进行通信。

AWS支持安全组嵌套,即将安全组的源设置为其他安全组以创建安全层。这样一来,来自互联网的流量将无法直接与底层的Amazon EC2 实例通信,这意味着攻击者将很难确实了解您的应用程序。

Amazon Route 53

AmazonRoute 53 是一项具备高可用性与高可扩展性的域名系统(简称DNS)服务,可用于将流量定向至您的Web 应用程序。其中包含多项先进功能,例如流量流、基于延迟路由、地理DNS、运行状态检查以及监控等等。

AmazonRoute 53采用缓冲划分与选播划分机制,保证最终用户即使在DNS服务被设为DDoS攻击目标的情况下,仍可正常访问您的应用程序。利用缓冲划分机制,如果代表分组内的某域名服务器不再可用,最终用户可以重试并收到来自其它不同边缘位置的另一域名服务器的响应。选播划分则用于保证每条DNS请求都由最优位置进行响应。这种做法将实现负载分散与DNS延迟降低,使得最终用户能够更快接收到响应结果。另外,Amazon Route 53还能够检测到DNS查询源与总量内的异常情况,同时对已知可靠用户的请求进行优先级排序。
在这里插入图片描述

Amazon API Gateway

一般来讲,公开发布API会带来潜在安全风险,这意味着API前端有可能被DDoS攻击所影响。Amazon API Gateway是一项全托管服务,允许大家创建一个API充当“前门”,从而保护运行在Amazon EC2以及AWS Lambda上的应用程序乃至其它任意Web应用。利用Amazon API Gateway,大家不再需要运行自有服务器充当API前端,并可混合应用程序当中的其它组件。通过这种方式,我们能够防止AWS资源被DDoS攻击所锁定。Amazon Gateway与Amazon CLoudFront相集成,这样我们将能够充分发挥DDoS 弹性能力,同时在REST API中配置标准或者突发速率限制以保护后端不致被流量所吞没。

可视化——了解应用程序

了解应用程序的正常行为模式能够帮助我们很好地掌握异常状况并迅速采取行动。当某项关键性指标偏离预期基准值时,这可能意味着攻击者正试图破坏我们的应用程序可用性。

利用Amazon CloudWatch,大家可以监控运行在AWS之上的应用程序,收集并追踪多项指标、获取并监控日志文件、设置警报并自动就AWS资源使用变化做出反应。

在VPC Flow Logs的帮助下,您能够捕捉一切指向及来自VPC内网络接口的IP流量相关信息。每份数据流日志记录包含来源与目标IP地址、来源与目标端口、协议以及捕捉窗口之内传输的数据包与字节数量。

总结

各项最佳实践将帮助大家建立起具备DDoS弹性的架构,从而保护您的应用程序在常见基础设施与应用层DDoS攻击当中继续保持正常运行。立足于这些最佳实践,您将能够构建起足以应对不同类型与规模的DDoS攻击的应用程序。AWS建议大家使用这些最佳实践以更好地保护应用程序可用性。

AWS DDoS防御总结

在这里插入图片描述

AWS DDoS防御参考架构

在这里插入图片描述

云和安全服务请联系我们!

电话:400-960-8690
官网:https://www.flyingnets.com/
邮箱:sales@flyingnets.com

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AWS平台之DDoS攻击防范 的相关文章

  • Acwing 842. 排列数字

    dfs int u 搜索第u个位置上可以放哪个数字 include
  • linux下几种目标文件的分析

    本文中用到的命令 gcc c addvec c 生成可重定位目标文件addvec o readelf addvec o a 读取可重定位目标文件addvec o gcc O2 c main c 生成可重定位目标文件main o gcc st

随机推荐

  • wireshark怎么抓包和详细图文教程

    wireshark是非常流行的网络封包分析软件 功能十分强大 可以截取各种网络封包 显示网络封包的详细信息 使用wireshark的人必须了解网络协议 否则就看不懂wireshark了 为了安全考虑 wireshark只能查看封包 而不能修
  • iOS开发之内存管理

    iOS开发之内存管理 一 垃圾回收机制 二 内存管理的概念 三 OC内存管理注意事项 四 MRC相关语法 一 垃圾回收机制 与Java语言相同Objective c 2 0之后 也提供了垃圾回收机制 OC是支持垃圾回收机制的 Garbage
  • Linux运维工程师面试常用知识点总结

    Linux运维工程师面试常用知识点总结 一 Linux基础命令部分 1 查看某进程所打开的所有文件 2 添加一条静态路由 3 打包一个目录下文件 除了该目录下某个文件 4 提取本地网卡ip地址 5 如何在某个文本的每行前面添加 字符 6 c
  • XSS闯关小游戏(level1~13)

    level1 源代码 通过源代码发现此关没有对输入的name值做任何过滤 直接echo出来 寻找输入点和输出点 构造payload level2 源代码
  • Spring Boot的shiro整合(中)

    一 配置 1 MyShiroRealm类 package com wzq shiro config import javax annotation Resource import org apache shiro authc Authent
  • Logistic回归与Sigmoid函数

    一 Logistic回归 1 1 特征 Logistic回归主要是二分类预测 是对概率的估计的一种方法 概率的取值范围在 0 1 当P gt 0 5时 预测为1 当P lt 0 5时 预测为0 这也就和下文的Sigmoid 函数一样 1 2
  • 【电商下载图片插件】一键下载主图详情图的浏览器插件,现已支持京东、京东国际、淘宝、天猫、拼多多,coupang、1688、naver、gmarket、alibaba、兰亭集势等

    gao tu bao 1 介绍 搞图宝 专门获取各大电商平台详情页面主图和详情图的浏览器插件 现已支持京东 京东国际 淘宝 天猫 拼多多 coupang 1688 naver gmarket alibaba 兰亭集势 详细文档地址 http
  • spring中过滤器filter、拦截器interceptor和切面aop的基本工作原理里和执行顺序

    今天查了一下spirng中三种action前处理业务的三种方法过滤器 拦截器和切面的执行顺序记录一下 三者的区别 1 过滤器filter 过滤器是服务端的一个组件 是基于servlet实现从客户端访问服务端web资源的一种拦截机制 对请求r
  • 华为OD机试 - 寻找相同子串(Java )

    题目描述 给你两个字符串t和p 要求从t中找到一个和p相同的连续子串 并输出该子串第一个字符的下标 输入描述 输入文件包括两行 分别表示字符串t和p 保证t的长度不小于p 且t的长度不超过1000000 p的长度不超过10000 输出描述
  • Unity 处理Scene视角容易穿模问题

    问题一般有两个解决方法 1 重新进行Unity布局 右上角哪里重新进行Layout布局 一般可以恢复Scene视角相机的初始化 2 Scene视角顶部信息栏有一个摄像头图标 点开 就是可以进行Scene摄像机的控制 把Field of Vi
  • 台式机配置网站服务器,台式机搭建服务器的配置

    台式机搭建服务器的配置 内容精选 换一换 当您在升级云服务器的配置的同时 还想要将云服务器迁移到其他的AZ或Region时 您可以使用华为云的整机镜像进行迁移 迁移流程如图1所示 这里以迁移HANA数据库为例 登录管理控制台后 选择服务列表
  • fastjson反序列化泛型类

    为了代码通用 你的定义对象可能是一个泛型对象 其中可变的data属性的类型参数化 那么这个泛型类型的对象 反json化时应该注意些什么呢 Response类型 public static class Response
  • 通过paramiko远程执行windows命令出现:paramiko.ssh_exception.SSHException: Channel closed. 的解决方法

    主要问题在于为windows上的ssh的设置 paramiko连接是没有问题的 想法是远程执行windows服务器上的python程序 通过ssh连接 我在windows服务器上通过winsshd软件个windows安装了ssh服务 但是在
  • elasticSearch常见的面试题

    常见的面试问题 描述使用场景 es集群架构3个节点 根据不同的服务创建不同的索引 根据日期和环境 平均每天递增60 2 大约60Gb的数据 调优技巧 原文参考 干货 BAT等一线大厂 Elasticsearch面试题解读 掘金 设计阶段的调
  • Linux 系统与本地 windows 系统相差30s左右问题解决方案

    首先发现问题 在 linux 系统中使用 date 命令发现与本地相差大概 30s左右 通过 hwclock s 命令可将硬件时间同步至系统时间 最后在执行 date 命令发现正常了
  • 字符串常量到底存放在哪个存储区

    转 字符串常量到底存放在哪个存储区 2013年02月23日 16 57 57 若水三千你是一千 阅读数 40499更多 分类专栏 c语言 字符串常量 放在哪个存储区呢 是 自动存储区 还是 静态存储区 中 比如 char pstr hell
  • 【网络自定向下学习】——TCP报文段的详细解析

    个人主页 努力学习的少年 版权 本文由 努力学习的少年 原创 在CSDN首发 需要转载请联系博主 如果文章对你有帮助 欢迎关注 点赞 收藏 一键三连 和订阅专栏哦 目录 一 Tcp报文段的结构 二 首部长度 三 窗口大小 四 序列号和确认序
  • 接口测试的测试用例该怎么写呢

    接口测试是软件测试中非常重要的一部分 因为接口的稳定性和可靠性对于整个系统的质量和用户体验都有很大的影响 在接口测试中 编写有效的测试用例是非常关键的一步 本文将介绍如何编写接口测试的测试用例 包括测试用例的设计和编写方法 并提供一些具体的
  • import tensorflow as tf报错ModuleNotFoundError: No module named 'tensorflow'

    在安装tenserflow和keras的时候 安装完毕进行验证的时候会报错 解决方法就是需要安装tf nightly 安装完毕错误就不再报了 pip install tf nightly
  • AWS平台之DDoS攻击防范

    AWS平台之DDoS攻击防范 互联网上的DDoS攻击无处不在 游戏 互联网等大部分行业的客户也往往深受其害 本文主要介绍DDoS攻击的主要方式 AWS的基础设施和服务的介绍 以及如何利用AWS资源防范DDoS攻击 保护用户系统的安全 什么是