===
本文介绍了CVE-2023-29552漏洞以及SLP协议如何被用于新型DDoS反射攻击,结合360Quake网络空间测绘,分析了SLP协议在互联网中的分布状况以及如何防范这类攻击。e被ingi n
背景
背景
近期,安全研究专家公开揭示了CVE-2023-29552漏洞。这一漏洞可以通过利用服务定位协议(SLP, Service Location Protocol)发起具有高破坏性的DDoS反射放大攻击。SLP协议是一种便捷的服务定位协议,允许网络设备在未事先了解彼此的情况下实现交互,并且不需要预先配置,从而实现网络自动发现共享服务。攻击者可借助SLP协议中无需身份验证的特点,展开大规模DDoS反射攻击。
研究人员从Bitsight和Curesec共同发现了一个高危漏洞(CVE-2023-29552),该漏洞存在于遗留的互联网协议——服务定位协议(SLP)中。攻击者可利用该漏洞发动大规模的拒绝服务(DoS)放大攻击,放大因子高达2200倍,可能使其成为有史以来最大的放大攻击之一。2023年2月,我们发现全球范围内有超过2000个组织和54000个SLP实例可能受到攻击,包括VMware ESXi Hypervisor、Konica Minolta打印机、Planex路由器、IBM集成管理模块(IMM)、SMC IPMI等。攻击者可借助这些实例对全球范围内毫无戒备的组织发动DoS攻击。
近年来,DoS攻击屡次成为头条新闻,对受害者造成了严重的财务、声誉和运营损失。预计从2018年至2023年底,攻击数量将翻倍,企业将继续遭受服务中断的困扰。实际上,由于DoS攻击,中小型企业(SMB)的平均花费已达到120,000美元,而大型组织可能由于较高的中断成本而面临更为严重的财务损失。大型跨国企业也无法幸免于此类攻击,例如亚马逊网络服务(AWS)和GitHub等都曾遭受过攻击。
===
协议分析
SLP报文主要由以下几个部分组成:
1.**报文头(Header):**报文头部包含了SLP报文的基本信息,如报文的版本、功能码、报文长度等.
主要字段如下:
Version:版本号,占1字节。表示SLP报文所遵循的协议版本。当前主要使用的版本为 2。
2.**报文体(Body):**报文体包含了报文头所指示的具体功能所需的相关信息。报文体的结构因功能码的不同而异。常见的功能码对应的报文体结构包括:
服务请求(Service Request):包含服务类型(Service Type)、范围列表(Scope List)以及搜索过滤条件(Search Filter)等。
SLP 消息类型
消息类型
缩写
功能代码
说明
服务请求
SrvRqst
1
由 UA 发出,用于查找服务;或由 UA 或 SA 服务器在主动 DA 搜索期间发出。
服务应答
SrvRply
2
DA 或 SA 对服务请求的响应。
服务注册
SrvReg
3
允许 SA 注册新通知,利用新增和更改的属性更新现有通知,以及刷新 URL 生命周期。
服务注销
SrvDereg
4
当通知表示的服务不再可用时,由 SA 用来注销其通知。
服务确认
SrvAck
5
DA 对 SA 的服务请求或服务注销消息的响应
属性请求
AttrRqst
6
由 URL 或服务类型发出,用以请求属性列表。
属性应答
AttrRply
7
用于返回属性列表。
DA 通知
DAAdvert
8
DA 对多点传送服务请求的响应。
服务类型请求
SrvTypeRqst
9
用来查询具有特定的命名授权并且处于特定范围集合中的已注册服务类型。
服务类型应答
SrvTypeRply
10
作为对服务类型请求的响应返回的消息。
SA 通知
SAAdvert
11
UA 使用 SAAdvert 在未部署 DA 的网络中搜索 SA 及其范围。
服务类型应答报文示例
首先,发送SrvTypeRqst请求以获取服务类型列表,并解析SrvTypeRply响应报文。然后,针对每个服务类型(Service Type),发送SrvRqst请求以获取服务的URL,并解析SrvRply以获取该服务的URL信息。接下来,对于服务的每个URL,发送AttrRqst请求以获取该URL的属性信息。
================================================================================================================================================================
SLP(Service Location Protocol)协议可能会泄露以下类型的信息:
系统架构和操作系统信息:SLP消息通常包含有关服务提供方的系统架构和操作系统信息,如处理器架构、操作系统类型和版本等。
应用程序信息:SLP消息可能包含有关服务提供方的应用程序信息,例如应用程序名称、版本和发布日期等。
网络配置信息:SLP消息可能包含有关服务提供方的网络配置信息,例如IP地址、子网掩码、网关等。
服务属性信息:SLP消息可能包含有关服务提供方的服务属性信息,例如服务描述、服务提供商名称和版本、服务位置等。
安全策略信息:SLP消息可能包含有关服务提供方的安全策略信息,例如用户权限、认证机制等。
根据360Quake网络空间测绘,已确定大约有58,011个可通过互联网访问的SLP反射器。攻击者利用大量可滥用的SLP反射器,可产生系数高达2200倍的大型DDoS反射攻击。由于这类攻击存在大量可利用攻击媒介且其具有极大的攻击放大效果,会有更多攻击者选择基于SLP协议进行的DDoS攻击。
利用360QUAKE的数据分析能力,我们发现Service Location Protocol 即360Quake中的svrloc服务在全球范围内的主要分布如下:美国位居榜首,共计8,330条相关服务数据;法国紧随其后,拥有7,853条服务数据;中国排名第三,共4,940条服务数据;德国名列第四,共4,419条服务数据;而土耳其与巴西分别位列第五和第六,分别拥有2,220条和2,066条相关服务数据。
防范建议
为了防范SLP反射攻击,以下是一些建议:
及时监控分析UDP协议427端口流量情况,检查是否存在异常。
企业内部网络应对SLP协议进行严格管理,防止内部设备被用作反射攻击的来源。
对外开放服务的设备,应在防火墙上限制SLP协议的访问权限,避免成为攻击者的目标。
对SLP协议的实施进行监控,尽量避免不必要的SLP协议开放。
在网络边界部署DDoS防御设备,提前预防潜在的攻击威胁。
通过以上防范措施,企业和个人可以降低SLP协议被用于DDoS反射攻击的风险,确保网络安全。
参考链接
New high-severity vulnerability (CVE-2023-29552) discovered in the Service Location Protocol (SLP)
Service Location Protocol, Version 2
预警:最大2200倍!基于SLP的新型DDoS反射放大攻击来袭
添加管理员微信号:quake_360
备注:进群 邀请您加入 QUAKE交流群