欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~

作者:腾讯DDoS安全专家、腾讯云游戏安全专家 陈国

0x00 引言

近期,腾讯云防护了一次针对云上某游戏业务的混合DDoS攻击。攻击持续了31分钟,流量峰值194Gbps。这个量级的攻击流量放在当前并没有太过引人注目的地方,但是腾讯云游戏安全专家团在详细复盘攻击手法时发现,混合攻击流量中竟混杂着利用TCP协议发起的反射攻击,现网极其少见。

众所周知,现网黑客热衷的反射攻击,无论是传统的NTP、DNS、SSDP反射,近期大火的Memcached反射,还是近期出现的IPMI反射,无一例外的都是基于UDP协议。而本次攻击则是另辟蹊径地利用TCP协议发起反射攻击。本文将对这种攻击手法做简单分析和解读,并为广大互联网及游戏行业朋友分享防护建议。

0x01 攻击手法分析

本轮攻击混合了SYNFLOOD、RSTFLOOD、ICMPFLOOD等常见的DDoS攻击,攻击流量峰值达到194Gbps。但是其中混杂着1.98Gbps/194wpps的syn/ack(syn、ack标志位同时置位,下同)小包引起研究人员的注意。

首先,syn/ack源端口集聚在80、8080、23、22、443等常用的TCP端口,目的端口则是被攻击的业务端口80(而正常情况下客户端访问业务时,源端口会使用1024以上的随机端口)。

除此之外,研究人员还发现这些源IP的syn/ack报文存在TCP协议栈超时重传行为。为此研究人员判断这次很有可能是利用TCP协议发起的TCP反射攻击,并非一般随机伪造源TCP DDoS。

经统计分析:攻击过程中共采集到912726个攻击源,通过扫描确认开启TCP端口:21/22/23/80/443/8080/3389/81/1900的源占比超过95%,很明显这个就是利用现网TCP协议发起的反射攻击。攻击源IP端口存活情况如下

备注:由于存在单个IP可能存活多个端口,所以占比总和会超过100%。

从源IP归属地上分析,攻击来源几乎全部来源中国,国内源IP占比超过99.9%,攻击源国家分布如下:

从国内省份维度统计,源IP几乎遍布国内所有省市,其中TOP 3来源省份分布是广东(16.9%)、江苏(12.5%)、上海(8.8%)。

在攻击源属性方面,IDC服务器占比58%, 而IoT设备和PC分别占比36%、6%。由此可见:攻击来源主要是IDC服务器。

0x02 TCP反射攻击

与UDP反射攻击思路类似,攻击者发起TCP反射攻击的大致过程如下:

1、 攻击者通过IP地址欺骗方式,伪造目标服务器IP向公网上的TCP服务器发起连接请求(即syn包);

2、 TCP服务器接收到请求后,向目标服务器返回syn/ack应答报文,就这样目标服务器接收到大量不属于自己连接进程的syn/ack报文,最终造成带宽、CPU等资源耗尽,拒绝服务。

可能有人会疑惑:反射造成的syn/ack报文长度比原始的syn报文更小,根本没有任何的放大效果,那为何黑客要采用这种攻击手法呢?其实这种攻击手法的厉害之处,不在于流量是否被放大,而是以下三点:

1、 利用TCP反射,攻击者可以使攻击流量变成真实IP攻击,传统的反向挑战防护技术难以有效防护;

2、 反射的syn/ack报文存在协议栈行为,使防护系统更难识别防护,攻击流量透传几率更高;

3、 利用公网的服务器发起攻击,更贴近业务流量,与其他TCP攻击混合后,攻击行为更为隐蔽。

为此,TCP反射攻击相比传统伪造源的TCP攻击手法,具有隐蔽性更强、攻击手法更难防御的特点。

0x03 防护建议

纵使这种TCP反射攻击手法小隐隐于野,要防范起来比一般的攻击手法困难一些,但成功应对并非难事。

