新型DDoS来袭 | 基于STUN协议的DDoS反射攻击分析

简介: 作为新型反射类型,目前仍存绕过防御可能性。

阿里云安全近期发现利用STUN(Session Traversal Utilities for NAT,NAT会话穿越应用程序)服务发起的DDoS反射攻击。阿里云DDoS防护系统在秒级识别到攻击,实时对攻击流量做了清洗,保护客户业务不受DDoS攻击影响。

背景概述

STUN(Session Traversal Utilities for NAT,NAT会话穿越应用程序)是一种网络协议,目前定义了三种STUN用途:Interactive Connectivity Establishment(ICE)[MMUSIC-ICE],交互式连接建立、Client-initiated connections for SIP [SIP-OUTBOUND],用于SIP的客户端初始化连接、NAT Behavior Discovery [BEHAVE-NAT],NAT行为发现。该协议由RFC 5389定义。STUN支持使用UDP协议来发送,STUN请求/响应事务的可靠性是通过客户端应用程序本身重新传输请求消息来实现的。黑客利用UDP无状态的这种机制,伪造攻击目标请求STUN服务器,把开启该服务的主机作为反射源,进行DDoS反射攻击,实现伪装和攻击。

攻击方式分析

攻击包分析

STUN的UDP端口默认使用3478端口,如下图所示:
image
image

利用了STUN服务(其中software取决于服务器部署的软件名称及版本)的反射攻击载荷的示意图如下:
image
image

STUN协议分析

