47、WEB攻防——通用漏洞Java反序列化EXP生成数据提取组件安全

文章目录

序列化和反序列化的概念:

  • 序列化:把java对象转换成字节流的过程;
  • 反序列化:把字节流恢复为java对象的过程。

对象的序列化主要有两种用途:

  1. 把对象的字节流永久的保存在硬盘上,通常存放在一个文件中(持久化对象);
  2. 在网络上传送对象的字节流(网络传输对象)。

序列化数据:

  • 功能特性
    反序列化操作一般应用在导入模板文件、网络通信、数据传输、日志格式化存储或DB存储等业务场景,因此审计中重点关注这些功能板块。
  • 数据特性
    一般数据以rO0AB开头,基本上可以确定这串就是JAVA反序列化base64加密的数据;如果aced(16进制)开头,那么它就是一段java序列化的16进制数据。
  • 序列化可能出现
    http参数、cookie、session、存储方式可能是base64(rO0),压缩后的base64(H4s),MLL等;
    Serverts http、Sockets、Session管理器,包含的协议包括:JMX、RMI、JMS、JND1等

发现
黑盒分析:数据库出现地——观察数据特性
白盒分析:组件安全&函数搜索&功能模块

序列化函数API:

  • JAVA:serializableExtemailzablefastjsonjacksongsonObjectInputStream.readObjectObjectInputStream.readUnshared等;
  • PHP:serialize()unserialize()
  • Python:pickle

生成java反序列化payload工具-ysoserial
使用ysoserial时,若要根据某个外部包生成payload,可以将该包复制到ysoserial目录下,确保paylaod的生成更加可靠。
ysoserial最终生成的payload是aced(16进制)的字节流,若需要编码应该进一步进行编码。

swagger接口:swagger-ui.html

JAVA反序列化解密工具:SerializationDumper
java特定组件:shirojboos

网鼎杯朱雀组2020 Think java

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

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

相关文章

网络分析工具简介及汇总

文章目录 一、网络分析工具软件是什么二、网络分析工具软件作用三、常见的网络分析工具 一、网络分析工具软件是什么 网络分析工具软件是一种用于捕获、分析和解释网络数据包的工具。它们可以直接从网络接口上捕获数据包,并提供详细的信息和统计数据,以帮…

xss.haozi.me:0x0B

<svg><script>(1)</script>

洛谷 B3620 x 进制转 10 进制

题目描述 给一个小整数 x 和一个 x 进制的数 S。将 S 转为 10 进制数。对于超过十进制的数码&#xff0c;用 A&#xff0c;B&#xff0c;…… 表示。 输入格式 第一行一个整数 x; 第二行一个字符串 S。 输出格式 输出仅包含一个整数&#xff0c;表示答案。 输入输出样例…

【JavaScript】面试手撕浅拷贝

【JavaScript】面试手撕浅拷贝 引入 浅拷贝和深拷贝应该是面试时非常常见的问题了&#xff0c;为了能将这两者说清楚&#xff0c;于是打算用两篇文章分别解释下深浅拷贝。 PS: 我第一次听到拷贝这个词&#xff0c;有种莫名的熟悉感&#xff0c;感觉跟某个英文很相似&#xff…

Linux文本处理三剑客:awk(内置函数详解笔记)

Linux系统中&#xff0c;AWK 是一个非常强大的文本处理工具&#xff0c;它的内置函数使得对文本数据进行处理更加高效和便捷。 本文将介绍 AWK 内置函数的几种主要类型&#xff1a; 算数函数字符串函数时间函数位操作函数其他常用函数 我们将使用一个示例文本文件来演示这些函…

局域网如何搭建服务器?

随着网络的普及和应用场景的不断拓展&#xff0c;局域网搭建服务器逐渐成为大家关注的话题。在日常生活和工作中&#xff0c;我们经常需要通过局域网和互联网进行文件共享、资源访问等操作&#xff0c;而搭建服务器则是实现这些功能的重要手段之一。本文将针对局域网搭建服务器…

SwiftUI 如何在运行时从底层动态获取任何 NSObject 对象实例

概览 众所周知,SwiftUI 的推出极大地方便了我们这些秃头码农们搭建 App 界面。不过,有时我们仍然需要和底层的 UIKit 对象打交道。比如:用 SwiftUI 未暴露出对象的接口改变视图的行为或外观。 从上图可以看到,我们 SwiftUI 代码并没有设置视图的背景色,那么它是怎么变成绿…

vscode 本地/远程添加python解释器