1、根据实际情况,封禁不必要的TCP源端口,建议接入腾讯云新一代高防解决方案,可提供灵活的高级安全策略;

2、建议配置BGP高防IP+三网高防IP,隐藏源站IP,接入腾讯云新一代解决方案BGP高防;

3、在面对高等级DDoS威胁时,接入云计算厂商的行业解决方案,必要时请求DDoS防护厂商的专家服务。

0x04 总结

腾讯云游戏安全团队在防护住一轮针对云上游戏业务的DDoS攻击后,对攻击手法做详细分析过程中发现黑客使用了现网极为少见的TCP反射攻击,该手法存在特性包括:

  • 攻击报文syn/ack置位;
  • 源端口集聚在80/443/22/21/3389等常用的TCP服务端口,而且端口的源IP+端口真实存活;
  • syn/ack报文tcp协议栈行为超时重传行为;
  • 源IP绝大部分来源国内,且分散在全国各个省份;
  • 流量大部分来源于IDC服务器;
  • 由于攻击源真实,且存在TCP协议栈行为,防护难度更大。

综上所述:黑客利用互联网上的TCP服务器发起TCP反射攻击,相比常见的随机伪造源攻击,TCP反射攻击有着更为隐蔽,防护难度更大等特点,对DDoS安全防护将是一个新的挑战。

腾讯云宙斯盾DDoS防护系统核心底层来自于腾讯安全平台部,沉淀腾讯业务十余年DDoS攻防对抗经验,具有业内先进的DDoS检测/防护算法,同时引入了AI、大数据领先的防护方案,服务于QQ、微信、王者荣耀、英雄联盟、CF、绝地求生等多款腾讯内部业务,能够有效抵御各类型DDoS和CC攻击行为,提供先进可靠的DDoS防护服务,致力于保障游戏客户业务的安全、稳定。

腾讯安全应急响应中心也将携宙斯盾防护系统亮相5月23-24日的腾讯云2018云+未来峰会展区和游戏分论坛,届时欢迎各位游戏行业和安全界人士一起莅临峰会,共话DDoS攻防。

2018腾讯云云+未来峰会报名入口:https://cloud.tencent.com/developer/summit/2018-guangzhou

问答

如何防范DDos攻击?

相关阅读

1.23T,腾讯云成功防御了国内最大流量DDoS攻击

初识常见DDoS攻击手段

深入浅出DDoS攻击防御

此文已由作者授权腾讯云+社区发布,原文链接:https://cloud.tencent.com/developer/article/1121916?fromSource=waitui

