CC5: 这个相比CC1只是出口变了一下。 LazyMap类: 我们知道这个类的get()方法可以触发transform()方法。 public Object get(Object key) { // create value for key if key is not currently in the map if (map.containsKe…
CC4: 影响版本: JDK 8 Commons-Collections:4 TransformingComparator类: 入口:compare()函数 public int compare(final I obj1, final I obj2) { final O value1 = this.transformer.transform(obj…
CC3: 这个链子主要是用于Runtime类用不了的时候,原理就是用类似类加载器的方法从字节中创立一个恶意对象出来。 环境: jdk8u71以前 Commons-Collections <= 3.2.1 TemplatesImpl类: 先看入口: 类加载器的defineClass()本来是protected类型,且知识加载类,不执行类。要额外…
CC6: 版本要求: JDK ≤ 8u76 CommonsCollections <= 3.2.1 在cc1中,我们已经知道了AnnotationInvocationHandler类的invoke方法可以触发LazyMap的get方法,但其实TiedMapEntry类的getvalue方法也可以触发。 LazyMap: 我们先来看LazyMa…
PHP 常用函数: preg_match():用于执行正则表达式匹配 preg_match($pattern, $subject) //$pattern是正则表达式,$subject是要匹配的字符串 parse_str():直接将查询参数解析到当前作用域变量中 $_GET['id']时有: id=a[]=www.polarctf.com is_nu…
java反序列化CC1链路 版本要求: commons-collections 3.1–3.2.1 jdk < 8u71 链路概览: /* Gadget chain: ObjectInputStream.readObject() AnnotationInvocationHandler.readObject() Map(Proxy).entry…
java反序列化: 基础知识: 序列化,反系列化方法: ObjectOutputStream类的 writeObject() 方法可以实现序列化。 ObjectInputStream 类的 readObject() 方法用于反序列化。 序列化过程就是: 对象 -> ObjectOutputStream (将对象转为字节) -> File…
这里是一个鹰角游戏群聊,欢迎来玩
这篇文章没有摘要
用flask_unsign爆破cookie或session 启动: python -m pip install flask_unsign python -m pip install flask_unsign_wordlist 爆破cookie生成私钥: from flask_unsign import Cracker, logger, DEFAUL…