E安全消息,网络应用框架Apache MINA发现一个严重漏洞。漏洞被追踪为CVE-2024-52046,CVSS得分10,可能允许攻击者在系统上执行任意代码。
Apache MINA框架用于构建高性能和可扩展的网络应用,以其事件驱动异步API而闻名。该API简化了TCP/IP和UDP/IP等传输上的网络编程,被广泛应用于各种应用。
然而,其ObjectSerializationDecoder组件的一个缺陷为恶意行为者打开了大门。这个解码器利用Java的本地反序列化来处理序列化数据,被发现缺乏关键的安全检查。
问题的根源在于易受攻击版本的MINA处理对象反序列化的方式。没有适当的防护措施,攻击者可以发送特别制作的恶意序列化数据,当ObjectSerializationDecoder处理这些数据时,可能会导致远程代码执行(RCE)。这意味着攻击者可能完全控制受影响的系统。
CVE-2024-52046漏洞影响了一系列Apache MINA版本,具体包括:
-
Apache MINA 2.0.0至2.0.26
-
Apache MINA 2.1.0至2.1.9
-
Apache MINA 2.2.0至2.2.3
需要注意的是,并非所有使用MINA的应用程序都会自动受到影响。
当应用程序使用IoBuffer#getObject()方法时,风险就会出现,这可能在ProtocolCodecFilter实例使用ObjectSerializationCodecFactory类被添加到过滤器链时被调用。如果你的应用程序依赖这些特定类和方法,你可能已经暴露了风险,必须立即采取行动。
Apache MINA团队通过发布以下修补版本迅速解决了这一关键漏洞:
-
Apache MINA 2.0.27
-
Apache MINA 2.1.10
-
Apache MINA 2.2.4
仅仅升级是不够的。更新的版本引入了一个重要的安全增强功能:开发人员必须明确定义ObjectSerializationDecoder被允许反序列化的类。
通过三个新方法实现:
-
accept(ClassNameMatcher classNameMatcher)
-
accept(Pattern pattern)
-
accept(String… patterns)
默认情况下,解码器现在将拒绝所有类,遵循“拒绝所有”的原则,除非明确允许。这增加了一个重要的控制层,防止了不受信任和潜在恶意对象的反序列化。
Apache MINA团队已表示,FtpServer、SSHd和Vysper子项目不受此漏洞影响。
原文始发于微信公众号(E安全):Apache MINA严重漏洞 :CVE-2024-52046 (CVSS 10),可能允许远程代码执行
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论