首页 > 其他分享 >CC1番外

CC1番外

时间:2024-12-25 09:56:07浏览次数:2  
标签:InvokerTransformer 番外 Object CC1 Class import new class

CC1番外

该笔记是记录观看b站白日梦组长Java反序列化CommonsCollections篇(一) CC1链手写EXP_哔哩哔哩_bilibili的记录,大佬牛逼!!!

初学者(比如我),建议反复刷该视频。

环境搭建

JDK:8u65

Maven:3.6.2

<!-- https://mvnrepository.com/artifact/commons-collections/commons-collections -->  
<dependency>  
 <groupId>commons-collections</groupId>  
 <artifactId>commons-collections</artifactId>  
 <version>3.2.1</version>  
</dependency>

这里有一个坑,就是我们需要添加sun包,因为我们打开源码,很多地方的文件是 .class 文件,都是反编译代码,我们很难读懂,所以需要需要从网上下载 .java 文件。

下载地址是这个:http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/rev/af660750b2f4

下载zip文件,解压

复制下面sun包,注意目录

复制到jdk目录下

接着需要在idea里面,导入

我们随便点开sun目录下,发现是java文件,至此可以调试了。

链子分析

首先回顾一下反序列化漏洞的攻击思路:

入口类这里,我们需要一个 readObject 方法,结尾这里需要一个能够命令执行的方法。我们中间通过链子引导过去。所以我们的攻击一定是从尾部出发去寻找头的,流程图如下:

我们知道宇宙万法的那个源头就是Transformer接口

标签:InvokerTransformer,番外,Object,CC1,Class,import,new,class
From: https://www.cnblogs.com/yingzui/p/18629376

相关文章

  • 跟着问题学23番外——反向传播算法理论及pytorch自动求导详解
    前向传播与反向传播在单层神经网络的优化算法里,我们讲到优化算法是为了寻找模型参数使得网络的损失值最小,这里详细介绍一下应用的基础——反向传播算法。在神经网络中,梯度计算是通过反向传播算法来实现的。反向传播算法用于计算损失函数相对于网络参数(如权重和偏置)的梯度,从而......
  • 西门子S7-1200 PLC控制步进电机 MD-4240-PN (番外) 仿SinaPos (FB284) 块编写
    一、前言本文是本系列《西门子S7-1200PLC控制步进电机MD-4240-PN》的番外篇—— 仿SinaPos(FB284)块编写。MD-4240-PN是一款支持profinet总线的一体式闭环步进电机,还不了解MD-4240-PN的可以翻看我往期的文章,有详细的从开箱到使用;这一篇番外是记录我为了更好的使用它......
  • 前端番外小知识——可迭代对象
    一,问题如何让下面代码成立var[a,b]={a:1,b:2}console.log(a);console.log(b);二,分析什么是可迭代对象?满足可迭代协议的对象含义:1.具有Symbol.iterator属性2.Symbol.iterator是一个函数3.执行函数返回一个迭代器迭代器1.具有next方法2.执行ne......
  • prometheus监控04.1-AlertManager番外篇详解
    1、Prometheus告警简介告警能力在Prometheus的架构中被划分成两个独立的部分。如下所示,通过在Prometheus中定义AlertRule(告警规则),Prometheus会周期性的对告警规则进行计算,如果满足告警触发条件就会向Alertmanager发送告警信息。在Prometheus中一条告警规则主要由以下几部......
  • java-CC1 链条审计
    java-CC1链条审计CC1是CommonsCollections1的简称,它是ApacheCommonsCollections库中的一个已知的反序列化利用链。而这个库也是java中比较通用的库。在java语言里面有执行系统命令的Runtime类像php中的eval()、system()、exec()、shell_exec()、assert()、passt......
  • 番外篇:软件设计师の备考经验帖及报考指南
    ✨博客主页:https://blog.csdn.net/m0_63815035?type=blog......
  • CC1链_全网最菜的分析思路
    文章目录1你必须知道的点1.1反序列化利用链的起点是readObject()方法1.2回顾反射执行系统命令1.3相关类の功能简单介绍1.3.1InvokerTransformer类1.3.2ChainedTransformer类1.3.3ConstantTransformer类1.3.4总结一下上述3个类调用`transform()`方法的不同2CC1......
  • java反序列化——CC1链
    参考【【Java反序列化链】CommonsCollections1深入浅出,详细分析(cc1链)】【Java反序列化链】CommonsCollections1深入浅出,详细分析(cc1链)_哔哩哔哩_bilibilijava反序列化是java安全中非常重要的一点,也是最难的一点,我只能勉强跟着链子走一遍附上一些浅显的理解。 CC1链也......
  • C++的动态数组vector番外之capacity
    今日诗词:爱他明月好,憔悴也相关。西风多少恨,吹不散眉弯。                    ——《临江仙·寒柳》【清】纳兰容若目录引言正文string中的和vector中的capacity有什么区别 vector扩容时内存分配的策略是什么?capacity在vect......
  • Java反序列化(二)——URLDNS链、CC1链
    0背景白日梦组长投稿视频-白日梦组长视频分享-哔哩哔哩视频(bilibili.com)实验环境Java:1.8.0_65IDEA:2022commons-collecetions:3.2.11URLDNS链分析    URLDNS并不能RCE,只是用来发起dns请求,一般用做初步探测,看能不能反序列化和出网。先给出利用链:GadgetChai......