Java RMI 服务易受 SSRF 攻击

安全研究员发现Java RMI服务普遍存在的服务器端请求伪造(SSRF)漏洞,允许攻击者利用序列化机制进行远程代码执行。RMI依赖于不安全的通信方式,使得未正确配置的内部服务易受攻击。建议采取加强TLS保护、使用反序列化过滤器及增强认证等措施来防范此类攻击。
摘要由CSDN通过智能技术生成

5b9c71684ac9b53b333d4859fd304623.gif 聚焦源代码安全,网罗国内外最新资讯!

编译:代码卫士

安全研究员 Tobias Neitzel 发布文章指出,Java RMI 服务可遭服务器端请求伪造 (SSRF) 攻击。

Java RMI 是在多数 Java 安装中常见的面向对象的远程过程调用 (RPC) 机制。软件开发人员可使用该技术使用户从网络访问函数。Neitzel 发现,对于通信而言,Java RMI 依赖于序列化 Java 对象机制,是攻击者经常针对的目标。

Neitzel 在文章中详细解释了默认 RMI 组件如何可被攻击,导致多种后果,如远程代码执行等。

通常而言,SSRF 攻击可使攻击者诱骗服务器端应用程序向攻击者所挑选的域名提出 HTTP 请求,易受各种非法行为影响。Neitzel 解释称,“和所有的SSRF技术一样,主要问题在于攻击者可能能够攻击本应该仅供受信任网络访问的 RMI 服务。正确保护 RMI的安全并没有那么直观,而是存在很多隐藏面。管理员并没有正确配置,而是选择省事办法,仅允许从受信任网络或客户端进行访问。”

Neitzel 的研究结果表明,外部攻击者“或能够通过利用外部服务中的 SSRF 漏洞,利用配置不安全的内部服务。”

最常用的 RMI 服务是 JMX。Neitzel 指出可通过SSRF 攻陷后端 JMX 服务,但前提是系统返回后端服务的响应并接受其中的任意字节。同样也可能对默认 RMI 组件如 RMI 注册表发动基于 SSRF 的攻击,但前提是系统允许向后端服务发送任意字节。

Neitzel 表示,“Java RMI 是二进制协议,在通信过程中要求所有不同种类的数据类型。”

000c00c34fc1f5df0cedef6e9cd12b17.png

缓解措施

SSRF 攻击是非常常见的不安全情况。

Neitzel 指出,“多种服务可能暴露于危险方法中,未执行反序列化过滤器,或者过期并包含已知漏洞(如远程类加载)。” 他还在博客中列出了安全最佳实践和RMI服务攻击的防御措施,如为所有 RMI 端点启用受 TLS 保护的通信、使用反序列化过滤器以及增加更强大的认证控制等。

技术详情可见:https://blog.tneitzel.eu/posts/01-attacking-java-rmi-via-ssrf/


推荐阅读

这个SSRF 漏洞很酷

Facebook 推出查找SSRF 漏洞的新工具

攻击者接管账户,攻陷周下载量超700万次的JavaScript 流行库 ua-parser-js

别问,问就是我差点在所有浏览器中注入 JavaScript 代码

下载量超1600万的热门开源 JavaScript 序列化包中被曝 RCE 漏洞

安全研究员发现 Yandex 浏览器中的 SSRF 缺陷

研究员发现 Google Cloud 项目中的 SSRF 漏洞,获1万美元奖金

原文链接

https://portswigger.net/daily-swig/java-rmi-services-often-vulnerable-to-ssrf-attacks-research

题图:Pixabay License

本文由奇安信编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。

2f7fd86a639e266fd985bea9c4fabe8e.png

1a39333fe9d11cbd7c970632b8e690da.png

奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的产品线。

   38474753630977e41ba818c5ae3d9ad4.gif 觉得不错,就点个 “在看” 或 "赞” 吧~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值