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 ...
JBoss反序列化漏洞
实战遇到了Jboss 反序列化,发现之前写的太烂了,重新梳理了一下
CVE-2017-7504
影响版本:JBoss AS 4.x及之前版本
下载地址:https://sourceforge.net/projects/jboss/files/JBoss/JBoss-4.2.3.GA
安装成功后需要修改jboss-4.2.3.GA/server/all/deploy/jboss-web.deployer/server.xml,设置远程访问
将目录jboss-4.2.3.GA/server/all/deploy-hasingleton/jms/jbossmq-httpil.sar/jbossmq-httpil.war/WEB-INF/classes/org打包
执行命令jar cvf jbossmq-httpil.jar ./org,然后导入即可
漏洞分析看到jboss-4.2.3.GA/server/all/deploy-hasingleton/jms/jbossmq-httpil.sar/jbossmq-httpil.war/WEB-INF/web.xml
存在一个 HTTPSer ...
0CTF/TCTF 2022 hessian-onlyJdk
好久没有学习新的ctf知识点了,复现一下近期出现的一个hessian-onlyJdk题目源码下载:https://github.com/waderwu/My-CTF-Challenges/tree/master/0ctf-2022/hessian-onlyJdk
看到环境只有hessian 4.0.38和openjdk 8u342,源码就是一个hessian2反序列化,相当于打jdk原生链
预期我们先来学习一下触发到toString()的利用,Apache Dubbo Hessian2 异常处理时反序列化(CVE-2021-43297)
CVE-2021-43297漏洞在com.caucho.hessian.io.Hessian2Input#expect()这里
可以看到有个readObject()的操作,接着就是一个String和对象的拼接,很明显会调用toString()并且发现在com.caucho.hessian.io.Hessian2Input#readString()中就有expect()的调用
需要default条件才会调用,我们只需要取default上面没有条件的ca ...
Weblogic未授权远程命令执行漏洞
CVE-2020-14882 允许未授权的用户绕过管理控制台的权限验证访问后台,CVE-2020-14883 允许后台任意用户通过 HTTP 协议执行任意命令。使用这两个漏洞组成的利用链,可通过一个 GET 请求在远程 Weblogic 服务器上以未授权的任意用户身份执行命令
影响版本:
Oracle WebLogic Server 10.3.6.0.0
Oracle WebLogic Server 12.1.3.0.0
Oracle WebLogic Server 12.2.1.3.0
Oracle WebLogic Server 12.2.1.4.0
Oracle WebLogic Server 14.1.1.0.0
CVE-2020-14882在正常访问console后台时会提示输入帐号密码
但是可以使用url二次编码/console/images/%252e%252e/console.portal,通过这个就可以实现路径穿越,未授权访问管理后台
但是通过未授权访问的后台与正常登陆的后台相比,由于权限不足,缺少部署等功能,无法安装应用,所以也无法通过部署项目等方式直接获取权 ...
Weblogic反序列化漏洞
还是觉得得研究一下weblogic反序列化漏洞,只会用工具太脚本小子了,我们来看看weblogic是如何造成反序列化漏洞的
WebLogic是美国Oracle公司出品的一个application server,确切的说是一个基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中
在WebLogic里面反序列化漏洞利用大致分为两种,一个是基于T3协议的反序列化漏洞,一个是基于XML的反序列化漏洞
漏洞复现的环境搭建使用:https://github.com/QAX-A-Team/WeblogicEnvironment我这里选用的是jdk7u21和wls10.3.6版本
T3协议反序列化参考RoboTerh师傅的文章:https://tttang.com/user/RoboTerh
CVE-2015-4852影响版本:
Oracle WebLogic Server 10.3.6.0
Oracle W ...