STUN是一种Client/Server的协议,也是一种Request/Response的协议,默认端口号是3478,支持UDP和TCP。
STUN-UDP协议通信过程,发送一个Request,服务器处理验证,返回一个Response,response常见返回值MAPPED-ADDRESS(表示客户端地址),RESPONSE-ORIGIN(表示响应的地址端口),SOFTWARE(软件名称及版本),FINGERPRINT(指纹扩展),响应长度依赖于不同版本的STUN。详情参见RFC5389(https://www.rfc-editor.org/rfc/rfc5389.html)。

攻击模拟复现

模拟发送Binding Request请求,响应Binding Response报文:
image

模拟攻击返回的响应载荷与攻击载荷一致,复现完成:
image

模拟发送20字节的Binding Request/数据帧62字节,获取到的响应载荷为124字节/数据帧166字节,放大倍数166/62=2.67倍。
image

STUN服务器Softwafre的名称及版本不同,服务器IP长度不同,均会影响Response的长度,目前观察到的最大响应载荷为156字节/数据帧198字节,放大倍数198/62=3.19倍。
image

Software版本示例如下:
 Software: Coturn-4.5.1.3 'dan Eider'
 Software: Amity-systems.com 0.96
 Software: restund v.E5.1.140.1273 ( - / win32 )
 Software: zt v0.4.13 (x86\_64/linux)
 Software: TANDBERG/4137 (X12.5.9)
 Software: Citrix-3.2.3.8 'Marshal West'
发送错误的Request到服务器,返回校验错误的response时,可以放大更大倍数,194/63.0=3.07倍,可以造成更明显的放大效果。
image
image

目前观察到的攻击反射源以海外地区为主,在zoomeye中查询3478开放端口IP数量级23万+,说明STUN服务可利用的IP量级还是比较大。STUN协议本身协议设计上已经优化过,response虽然会比request要大,但不会放大很多倍请求,利用成本会很高。对比其他常见反射攻击的反射倍数,STUN的反射倍数并不理想,但是作为新型的反射类型,市面上DDoS防护系统不一定能全部覆盖防御该攻击方式,反而可能攻击效果更佳。

防护建议

对于STUN互联网应用提供者,可限制可访问的源IP的地址范围减少利用情况,或者使用tcp发送STUN协议,对于企业用户,推荐接入DDoS防护产品对抗大流量DDoS攻击。

原文链接

本文为阿里云原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/513387.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ssh是什么_【科普】SSH都不懂,还搞什么网络

关注我,你的眼睛会怀孕今天小编为大家分享一篇关于SSH 的介绍和使用方法的文章。本文从SSH是什么出发,讲述了SSH的基本用法,之后在远程登录、端口转发等多种场景下进行独立的讲述,希望能对大家有所帮助。1. 什么是SSH?…

java restful中文乱码_restful服务接口访问乱码 和 505错误

标签:用cxf 发部个rest服务,用浏览器访问和 HttpURLConnection 访问。1. URL中有中文,浏览器访问正常,HttpURLConnection 失败。解决: HttpURLConnection 方式需要做兼容处理。queryParam 传入参数,服务实现…

10问10答:你真的了解线程池吗?

简介: 《Java开发手册》中强调,线程资源必须通过线程池提供,而创建线程池必须使用ThreadPoolExecutor。手册主要强调利用线程池避免两个问题,一是线程过渡切换,二是避免请求过多时造成OOM。但是如果参数配置错误&#…

浪潮K1 Power通过ISO/IEC 20243标准认证

日前,浪潮K1 Power服务器通过ISO/IEC 20243标准认证,成为中国第一个通过该认证的服务器产品线。 ISO/IEC 20243标准,也被称为O-TTPS(Open Trusted Technology Provider Standards,开放可信技术供应商标准)…

「技术人生」第3篇:解决问题的规律总结

简介: 本文将介绍问题研究背景及解决问题的一般规律和特殊规律及二者之间的辩证关系。 作者:贺科学 往期技术一号位方法论系列文章: 「技术人生」专题第1篇:什么是技术一号位? 「技术人生」第2篇:学会分…

python canny优化_python实现canny边缘检测

canny边缘检测原理canny边缘检测共有5部分组成,下边我会分别来介绍。1 高斯模糊(略)2 计算梯度幅值和方向。可选用的模板:soble算子、Prewitt算子、Roberts模板等等;一般采用soble算子,OpenCV也是如此,利用soble水平和垂直算子与输…

java变位词_GoLang 字符串变位词

GoLang 实现func solution(s , t string)bool{if s t {return true}length : len(s)if length ! len(t) {return false}// 32 --> ~ 126const MAX_ASCII int 94const SPACE_INDEX rune 32numbers : [MAX_ASCII]int{}sRune : []rune(s)tRune :[]rune(t)for i : 0 ; i <…

CENTOS 7 踢用户_CentOS服务器及MySQL数据库性能测试-乐搏软件测试

这期小编和大家分享使用Sysbench&#xff0c;进行CentOS服务器及MySQL数据库的性能测试。Sysbench是一个跨平台的基准测试工具。基准测试是对数据库的性能指标进行定量的、可复现的、可对比的测试。基准测试可以理解为针对系统的一种压力测试。但基准测试不关心业务逻辑更加简单…

何朝曦:构建云化安全能力的三个建议

11月12日&#xff0c;深信服智安全创新峰会在云端拉开帷幕&#xff0c;深信服创始人&CEO何朝曦在《构建云化时代的安全能力》主题演讲中指出&#xff0c;业务云化已成为用户实现数字化转型与变革的重要方式&#xff0c;这种跨时代的变迁对用户的安全能力提出了更高的要求&a…

dubbo-go v3 版本 go module 踩坑记

简介&#xff1a; 该问题源于我们想对 dubbo-go 的 module path 做一次变更&#xff0c;使用 dubbo.apache.org/dubbo-go/v3 替换之前的 github.com/apache/dubbo-go。 作者 | 董剑辉、盛傲飞 来源 | 阿里巴巴云原生公众号 ​ 问题背景 ​ 该问题源于我们想对 dubbo-go 的 mo…

python 独热码_Python机器学习之独热编码(一)

在机器学习算法中&#xff0c;常会遇到分类特征是离散的&#xff0c;无序的。例如&#xff1a;性别有男、女&#xff0c;城市有北京&#xff0c;上海&#xff0c;深圳等。性别特征&#xff1a;["男"&#xff0c;"女"] > 0&#xff0c;1地区特征&#xf…

php 怎么解析文本,PHP解析自定义纯文本数据库

我有一个文本文件,存储有关不同项目的信息.该文件是结构化的.文件中的每个项目都由大括号{}分隔,并以逗号开头.每个项目都有其拥有的属性列表,并且属性可以存在或不存在.如果不存在,服务器将假定它们为“默认”.每个条目都用大括号括起来,并以逗号结尾&#xff1a;{},该文件还包…

智能数据构建与管理平台Dataphin的前世今生:缘起

简介&#xff1a; 阿里巴巴提出的OneData方法论帮助企业捋清了数据全生命周期的管理思路&#xff0c;更将其植入到产品Dataphin&#xff08;智能数据构建与管理&#xff09;中&#xff0c;通过阿里云为企业提供服务。 Dataphin 智能数据构建与管理平台 面向各行各业大数据建设、…

缓存和数据库一致性问题,看这篇就够了

作者 | Magic Kaito来源 | 水滴与银弹如何保证缓存和数据库一致性&#xff0c;这是一个老生常谈的话题了。但很多人对这个问题&#xff0c;依旧有很多疑惑&#xff1a;到底是更新缓存还是删缓存&#xff1f;到底选择先更新数据库&#xff0c;再删除缓存&#xff0c;还是先删除缓…

并联串联混合的电压和电流_高考物理常考实验之电流表改装电压表怎么串联电阻...

​高中物理学习问题与王尚老师答疑​电流表改装电压表怎么串联电阻【问&#xff1a;电流表改装电压表怎么串联电阻&#xff1f;】王尚老师&#xff1a;基本理论是欧姆定律&#xff0c;我举个例子来说这个问题吧。如果是0.3A量程的电流表&#xff0c;改装为最大量程15V的电压表&…

走近Quick Audience,了解消费者运营产品的发展和演变

简介&#xff1a; Quick Audience产品是一款云原生面向消费者的营销产品&#xff0c;自诞生以来&#xff0c;经历了三个发展阶段。每个阶段的转变&#xff0c;都与互联网环境和消费者行为的变迁有着极大的关联。 Quick Audience是云原生的面向消费者的营销平台&#xff0c;涵盖…

php图形验证码接口,php生成图形验证码

[php]代码库<?php session_start();// main$vcodes ;//generate Number 4srand((double) microtime() * 1000000);for ($i 0; $i < 4; $i) {$vcodes . rand(1, 9);}$_SESSION[eifr_checkvcode] $vcodes;if (function_exists(imagecreate)) {//generate picture valid…

用python做tkinter_Python下用Tkinter进行GUI编程

Python可用的GUI编程的包很多&#xff0c;Tkinter也是其中一个半标准的工具包。作为一个老牌的Python GUI工具包(皮皮书屋里找了本书&#xff0c;竟然是2001年的),它由Tk GUI包装而来。在Windows版里面已经包括了&#xff0c;不用单独下载。用Tkinter实现一个简单的GUI程序,单击…

边缘应用增长 800%,听听 Akamai 边缘部署的经验

作者 | 宋慧出品 | CSDN云计算&#xff08;ID&#xff1a;CSDNcloud&#xff09;全球权威研究机构都在研究边缘计算的发展进程&#xff0c;并一致认为&#xff0c;企业IT的边缘部署正在加速。其中&#xff0c;IDC研究显示&#xff0c;2023年超过50%的企业新增IT基础设施会部署在…

308 permanent redirect怎么解决_赵县308国道一路口发生一起大货车与电动三轮车碰撞事故,电动三轮车驾驶人受伤。...

原标题&#xff1a;赵县308国道一路口发生一起大货车与电动三轮车碰撞事故&#xff0c;电动三轮车驾驶人受伤。2020年11月4日上午&#xff0c;赵县308国道一路口发生一起大货车与电动三轮车碰撞事故&#xff0c;造成电动三轮车驾驶人受伤。大货车驾驶人驾驶一辆重型货车&#x…