小隐隐于野:基于TCP反射DDoS攻击分析的更多相关文章

  1. UDP反射DDoS攻击原理和防范

    东南大学:UDP反射DDoS攻击原理和防范 2015-04-17 中国教育网络 李刚 丁伟 反射攻击的防范措施 上述协议安装后由于有关服务默认处于开启状态,是其被利用的一个重要因素.因此,防范可以从配 ...

  2. 分享下今天研究的流量上限DDos攻击分析和解决方式

    分享下今天研究的流量上限DDos攻击分析和解决方式 常常听到或者碰到某个站点被攻击.一般都是流量攻击.今天自己写了个程序測下相关的上限,程序仅仅简单做了个get html操作(不包括图片等资源文件). ...

  3. DNS反射放大攻击分析——DNS反射放大攻击主要是利用DNS回复包比请求包大的特点,放大流量,伪造请求包的源IP地址为受害者IP,将应答包的流量引入受害的服务器

    DNS反射放大攻击分析 摘自:http://www.shaojike.com/2016/08/19/DNS%E6%94%BE%E5%A4%A7%E6%94%BB%E5%87%BB%E7%AE%80%E ...

  4. 全年DDoS攻击分析|知道创宇云安全2018年度网络安全态势报告

    *本报告由知道创宇云安全出品* 数据来源:知道创宇云防御平台 前言 2018年,网络安全领域暗流涌动,攻击趋势不断攀升,T级DDoS攻击多次爆发.数据泄露事件层出不穷.勒索软件大行其道.此外,随着我国 ...

  5. 服务器被ddos攻击?分析如何防止DDOS攻击?

    上周知名博主阮一峰的博客被DDOS攻击,导致网站无法访问而被迫迁移服务器的事情,引起了广大网友的关注及愤慨,包括小编的个人博客也曾接受过DDOS的“洗礼”,对此感同身受.所以,本文我们一起来了解下DD ...

  6. 2018上半年DDoS攻击报告:流量峰值达1.7Tbps

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 2018年上半年DDoS攻防仍如火如荼发展,以IoT设备为反射点的SSDP反射放大尚未平息,Memcached DDoS又异军突起,以最高可 ...

  7. 浅谈 DDoS 攻击与防御

    浅谈 DDoS 攻击与防御 原创: iMike 运维之美  什么是 DDoS DDoS 是英文 Distributed Denial of Service 的缩写,中文译作分布式拒绝服务.那什么又是拒 ...

  8. DDOS攻击与防御简单阐述,列出DDOS的攻击方法和防御方法

    参考1:https://www.hi-linux.com/posts/50873.html#%E7%BD%91%E7%BB%9C%E5%B1%82-ddos-%E6%94%BB%E5%87%BB 什么 ...

  9. 游戏行业DDoS攻击解决方案

    行业综述 根据全球游戏和全球移动互联网行业第三方分析机构Newzoo的数据显示:2017年上半年,中国以275亿美元的游戏市场收入超过美国和日本,成为全球榜首. 游戏行业的快速发展.高额的攻击利润.日 ...

随机推荐

  1. 【一天一道LeetCode】#45. Jump Game II

    一天一道LeetCode系列 (一)题目 Given an array of non-negative integers, you are initially positioned at the fi ...

  2. Windows200864位操作系统下的SQLPLUS.EXE 无法找到入口解决办法和Oracle环境变量的设置

    本机环境:Windows2008 64位中文版操作系统+Oracle11G+安装了Oracle32位和64位客户端驱动 问题起源:Path环境变量被360安全卫士优化修复后,整个给清空了,hosts文 ...

  3. 【Qt编程】Qt 小时钟

    Hello World! 学习编程语言的最简单最经典的小程序,当然Qt也不例外.在学习画图时,我觉得写个时钟小程序也是个比较好的开始.在之前的<Matlab及Java小时>一文中,我也从写 ...

  4. CCRenderBuffer初始化中的render state参数

    绘制纹理三角形的渲染状态(render state)已经被CCSprite基类设置过了,所以你可以简单的将self.renderState传递过去就可以了. 渲染状态是混合模式(blend mode) ...

  5. Learning ROS for Robotics Programming Second Edition学习笔记(四) indigo devices

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...

  6. Netflix公布个性化和推荐系统架构

    Netflix的推荐和个性化功能向来精准,前不久,他们公布了自己在这方面的系统架构. 3月27日,Netflix的工程师Xavier Amatrain和Justin Basilico在官方博客发布文章 ...

  7. Unity C#用WWW操作数据库

    //在C#中进行GET查询 IEnumerator GETTest() { WWW w = new WWW("http://192.168.1.12/kaohe.php?&id=10 ...

  8. SQL Queries and Multi-Org Architecture in Release 12

    In this Document   Abstract   History   Details   Previous Releases   Release 12   Multi-Org Session ...

  9. VT控制码

    VT100 是一个终端类型定义,VT100 控制码是用来在终端扩展显示的代码.比如果终端上任意坐标用 不同的颜色显示字符. 所有的控制符是 \033 打头(即 ESC 的 ASCII 码)用输出字符语 ...

  10. MaterialDesign学习项目

    概述 该项目主要用来学习Material Design Support Library和一些android其他技术,也借鉴了网上一些其他优秀的学习资源.该项目目前主要分为俩大部分(后期可能会有一些增加 ...