Apache Shiro 漏洞复现

news2024/9/22 1:16:38

文章目录

  • Apache Shiro 漏洞复现
    • 1. Apache Shiro 1.2.4 反序列化漏洞
      • 1.1 漏洞描述
      • 1.2 漏洞原理
      • 1.3 漏洞复现
        • 1.3.1 环境启动
      • 1.4 漏洞利用
      • 1.5 修复方案

Apache Shiro 漏洞复现

链接地址:Vulhub - Docker-Compose file for vulnerability environment

1. Apache Shiro 1.2.4 反序列化漏洞

1.1 漏洞描述

说明内容
漏洞编号CVE-2016-4437
漏洞名称Apache Shiro 1.2.4 反序列化漏洞
漏洞评级高危
影响范围Apache Shiro 1.2.4
漏洞描述Apache Shiro 1.2.4及以前版本中,加密的用户信息序列化后存储在名为remember-me的Cookie中。攻击者可以使用Shiro的默认密钥伪造用户Cookie,触发Java反序列化漏洞,进而在目标机器上执行任意命令。
修复方案打补丁,上设备,升级组件

1.2 漏洞原理

Apache Shiro 1.2.4及以前版本中,Apache Shiro默认使用了CookieRememberMeManager,其处理cookie的流程是:得到rememberMe的cookie值 > Base64解码–>AES解密–>反序列化。然而AES的密钥是硬编码的,就导致了攻击者可以构造恶意数据造成反序列化的RCE漏洞。

1.3 漏洞复现

1.3.1 环境启动

image-20230908200140028

说明:这里我修改了docker-compose.yml配置文件的端口号。

服务启动后,访问http://your-ip:8090可使用admin:vulhub进行登录。

image-20230908205513086

登录成功

image-20230908200406396

1.4 漏洞利用

利用Shiro工具进行链接

在URL中输入登录界面的路径然后点击密钥爆破,检测是否存在Shiro框架。

image-20230908203605728

查看利用链,测试哪一个CC链可以利用。

image-20230908203646713

然后输入命令执行即可

image-20230908203800371

