Apache MINA反序列化远程代码执行漏洞(CVE-2024-52046)

admin 2024年12月26日00:40:25评论27 views字数 1292阅读4分18秒阅读模式

Apache MINA反序列化远程代码执行漏洞(CVE-2024-52046)

漏洞描述:

Apache MINA(Multipurpose Infrastructure for Network Applications)是一个高性能的网络通信框架,旨在帮助开发人员快速构建和管理网络应用程序,Apache MINA中存在一个反序列化远程代码执行漏洞(CVE-2024-52046),多个受影响版本中存在反序列化远程代码执行漏洞,由于Apache MINA的ObjectSerializationDecoder组件使用了Java原生反序列化协议来处理传入的序列化数据,但缺乏必要的安全检查和防御机制,攻击者可通过向受影响的应用程序发送特制的恶意序列化数据,利用不安全的反序列化过程触发该漏洞,从而可能导致远程代码执行。

影响范围:
Apache MINA 2.0.X < 2.0.27

Apache MINA 2.1.X < 2.1.10

Apache MINA 2.2.X < 2.2.4

修复建议:
升级版本
1.目前该漏洞已经修复,受影响用户可升级到以下版本:
Apache MINA 2.0.X >= 2.0.27

Apache MINA 2.1.X >= 2.1.10

Apache MINA 2.2.X >= 2.2.4

下载链接:

https://mina.apache.org/downloads-mina_2_0.html

2.配置ObjectSerializationDecoder
在升级后,还需要配置ObjectSerializationDecoder实例,以限制哪些类可以被反序列化。默认情况下,ObjectSerializationDecoder 会拒绝所有传入的类,需要使用以下方法之一来明确允许特定的类:
accept(ClassNameMatcher classNameMatcher):使用提供的ClassNameMatcher来匹配允许反序列化的类名。

accept(Pattern pattern):使用标准Java正则表达式来匹配允许反序列化的类名。

accept(String... patterns):使用Apache Commons IO库中的通配符模式来匹配允许反序列化的类名。

3.检查使用 IoBuffer#getObject() 的地方
该漏洞仅在应用程序使用 IoBuffer#getObject() 方法,并通过ProtocolCodecFilter和ObjectSerializationCodecFactory进行数据处理时才会受到影响,应确保应用程序:
• 升级到修复版本。

• 配置并限制可以通过反序列化处理的类。

• 如果不需要 getObject() 方法,避免使用它,以减少安全风险。

4.测试和验证
修复后,测试应用程序以确保它按预期工作并且没有引入新的问题,尤其是在序列化和反序列化处理方面,并验证ObjectSerializationDecoder的配置是否正确,确保只有预期的类被允许反序列化。

临时措施:
暂无

参考链接:
https://seclists.org/oss-sec/2024/q4/177

原文始发于微信公众号(飓风网络安全):【漏洞预警】Apache MINA反序列化远程代码执行漏洞(CVE-2024-52046)

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年12月26日00:40:25
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Apache MINA反序列化远程代码执行漏洞(CVE-2024-52046)http://cn-sec.com/archives/3554426.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息