QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

值得收藏好文,基于 TCP 反射 DDoS 攻击分析

  • 2019-10-28
  • 本文字数:2066 字

    阅读完需:约 7 分钟

值得收藏好文,基于TCP反射DDoS攻击分析

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


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

攻击手法分析

本轮攻击混合了 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 服务器。


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 攻击手法,具有隐蔽性更强、攻击手法更难防御的特点。

防护建议

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


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


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


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

总结

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


  • 攻击报文 syn/ack 置位;

  • 源端口集聚在 80/443/22/21/3389 等常用的 TCP 服务端口,而且端口的源 IP+端口真实存活;


  • syn/ack 报文 tcp 协议栈行为超时重传行为;

  • 源 IP 绝大部分来源国内,且分散在全国各个省份;

  • 流量大部分来源于 IDC 服务器;

  • 由于攻击源真实,且存在 TCP 协议栈行为,防护难度更大。


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


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


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


本文转载自公众号云加社区(ID:QcloudCommunity)。


原文链接:


https://mp.weixin.qq.com/s/gJPBYIGGB3eTBktGQ5H0aA


2019-10-28 14:311602

评论

发布
暂无评论
发现更多内容

沉浸式体验,文化与科技融合创新的新业态

海比研究院

Kotlin 插件的落幕,ViewBinding 的崛起,音视频开发工程师

android 程序员 移动开发

Java虚拟机规范(Java SE 8) 第一章,赶紧收藏起来

android 程序员 移动开发

Jetpack-在数据变化时如何优雅更新Views数据,ffmpeg音视频开发实战6下载

android 程序员 移动开发

Jetpact Compose状态管理简单理解,android设计模式的应用场景

android 程序员 移动开发

Kotlin-源码里成吨的-noinline-和-crossinline-是干嘛的?

android 程序员 移动开发

Kotlin协程它不香吗?,kotlin开发游戏

android 程序员 移动开发

2021年日志审计设备选哪家好?咨询电话多少?

行云管家

云计算 日志审计 数据审计

JAVA-Android-多线程实现方式及并发与同步,写给1-3年Android程序员的几点建议

android 程序员 移动开发

Java-vs-Kotlin,Android开发人员应该选择哪种语言?,kotlin脱糖

android 程序员 移动开发

Jetpack 之 LifeCycle 组件使用详解,android开发书籍

android 程序员 移动开发

最新消息!旺链科技加入庙行镇“乐创助企联盟”

旺链科技

区块链 产业区块链

等保测评机构需要年审吗?还是一直有效?

行云管家

云计算 网络安全 数据安全 等保 等级保护

Jetpack组件---ViewModel 概览,android高级面试2020

android 程序员 移动开发

Kotlin 协程和 Android SQLite API 中的线程模型,嵌入式系统工程师面试

android 程序员 移动开发

Kotlin(1) lambda表达式和高阶函数操作符,android软件开发基础

android 程序员 移动开发

ZOHO | 破解这家ToB厂商持续增长的密码

海比研究院

入选《2021爱分析·区域性银行数字化厂商全景报告》,网易云信助力南京银行打造转型标杆

网易云信

人工智能 金融行业

JNI 与 NDK 入门(一),设计思想与代码质量优化+程序性能优化+开发效率优化

android 程序员 移动开发

Kotlin + 协程 + Retrofit ,携程Android面试题

android 程序员 移动开发

Kotlin 的协程用力瞥一眼,大厂架构师经验分享

android 程序员 移动开发

Kotlin-新版来了,支持跨平台!,android热修复实现

android 程序员 移动开发

Kotlin-编程核心基石—高阶函数,androidrom定制

android 程序员 移动开发

Kotlin下的5种单例模式,一招教你看懂Netty

android 程序员 移动开发

IOC架构设计之控制反转和依赖注入(一),原理讲解

android 程序员 移动开发

太顶了!华为高工用一份423页的网络协议笔记把计算机网络讲清了

程序员 程序人生 网络协议

Jetpack Compose和View的互操作性,这个回答让我错失offer

android 程序员 移动开发

贝壳Flutter瘦身实践

贝壳大前端技术团队

flutter 瘦身 for web

Jetpack Compose 1,阿里P8架构师Android大厂面试题总结

android 程序员 移动开发

博睿数据“智能体验运营,释放商业潜能”催化剂项目获TM Forum创新方案最佳实施奖

博睿数据

Kotlin写一个解释器(2)---语法分析,安卓项目开发范例大全

android 程序员 移动开发

值得收藏好文,基于TCP反射DDoS攻击分析_文化 & 方法_陈国_InfoQ精选文章