文章目录 1. 背景2. 增加python解释器 1. 背景 我们在使用 vscode 去远程调试代码时&#xff0c;如果环境存在多个 Python 版本&#xff08;如用 conda 管理&#xff09;&#xff0c;没有选择正确的 Python 解释器会导致少包、库不适配等各种问题 2. 增加python解释器 windo…

鸿蒙系统适配的流程

鸿蒙系统适配的流程通常涉及以下关键步骤&#xff0c;以下是鸿蒙系统适配的一般流程&#xff0c;具体流程可能会根据项目的具体需求和开发团队的情况进行调整和优化。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎交流合作。 1. 准备工作&#…

超越脆弱:用否定法策略优化考研复试准备

很多情况下,你的想象力会为当前的世界添加一些东西。很抱歉,我会在本章中告诉你,这种方法完全是落后的方法:根据脆弱性和反脆弱性的概念,严格来说,正确的想象就是从未来中排除或削减不属于未来的东西,采用否定法,脆弱的事物终将破碎。——《反脆弱:从不确定性中获益》…

盘点:国家智能算力中心

文章目录 1. Main2. My thoughtsReference 1. Main 按照《中国算力白皮书&#xff08;2022年&#xff09;》的定义&#xff0c;算力主要分为四部分&#xff1a;通用算力、智能算力、超算算力、边缘算力。通用算力以CPU芯片输出的计算能力为主&#xff1b;智能算力以GPU、FPGA、…

【一起学习Arcade】(6):属性规则实例_约束规则和验证规则

一、约束规则 约束规则用于指定要素上允许的属性配置和一般关系。 与计算规则不同&#xff0c;约束规则不用于填充属性&#xff0c;而是用于确保要素满足特定条件。 简单理解&#xff0c;约束规则就是约束你的编辑操作在什么情况下可执行。 如果出现不符合规则的操作&#…

CGI中使用Cookie

文章目录 CGI中使用Cookiecookie的语法设置Cookie获取Cookie检索Cookie信息文件上传实例1. 创建HTML表单2. 编写Python脚本处理上传 文件下载对话框 CGI中使用Cookie 在CGI&#xff08;Common Gateway Interface&#xff09;中使用Cookie涉及设置和获取由Web服务器发送到浏览器…

java导出多个xml文件的压缩zip

代码&#xff1a; // 设置响应头response.setCharacterEncoding("UTF-8");//设置响应的字符编码为UTF-8response.setContentType("application/octet-stream");//设置响应的内容类型为二进制流&#xff0c;通常用于文件下载。response.setHeader("Con…

解释一下前端框架中的虚拟DOM(virtual DOM)和实际DOM(real DOM)之间的关系。

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

leetcode日记(36)全排列

想思路想了很久……思路对了应该会很好做。 我的思路是这样的&#xff1a;只变化前n个数字&#xff0c;不断增加n&#xff0c;由2到nums.size()&#xff0c;使用递归直到得到所有结果 代码如下&#xff1a; class Solution { public:vector<vector<int>> permut…

正信法律:借款纠纷的民事起诉状怎么写

在借款纠纷中&#xff0c;当协商无果时&#xff0c;诉诸法律成为债权人追回债务的有效途径。而民事起诉状作为启动诉讼程序的法律文书&#xff0c;其撰写质量直接关系到案件的受理与判决。本文旨在简明扼要地阐述如何撰写一份规范的借款纠纷民事起诉状。 起诉状需包含以下几个关…

阿克曼转向车型导航末段位姿调整控制

1目标 分析RPP算法时控制器算法学习1-RPP受控纯追踪算法发现,在终点时如果角度还有较大偏差,该算法无法进行很好的调整,故开始尝试在末端接近目标点时,用自己的控制算法去调整位姿,姑且命名为TEA算法(Target-End-Adjust Algorithm for Ackermann) 2控制思路 step1. 将…

【百度】B端数据中台组_大数据研发工程师(J68899)

北京市技术3人2023-12-14 工作职责&#xff1a; 负责百家号和Feed相关大数据的基础建设负责数仓引擎、Spark底层的优化和基础建设为百度系APP相关业务分析及策略优化提供大数据支持参与百度系APP日志数据架构开发和APP端性能分析平台建设 职责要求&#xff1a; 本科及以上学…

C# Onnx segment-anything 分割万物 一键抠图

目录 介绍 效果 模型信息 sam_vit_b_decoder.onnx sam_vit_b_encoder.onnx 项目 代码 下载 C# Onnx segment-anything 分割万物 一键抠图 介绍 github地址&#xff1a;https://github.com/facebookresearch/segment-anything The repository provides code for runn…