Apacheb Shiro 1.2.4反序列化漏洞(CVE-2016-4437)

2023-10-14 17:36

本文主要是介绍Apacheb Shiro 1.2.4反序列化漏洞(CVE-2016-4437),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Apache Shiro 1.2.4反序列化漏洞(CVE-2016-4437)

1 在线漏洞解读:

https://vulhub.org/#/environments/shiro/CVE-2016-4437/

在这里插入图片描述

2 环境搭建

cd  /home/kali/vulhub/shiro/CVE-2016-4437

在这里插入图片描述

启动:

sudo docker-compose up -d # 拉取下载并启动sudo docker-compose ps -a
sudo docker ps -a  # 查看启动docker服务sudo docker-compose down # 关闭镜像

已启动:访问端口8080

在这里插入图片描述

3 影响版本:

​ Apache Shiro <= 1.2.4

4 漏洞复现

4.1 访问页面

​ 访问页面http://192.168.225.166:8080/,可使用admin:vulhub进行登录。

在这里插入图片描述

在这里插入图片描述

调用登录接口后,抓包返回 rememberMe=deleteMe,判定为shiro组件

在这里插入图片描述

4.2 登录成功后

客户端在点击remember me的时候,服务器会生成一个cookie,cookie采取banse64以及aes的加密手段,在存在漏洞的shiro版本,aes的加密存在默认的密钥

Set-Cookie: rememberMe=MbSpSgKJOVRY212PgFafGEHGlMuuVFk9Tt1B3MMNwlzeyhoTAPaS7VQgDErcrOA690tWC/E5BHQVwNGYdTYxvsax983ffSAnpzJCv0G4geDksalbn5OkzKEkIT1y9l9OElRf2M3oMeWWvhiE/xrkjJmg845bfafZgno6NCYA/RHL5Mkp+rBMYlt3kmV2aM/yGjHLSX4Z4KHHINarDu2hhygPHraguxLQUkG1kG8OK63ldOOV+0Q92AvyWkvMtQYFpUMJgejunxigQkVpLmUm+f9SIuXNhDYSfDe3f7S+svMZ2/YjWlmv8f9iWcinnxEbxKs5ulo6GwNlnoqffpg9IbImVUuskMKFvQrOCUEw7w7nOVvsR4BcqsCpvWgYZrUqxQuc6gDkDS3tOuF5Twx8ZKOPZrMJOf3JdAGbGiyZ73f3YY7Bz2MQQUDjTC6ZdZvSmT9/mCgkZ/xBjCnd4U4gImq7W8hWxSowcC7g2w+sH0OlCRk+WbShL/bc6QeRxsdJzPkixiUNEqLjAZVUFbGMCg==
4.2 poc漏洞验证及利用

使用反序列化漏洞利用工具

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这篇关于Apacheb Shiro 1.2.4反序列化漏洞(CVE-2016-4437)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


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

相关文章

Python中文件读取操作漏洞深度解析与防护指南

《Python中文件读取操作漏洞深度解析与防护指南》在Web应用开发中,文件操作是最基础也最危险的功能之一,这篇文章将全面剖析Python环境中常见的文件读取漏洞类型,成因及防护方案,感兴趣的小伙伴可... 目录引言一、静态资源处理中的路径穿越漏洞1.1 典型漏洞场景1.2 os.path.join()的陷

SpringBoot实现Kafka动态反序列化的完整代码

《SpringBoot实现Kafka动态反序列化的完整代码》在分布式系统中,Kafka作为高吞吐量的消息队列,常常需要处理来自不同主题(Topic)的异构数据,不同的业务场景可能要求对同一消费者组内的... 目录引言一、问题背景1.1 动态反序列化的需求1.2 常见问题二、动态反序列化的核心方案2.1 ht

SpringBoot项目中Redis存储Session对象序列化处理

《SpringBoot项目中Redis存储Session对象序列化处理》在SpringBoot项目中使用Redis存储Session时,对象的序列化和反序列化是关键步骤,下面我们就来讲讲如何在Spri... 目录一、为什么需要序列化处理二、Spring Boot 集成 Redis 存储 Session2.1

Java controller接口出入参时间序列化转换操作方法(两种)

《Javacontroller接口出入参时间序列化转换操作方法(两种)》:本文主要介绍Javacontroller接口出入参时间序列化转换操作方法,本文给大家列举两种简单方法,感兴趣的朋友一起看... 目录方式一、使用注解方式二、统一配置场景:在controller编写的接口,在前后端交互过程中一般都会涉及

C++如何通过Qt反射机制实现数据类序列化

《C++如何通过Qt反射机制实现数据类序列化》在C++工程中经常需要使用数据类,并对数据类进行存储、打印、调试等操作,所以本文就来聊聊C++如何通过Qt反射机制实现数据类序列化吧... 目录设计预期设计思路代码实现使用方法在 C++ 工程中经常需要使用数据类,并对数据类进行存储、打印、调试等操作。由于数据类

如何配置Spring Boot中的Jackson序列化

《如何配置SpringBoot中的Jackson序列化》在开发基于SpringBoot的应用程序时,Jackson是默认的JSON序列化和反序列化工具,本文将详细介绍如何在SpringBoot中配置... 目录配置Spring Boot中的Jackson序列化1. 为什么需要自定义Jackson配置?2.

Django序列化中SerializerMethodField的使用详解

《Django序列化中SerializerMethodField的使用详解》:本文主要介绍Django序列化中SerializerMethodField的使用,具有很好的参考价值,希望对大家有所帮... 目录SerializerMethodField的基本概念使用SerializerMethodField的

Jackson库进行JSON 序列化时遇到了无限递归(Infinite Recursion)的问题及解决方案

《Jackson库进行JSON序列化时遇到了无限递归(InfiniteRecursion)的问题及解决方案》使用Jackson库进行JSON序列化时遇到了无限递归(InfiniteRecursi... 目录解决方案‌1. 使用 @jsonIgnore 忽略一个方向的引用2. 使用 @JsonManagedR

SQL注入漏洞扫描之sqlmap详解

《SQL注入漏洞扫描之sqlmap详解》SQLMap是一款自动执行SQL注入的审计工具,支持多种SQL注入技术,包括布尔型盲注、时间型盲注、报错型注入、联合查询注入和堆叠查询注入... 目录what支持类型how---less-1为例1.检测网站是否存在sql注入漏洞的注入点2.列举可用数据库3.列举数据库

Java中JSON字符串反序列化(动态泛型)

《Java中JSON字符串反序列化(动态泛型)》文章讨论了在定时任务中使用反射调用目标对象时处理动态参数的问题,通过将方法参数存储为JSON字符串并进行反序列化,可以实现动态调用,然而,这种方式容易导... 需求:定时任务扫描,反射调用目标对象,但是,方法的传参不是固定的。方案一:将方法参数存成jsON字