Apache Dubbo 是一种基于 Java 的高性能 RPC 框架。该项目于 2011 年开源,并于 2018 年 2 月进入 Apache 孵化器,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。
Dubbo 2.7.6 或更低版本存在反序列化代码执行漏洞,攻击者可以发送不存在的服务名或方法名的 RPC 请求,同时配合附加恶意的参数负载。当恶意参数被反序列化时,它将执行一些恶意代码。
近期 Apache Dubbo 披露了 Provider 默认反序列化远程代码执行漏洞(CVE-2020-1948),攻击者可构造恶意请求执行任意代码。
6 月 29 日白帽汇安全研究院发现 Apache Dubbo 的 GitHub 上有一个新的 Pull Request 称修复了2.7.7版本的绕过。鉴于该漏洞影响较大,建议客户尽快自查修复。
CVE编号
CVE-2020-1948
影响范围
- Apache Dubbo 2.7.0 ~ 2.7.7
- Apache Dubbo 2.6.0 ~ 2.6.7
- Apache Dubbo 2.5.x 所有版本 (官方不再提供支持)
根据目前FOFA系统最新数据(一年内数据),显示全球范围内(app="阿里巴巴-dubbo")共有 5,682 个相关服务对外开放。中国使用数量最多,共有 5,323 个;美国第二,共有 141 个;中国香港第三,共有 91 个;新加坡第四,共有 36 个;荷兰第五,共有 16 个。
全球范围内分布情况如下(仅为分布情况,非漏洞影响情况)
中国大陆地区浙江使用数量最多,共有 2616 个;北京第二,共有 909 个;广东第三,共有 192个,山东第四,共有 66 个;江苏第五,共有 64 个。
漏洞环境——Vulfocus
目前 Vulfocus 已经集成 CVE-2020-1948 环境,可通过 docker pull vulfocus/dubbo-cve_2020_1948
进行拉取运行,也可通过 http://vulfocus.fofa.so/ 进行测试。
修复建议
先升级到Dubbo 2.7.7,然后参考以下链接,对参数类型进行校验:
https://github.com/apache/dubbo/pull/6374/commits/8fcdca112744d2cb98b349225a4aab365af563de
参考
[2] https://mp.weixin.qq.com/s/bPVraONqYhQ2JZ4sNoO_Vw
白帽汇从事信息安全,专注于安全大数据、企业威胁情报。
公司产品:FOFA-网络空间安全搜索引擎、FOEYE-网络空间检索系统、NOSEC-安全讯息平台。
为您提供:网络空间测绘、企业资产收集、企业威胁情报、应急响应服务。