1.5 修复方案

  1. 确定自己使用的shiro版本要高于1.2.4。

  2. 在代码中全局搜索 “setCipherKey(Base64.decode(” 关键字,或者"setCipherKey"方法,Base64.decode()中的字符串就是shiro的密钥,要确保该密钥的安全性,千万不要使用公开的密钥。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Chrome自动播放限制策略

原文链接:Chrome 自动播放限制策略 Web浏览器正在朝着更严格的自动播放策略发展,以便改善用户体验,最大限度地降低安装广告拦截器的积极性并减少昂贵和/或受限网络上的数据消耗。这些更改旨在为用户提供更大的播放控制权,并使开发…

ThreeJs中场景(scene)、 相机(camera)、渲染器(renderer)等方法类使用

ThreeJs笔记 简介 WebGL(Web Graphics Library,Web图形库),是一个JavaScript API,可在任何兼容的Web浏览器中渲染高性能的交互式3D和2D图形,而无需使用插件 。 WebGL通过引入一个与OpenGL ES 2.0非常一致…

学编程,为什么优先推荐学Python?

编程,也就是用计算机语言来控制计算机的过程,是当今社会中一项非常重要和有用的技能。无论你是想从事科学研究、工程设计、商业管理、教育传播、艺术创作,还是其他任何领域,学习编程都可以给你带来很多好处。 本文将从以下几个方…

Maven 构建生命周期

目录 构建阶段由插件目标构成 Clean 生命周期 Default (Build) 生命周期 命令行调用 Site 生命周期 Maven 构建生命周期定义了一个项目构建跟发布的过程。 一个典型的 Maven 构建(build)生命周期是由以下几个阶段的序列组成的: 阶段 处…

express-generator快速构建node后端项目

express-generator是express官方团队开发者准备的一个快速生成工具,可以非常快速的生成一个基于express开发的框架基础应用。 npm安装 npm install express-generator -g初始化应用 express my_node_test 创建了一个名为 my_node_test 的express骨架项目通过 Exp…

Session 机制

一、Session 会话机制原理 Session(会话)机制是一种在 Web 应用程序中用来跟踪用户状态的技术。它通过在服务器端存储和管理用户信息,为每个用户分配一个唯一的会话标识符(Session ID/Token),并将该标识符…

CMS难题待解?头部企业已领跑前装量产与集成趋势

对汽车智能化来说,又一项智能交互的科技新配置已经兴起。 今年9月初,阿维塔12在德国慕尼黑车展上全球首发亮相,作为一款纯电智能豪华轿跑,新车采用电子外后视镜(CMS)取代了传统外后视镜,为这款…

提供电商API接口,点击获取API文档及测试

提供电商API接口,点击获取API文档及测试,一键对接各大主流电商平台 随着电子商务的飞速发展,电商API接口在业务运营中发挥着越来越重要的作用。它们提供了高效、便捷的连接方式,使得不同系统之间能够无缝协同工作,提升…

iPhone删除的照片怎么找回?总有一个方法适合你

大家都知道,手机使用久了就会产生很多垃圾文件。特别是占内存最大的照片,女生应该深有体会。对于相册里那些已经用不到的照片以及拍摄失败的“废片”,我们通常会选择将其一键删除。 但是如果在清理的过程中将一些重要的照片误删了该怎么办&a…

设计PCB时天线区域不想涂绿油怎么办?

摘要:本文以嘉立创EDA为例介绍一下如何将天线区域的绿油去掉。 设计制作带有PCB天线的电路板时,为了提升天线性能,最好是将天线金属部分裸露,不要盖上绿油。处理的方式有三种:第一种是将天线部分的一个小矩形区域开窗&…

【深蓝学院】手写VIO第6章--视觉前端--笔记

第5章相关内容,还是CSDN的传统Markdown编辑器好用。 视觉前段在14讲课程中已经讲过,这里再简单复习一下。 1. 前端工作的定性比较,分析 这一节讲了很多关于前端的方法框架的对比讨论,后面看完了相关的论文之后强烈建议再回来听一…

如何在Firefox中配置HTTP?

在浏览器中配置HTTP是一个常见的需求,它可以让我们轻松访问需要的网站或保护个人隐私。本文将为您详细介绍如何在Firefox浏览器中配置HTTP应用,帮助您实现无缝的HTTP体验。无论您是初次接触HTTP还是有一定经验的用户,本文都能为您提供实用的操…

ParCNetV2: Oversized Kernel with Enhanced Attention(超大的内核,增强了注意力)

贡献: 提出了超大卷积,用于CNN中长距离特征相互作用的有效建模。与ParCNetV1相比,它能够在所有空间位置上进行均匀卷积,同时消除了对额外位置编码的需求。提出了两个分叉门单元(空间BGU和通道BGU),它们是紧凑而强大的…

阿里云服务器计算型规格族18个实例规格性能特点和适用场景汇总

阿里云服务器ECS计算型规格族属于独享型云服务器,在高负载不会出现计算资源争夺现象,因为每一个vCPU都对应一个Intel Xeon 处理器核心的超线程,具有性能稳定且资源独享的特点。本文介绍阿里云服务器ECS计算型实例规格族18个具体实例规格的性…

力扣第113题 路径总和 || 树 深度优先搜索 回溯 二叉树

题目 113. 路径总和 II 中等 给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 叶子节点 是指没有子节点的节点。 示例 1: 输入:root [5,4,8,11,null,13,4,7,2,null,n…

Maven系列第3篇:详解maven解决依赖问题

maven系列目标:从入门开始开始掌握一个高级开发所需要的maven技能。 这是maven系列第3篇。 我们先来回顾一下什么是maven? maven是apache软件基金会组织维护的一款自动化构件工具,专注服务于java平台的项目构件和依赖管理。 本文主要内容…

高频时序数据仓库

天软课堂将在本周四添加新主题--天软超高频行情数据。针对市场上高频行情数据处理业务的相关痛点,直观的在线演示如何通过天软高频数仓及高性能计算能力,将其逐个击破,期待各位老师的参会。

不吹不黑,网络安全工程师年薪30万是真的吗?

近几年,网络安全愈演愈烈,很多人都开始重视网络安全,有些公司为了招聘网安人才主动给出去30万甚至更高的年薪,那么,今天就来说一下网络安全工程师的那些事,看看他们真的是有这么厉害吗?他们又凭…

如何处理前端路由?

聚沙成塔每天进步一点点 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发…

【Redis】Redis性能优化:理解与使用Redis Pipeline

原创不易,注重版权。转载请注明原作者和原文链接 文章目录 Pipeline介绍原生批命令(MSET, MGET) VS PipelinePipeline的优缺点一些疑问Pipeline代码实现 当我们谈论Redis数据处理和存储的优化方法时,「 Redis Pipeline」无疑是一个不能忽视的重要技术。…