红日靶场1学习记录
搭建下载地址 :百度网盘: https://pan.baidu.com/s/1nC6V8e_EuKfaLb2IuEbe7w&shfl=sharepset密码: 【红日安全】您的下载密码为:n1u2。
下载完三个压缩包全部解压即可,打开里面的vmx虚拟机配置文件会自动打开VMware,初始密码是hongrisec@2019winserver和win2k3显示密码过期重新设置一下即可网络括扑图如下:
这个win7是边界服务器,需要配置两个网卡,一个外网一个内网在网络适配器加一个网卡设置为自定义Vmnet1(仅主机模式),另一个网卡为NAT模式
这里需要修改虚拟网络编辑器的Vmnet1网卡的网段为192.168.52.x/24
winserver2008和win2k3的网络适配器也都选择这个自定义的Vmnet1
因为它里面已经给配置好域里面的三个机器的ip了,我们只需要设置好网段就行了
网络配置:1234win7边界: 外网:192.168.213.138 内网:192.168.52.143Windows server2008: 192.168.52.138win2k3 metas ...
2024SCTF出题记录
ezjump题目附件已更新至: https://github.com/jmx0hxq/My-CTF-Challenges/blob/master/2024SCTF/sctf2024_ezjump.zip
打开附件查看docker-compose文件发现有docker容器,一个fronted,一个backend,一个redis其中只有fronted容器暴露在公网,flag在redis机器的根目录
fronted我们的fronted写了两个路由,一个/play,一个/success,这里的/play路由就是3秒钟算一个数学题,一直得分到10000分以上才会跳转/success路由,但是我没想让师傅们玩这个无聊游戏就没引入认证模块,可以直接访问/success路由,观察package.json发现nextjs的版本是14.1.0,存在CVE-2024-34351漏洞,观察源码可以发现Let us Play Again!!就是调用了redirect("/play"),其中的redirect函数可以触发SSRF漏洞
写一个main.ts:1234567891011121314 ...
2024京麒CTF ezldap复现分析
环境搭建题目源码: https://github.com/HSwift/my-ctf-challenges/tree/main/ezldap这里我是docker+idea调试环境首先修改dockerfile文件,5005端口expose出来1234FROM eclipse-temurin:17.0.11_9-jdk-alpineCOPY app /appEXPOSE 8080 5005
123docker build -t jq .docker run -it --entrypoint /bin/bash -p 5005:5005 -p 1212:8080 jqjava -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 -jar /app/demo-0.0.1-SNAPSHOT.jar
然后IDEA添加运行配置文件,选择远程调试
然后可以下断点调试了
分析首先我们利用dirsearch扫目录可以发现大量的actuator目录,这是springboot未授权访问漏洞我们访问/actuator/map ...
2024 CISCN ezjava复现总结
mysql写文件到classpath(行不通)首先看pom.xml123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...
Jdk7u21链子分析
分析前置知识是TemplatesImpl类加载字节码RCE,也是sink点TemplatesImpl类的newTransformer方法会调用getTransletInstance方法 ,然后先通过defineTransletClasses方法填充__class__,然后调用x].newInstance()RCE
这里需要找到一个类调用TemplatesImpl的newTransformer方法这里我们找到的是AnnotationInvocationHandler的equalsImpl方法这里可以调用var1类的var5方法var5是var2来的,var2是getMemberMethods()方法获取的可以看到memberMethods是通过this.type获取的.,这个值构造函数我们是可控的,我们可以控制它是Templates类,它只有newTransformer和getOutputProperties方法
而equalsImpl方法是通过AnnotationInvocation类的invoke方法调用的进入if语句需要满足几个条件:
代理的方法名是”equals”
这个代理方法 ...
Jackson漏洞总结
简历Jackson 是一个开源的Java序列化和反序列化工具,可以将 Java 对象序列化为 XML 或 JSON 格式的字符串,以及将 XML 或 JSON 格式的字符串反序列化为 Java 对象。
1234567891011121314151617<dependencies> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.7.9</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> ...
JAVA反序列化之CC7链分析
环境12345<dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> <version>3.1</version> </dependency>
链子1234567891011Hashtable.readObject Hashtable.reconstitutionPut Hashtable.reconstitutionPut LazyMap.equals 没实现,找父类 AbstractMapDecorator.equals HashMap.equals 没实现,找父类 AbstractMap.equals LazyMap.get ChainedTransformer.transform() ConstantT ...
JAVA反序列化之CC5链分析
环境12345678<dependencies> <dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> <version>3.2.1</version> </dependency></dependencies>
链子12345678910111213141516Gadget chain: ObjectInputStream.readObject() BadAttributeValueExpException.readObject() TiedMapEntry.toString() LazyMap.get() ChainedTransform ...
JAVA反序列化之CC2链分析
环境poe.xml12345<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> <version>4.0</version> </dependency>jdk: jdk8u71CC: Commons-Collections4.0,注意这里的依赖和之前不一样的
我们这里不能像CC4那样利用 TransformingComparator.compare() -> InstantiateTransformer.transform() -> TrAXFilter.TrAXFilter() 去调用 TemplatesImpl.newTransformer()
而是直接利用 InvokerTransformer.transform()来调用TemplatesImpl.newTransformer()
因此我们只需要修改Transforme ...
JAVA反序列化之CC4链分析
因为 CommonsCollections4 除 4.0 的其他版本去掉了 InvokerTransformer 不再继承 Serializable,导致无法序列化同时 CommonsCollections 4的版本 TransformingComparator 继承了 Serializable接口
环境12345<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> <version>4.0</version> </dependency>
链子1234567891011121314/*PriorityQueue.readObject() PriorityQueue.heapify() PriorityQueue.siftDown() PriorityQueue.siftDownUsingComp ...