技术社区
安全培训
技术社群
积分商城
先知平台
漏洞库
历史记录
清空历史记录
相关的动态
相关的文章
相关的用户
相关的圈子
相关的话题
注册
登录
Apache mina反序列化漏洞
用户9528
漏洞分析
197浏览 · 2025-03-28 04:13
返回文档
去年的一个洞了,原理很简单,算是炒个冷饭。
关于apache mina
Apache Mina 是一款基于 Java 的高性能网络应用框架,其核心功能在于简化复杂网络通信的开发流程,同时确保具备可扩展性与高效性。以下为对其主要功能的总结:
1
抽象底层通信细节
Mina 对 Java NIO 的底层 I/O 操作(例如线程管理、缓冲区分配、Socket 连接等)进行了封装。开发者无需直接处理多线程并发或数据读写阻塞问题,仅需聚焦于业务逻辑。
2
分层架构设计
Mina 采用分层模型,将通信逻辑与业务逻辑相分离,形成三个核心层次: -
I/O 服务层(IoService)
:负责建立连接(如
IoAcceptor
服务端、
IoConnector
客户端),监听端口并管理会话(
IoSessiaon
)。 -
过滤器链(FilterChain)
:处理协议编解码、日志记录等横切需求,例如借助
TextLineCodecFactory
实现字节流与文本的转换。 -
业务处理器(IoHandler)
:开发者在此实现事件驱动的业务逻辑(如
messageReceived
处理接收到的数据)。
3
支持多种通信协议
Mina 提供对 TCP/IP、UDP/IP、串口通信、虚拟机管道等多种传输协议的支持,并且允许开发者进行自定义协议扩展。
4
高性能与可扩展性
-
异步非阻塞模型
:基于 Java NIO 的事件驱动机制,支持高并发连接和低延迟通信。 -
线程池优化
:允许自定义线程模型(单线程或线程池),以平衡资源消耗与处理效率。 -
缓冲池技术
:通过内存重用降低垃圾回收压力,提升大规模数据传输性能。
5
事件驱动与状态管理
Mina 通过事件回调机制(如
sessionCreated
、
sessionIdle
、
exceptionCaught
)管理连接生命周期和异常,结合
IoSession
实现会话状态存储(如用户登录状态)。
6
典型应用场景
-
即时通讯系统
:处理大量实时消息的收发。 -
在线游戏服务器
:支持高并发玩家交互。 -
物联网网关
:管理设备连接与数据转发。 -
金融交易平台
:实现低延迟订单处理。 --- ### 总结 Apache Mina 的核心价值在于,通过模块化设计、高性能异步模型以及丰富的协议支持,使开发者能够快速构建稳定、可扩展的网络应用,同时避免陷入底层通信细节的繁杂之中。其灵活的架构尤其适用于需要处理高并发和复杂协议的场景。
搭建环境
漏洞位置存在于架构的编解码器过滤器使用的ObjectSerializationCodecFactory类中,这个类也是mina专门用于处理Java对象的序列化和反序列化的编解码器。
创建Message类:
创建MinaServer类:
创建MinaClient类:
先运行server,再运行client,如下所示,环境搭建成功:
漏洞分析
漏洞处于ProtocolCodecFilter编解码器里的ObjectSerializationCodecFactory类,而且发生在反序列化解码的阶段,在ProtocolCodecFilter.messageReceived打下断点,在decoder.decode(session, in, decoderOut)这部分代码用于可以查看输入缓冲区的内容,确保Message对象被正确解码:
ObjectSerializationCodecFactory创建的具体解码器是ObjectSerializationDecoder,该类实现了 ProtocolDecoder接口,负责将字节流反序列化为java对象:
在AbstractIoBuffer.getObject方法中完成反序列化:
漏洞测试
恶意类:
再将这里Client发送的类替换成Evil类:
调试server,再运行client就可以看到进入到了执行命令的方法:
漏洞修复
https://github.com/apache/mina/compare/2.0.26...2.0.27
相当于是做个白名单校验,白名单需要手动在ObjectSerializationDecoder设置允许的类,否则默认拒绝所有类。
0
人收藏
1
人喜欢
转载
分享
0
条评论
某人
表情
可输入
255
字
评论
发布投稿
热门文章
1
cyberstrikelab-shadow靶场首杀
2
从零开始手搓C2框架
3
契约锁电子签章系统 pdfverifier rce 前台漏洞分析(从源码分析)
4
大华智能物联管理平台1day分析
5
契约锁电子签章系统 pdfverifier 远程代码执行漏洞分析(补丁包逆向分析)
近期热点
一周
月份
季度
1
cyberstrikelab-shadow靶场首杀
2
从零开始手搓C2框架
3
契约锁电子签章系统 pdfverifier rce 前台漏洞分析(从源码分析)
4
大华智能物联管理平台1day分析
5
契约锁电子签章系统 pdfverifier 远程代码执行漏洞分析(补丁包逆向分析)
暂无相关信息
暂无相关信息
优秀作者
1
T0daySeeker
贡献值:41700
2
一天
贡献值:29800
3
Yale
贡献值:25000
4
1674701160110592
贡献值:21800
5
1174735059082055
贡献值:16000
6
手术刀
贡献值:14000
7
Loora1N
贡献值:13000
8
bkbqwq
贡献值:12800
9
Ha1ey
贡献值:11000
10
lufei
贡献值:11000
目录
转载
标题
作者:
你好
http://www.a.com/asdsabdas
文章
转载
自
复制到剪贴板