zl程序教程

序列化流

  • Fastjson-1.2.47反序列化漏洞复现

    Fastjson-1.2.47反序列化漏洞复现

    Fastjson-1.2.47反序列化漏洞复现提前准备:1、使用vulhub来启动环境2、VPS1:查看Java版本[root@clean-post-1 ~]# java -version openjdk version "1.8.0_262" OpenJDK Runtime Environment (build 1.8.0_262-b10)3、VPS2:nc -lvvp 1

    日期 2023-06-12 10:48:40     
  • Lambda序列化支持debugger

    Lambda序列化支持debugger

    这世界是如此喧哗,让沉默的人显得有点傻。——李宗盛也是写了好几天,成果如图代码仓库:https://gitee.com/VampireAchao/stream-query

    日期 2023-06-12 10:48:40     
  • 高效序列化工具Protobuf总结

    高效序列化工具Protobuf总结

    1.Protobuf简介Protocol Buffers定义: Protocol Buffers是Google公司开发的一种数据描述语言,类似于XML能够将结构化数据序列化,可用于数据存储、通信协议等方面。它不依赖于语言和平台并且可拓展性极强。2.Protobuf优点同XML相比,Protocol buffers在序列化结构化数据方面有许多优点: *1.更简单 *2.数据描述文件

    日期 2023-06-12 10:48:40     
  • Flask 学习-36.Flask-RESTful 序列化输出对象

    Flask 学习-36.Flask-RESTful 序列化输出对象

    前言Flask-RESTful 提供了一种简单的方法来控制您在响应中实际呈现的数据。使用该fields模块,您可以在资源中使用所需的任何对象(ORM 模型/自定义类/等)。 fields还允许您格式化和过滤响应,因此您不必担心暴露内部数据结构。基本用法user 表的字段设计如下class Users(db.Model): __tablename__ = 'user'

    日期 2023-06-12 10:48:40     
  • 序列化和反序列化的简单理解[通俗易懂]

    序列化和反序列化的简单理解[通俗易懂]

    大家好,又见面了,我是你们的朋友全栈君。 一、序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化;把字节序列恢复为对象的过程称为对象的反序列化。 对象的序列化主要有两种用途: 1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中; 2) 在网络上传送对象的字节序列。 在很多应用中,需要对某些对象进行序列化,让它们离开内存空间,入住物理硬盘,以便长期保存。比如最常见的是We

    日期 2023-06-12 10:48:40     
  • CVE-2019-12086:jackson 反序列化读取文件

    CVE-2019-12086:jackson 反序列化读取文件

    影响范围Jackson 2.x系列 < 2.9.9漏洞类型反序列化导致任意文件读取利用条件开启Default Typing 目标环境中存在8.0.14版本以下的MySQL驱动,即mysql-connector-java版本 < 8.0.14 漏洞概述在开启DefaultTyping的情况下,jackson在反序列化json时,可以指定反序列化类,且可以指定一个基础类型的值作为这个类的构

    日期 2023-06-12 10:48:40     
  • Java基础之序列化对象Serialized

    Java基础之序列化对象Serialized

    大家好,又见面了,我是你们的朋友全栈君。 文章目录序列化对象Serialized目的:序列化类型应用场景代码案例直接应用自定义对象序列化序列化对象Serialized目的:序列化机制允许将实现序列化的Java对象转换成字节序列 ,这些字节序列可以被保存在磁盘上,或者通过网络传输,以备以后重新恢复成原来的对象.序列化类型对象的序列化(serialize)指将一个Java对象写入IO流中对象的反序

    日期 2023-06-12 10:48:40     
  • Django(44)drf序列化源码分析「建议收藏」

    Django(44)drf序列化源码分析「建议收藏」

    大家好,又见面了,我是你们的朋友全栈君。序列化与反序列化  一般后端数据返回给前端的数据格式都是json格式,简单易懂,但是我们使用的语言本身并不是json格式,像我们使用的Python如果直接返回给前端,前端用的javascript语言是识别不出的,所以我们需要把python语言转换为通用的json格式的数据,在django中就是将orm模型或者queryset对象转换成字典,再由字典转换成js

    日期 2023-06-12 10:48:40     
  • axios 1.x 0.27 请求参数数组序列化

    axios 1.x 0.27 请求参数数组序列化

    axios从0.27升级到1.x版本后不再依赖qs,请求参数序列化方式有所变化方式1 括号(默认)用括号标识数组参数效果 http://url?myParam[]=1&myParam[]=2&myParam[]=3 1.x版本代码axios.get('http://url',{ params: { myParam: [1,2,3] }, par

    日期 2023-06-12 10:48:40     
  • Redis指定自定义对象序列化

    Redis指定自定义对象序列化

    需求: 替换redisTemplate中的默认序列化方式,可以不用强转得到指定对象修改RedisConfig中的redistemplate@bean @Bean(name = "stuRedisTemplate") public RedisTemplate<String, Student> stuRedisTemplate(RedisConnectio

    日期 2023-06-12 10:48:40     
  • 【说站】Java序列化是什么

    【说站】Java序列化是什么

    Java序列化是什么概念把Java对象转换为字节序列的过程。作用序列化的主要用途是在传递和保存物体时,确保物体的完整性和可传递性。序列化是将物体转换成有序的字节流,以便在网络上传输或保存在本地文件中。其核心作用是保存和重建目标状态。实例package constxiong.interview;   import java.io.FileInputStream; import java.io.Fil

    日期 2023-06-12 10:48:40     
  • 华为云高级大牛分享网络通信系统集成服务集成交互技术序列化方式

    华为云高级大牛分享网络通信系统集成服务集成交互技术序列化方式

    本文就给大家讲解系统集成服务集成交互技术:序列化方式;序列化方式序列化是进程间在网络上进行数据交互所使用的消息格式。为了更好地理解序列化的概念,我们先从网络通信讲起。我们知道现在的网络通信技术大部分都是基于TCP/IP来实现的,下图展示的是网络上两台机器(发送端、接收端)之间通信的过程。可以看出,序列化就是将对象转换为二进制形式(字节数组),一般也将序列化称为编码(Encode),主要用于网络传输

    日期 2023-06-12 10:48:40     
  • Java 之 Serializable 序列化和反序列化的概念,作用的通俗易懂的解释[通俗易懂]

    Java 之 Serializable 序列化和反序列化的概念,作用的通俗易懂的解释[通俗易懂]

    大家好,又见面了,我是你们的朋友全栈君。遇到这个 Java Serializable 序列化这个接口,我们可能会有如下的问题 a,什么叫序列化和反序列化 b,作用。为啥要实现这个 Serializable 接口,也就是为啥要序列化 c,serialVersionUID 这个的值到底是在怎么设置的,有什么用。有的是1L,有的是一长串数字,迷惑ing。 我刚刚见到这个关键字 Serializab

    日期 2023-06-12 10:48:40     
  • PHP反序列化漏洞

    PHP反序列化漏洞

    0x001 漏洞产生原理  在反序列化的过程中自动触发了某些魔术方法。未对用户输入的序列化字符串进行检测,导致攻击者可以控制反序列化过程,从而导致XSS、代码执行、文件写入、文件读取等不可控后果。0x002 漏洞触发条件  一般只能通过代码审计的方式挖掘该漏洞,寻找代码中unserialize()函数的变量可控,且PHP文件代码中存在可利用的类,同时类中具有魔术方法。0x003 PHP魔术方法__

    日期 2023-06-12 10:48:40     
  • Apereo CAS 4.1 反序列化漏洞复现

    Apereo CAS 4.1 反序列化漏洞复现

    0x01 漏洞简介Apereo CAS 是一款Apereo发布的集中认证服务平台,常被用于企业内部单点登录系统。其4.1.7版本之前存在一处默认密钥的问题,利用这个默认密钥我们可以构造恶意信息触发目标反序列化漏洞,进而执行任意命令。影响版本 Apereo CAS <= 4.1.70x02 环境准备使用vulhub复现漏洞环境。vulhub官网地址:https://vulhub.orgcd v

    日期 2023-06-12 10:48:40     
  • 【Java】序列化与反序列化

    【Java】序列化与反序列化

    1. 对象的序列化机制是什么?对象序列化机制允许把内存中的Java对象转化成语平台无关的二进制流,从而允许把这种二进制流持久的保存在磁盘上,或通过网络将这种二进制流传输到另一个网络节点。当其他程序获取了这种二进制流,就可以恢复成原来的Java对象。2. Java自定义类序列化要求:自定义类需要实现接口:Serializable(标识接口:无任何属性或抽象方法),否则会报NotSerializabl

    日期 2023-06-12 10:48:40     
  • FastJson反序列化漏洞修复

    FastJson反序列化漏洞修复

    最近收到渗透测试报告,发现我们系统存在 fastjson 反序列化高危漏洞,排查问题排查发现我们 fastjson 的版本在此前已经升级到 1.2.83 版本了,决定测试复现看看,先访问 http://dnslog.cn/点击 Get SubDomain打开 PostmanPayload{"x":{"@type":"java.net.InetSoc

    日期 2023-06-12 10:48:40     
  • Django Ajax序列化与反序列化

    Django Ajax序列化与反序列化

    序列化与反序列是最常用的功能,有时我们需要将一个表单组打包成Json格式等然后再提交给服务端,这样可以提高效率节约带框,如下是Django配合Ajax实现的序列化与反序列化,文件上传等操作。Ajax序列化与反序列化: 前端Ajax通过序列化发送JSON数据,后端通过反序列化接收数据并处理数据.<!-- name: index.html --> <div> <p

    日期 2023-06-12 10:48:40     
  • c 线程安全的单例模式-单例模式(6大类):如何保证线程安全?反射安全?序列化安全?

    c 线程安全的单例模式-单例模式(6大类):如何保证线程安全?反射安全?序列化安全?

      一、前言 单例模式属于创建型模式,保证了单例类在系统中仅存在一个实例。能够避免频繁创建某个对象,在一定程度上可以减少内存占用。  本文会讲解单例类的多种实现种类,并从源码层面说明保证线程安全、反射安全与序列化安全的措施。  二、单例模式的实现种类饿汉式   public class Singleton { private static Singleton insta

    日期 2023-06-12 10:48:40     
  • CVE-2019-2725 Weblogic 反序列化漏洞

    CVE-2019-2725 Weblogic 反序列化漏洞

    漏洞简介事项描述漏洞概述wls9-async等组件为WebLogic Server提供异步通讯服务,默认应用于WebLogic部分版本。由于该WAR包在反序列化处理输入信息时存在缺陷,攻击者通过发送精心构造的恶意 HTTP 请求,即可获得目标服务器的权限,在未授权的情况下远程执行命令。影响范围10.3.6.0.0 12.1.3.0.0漏洞编号CVE-2019-2725漏洞搭建这里使用vulfocu

    日期 2023-06-12 10:48:40     
  • 带你走进PHP session反序列化漏洞

    带你走进PHP session反序列化漏洞

    目录目录带你走进PHP session反序列化漏洞0x01 写在前面0x02 什么是 php session0x03 PHP Session 的工作流程0x04 PHP session 在 php.ini 中的配置0x05 PHP session 的存储机制php 处理器php_binary处理器php_serialize 处理器0x06 php bug #711010x07 实例说明 PHP s

    日期 2023-06-12 10:48:40     
  • 序列化流程分析总结

    序列化流程分析总结

    目录目录0x01 写在前面0x02 流程分析0x03 总结0x04 参考0x01 写在前面本文写的比较细,推荐复制demo代码,然后一步一步跟随笔者的分析进行debug调试跟随,这样跟能够帮助读者理解此文。0x02 流程分析所谓的序列化即是一个将对象写入到IO流中的过程。序列化的步骤通常是首先创建一个ObjectOutputStream输出流,然后调用ObjectOutputStream对象的wr

    日期 2023-06-12 10:48:40     
  • 用一个 case 去理解 jdk8u20 原生反序列化漏洞

    用一个 case 去理解 jdk8u20 原生反序列化漏洞

    0x01 写在前面jdk8u20原生反序列化漏洞是一个非常经典的漏洞,也是我分析过最复杂的漏洞之一。在这个漏洞里利用了大量的底层的基础知识,同时也要求读者对反序列化的流程、序列化的数据结构有一定的了解本文结合笔者自身对该漏洞的了解,写下此文,如有描述不当或者错误之处,还望各位师傅指出0x02 jdk8u20 漏洞原理jdk8u20其实是对jdk7u21漏洞的绕过,在《JDK7u21反序列化漏洞分析

    日期 2023-06-12 10:48:40     
  • Redis 可视化软件乱码问题(Java序列化重置)

    Redis 可视化软件乱码问题(Java序列化重置)

    , 28 4月 2022作者 847954981@qq.com后端学习Redis 可视化软件乱码问题(Java序列化重置)Redis有许多可视化软件,但直接使用这些软件来查看Redis会发现是一堆乱码。原因是Redis是独立软件,并且不是Java开发的,所以Java程序存入Redis数据时,会把数据序列化。而Java默认的序列化方式,是把内容编程字节码,计算机能识别,但人就识别不了,看起来像乱

    日期 2023-06-12 10:48:40     
  • 靶场攻略 | php反序列化靶机实战

    靶场攻略 | php反序列化靶机实战

    本文作者:eth10(贝塔安全实验室-核心成员)0x01:靶机下载地址 https://www.vulnhub.com/entry/serial-1,349/,如何搭建靶机,请自行百度! 0x02:存活扫描请输入ip:192.168.25.0/24 请输入线程数(默认1000):255 192.168.25.1 192.168.25.139复制0x03:端口扫描请输入IP:192.168.25.1

    日期 2023-06-12 10:48:40     
  • 第138期:flutter中的json和序列化

    第138期:flutter中的json和序列化

    很难想象一款移动应用程序不需要与web服务器通信,也不需要存储结构化数据。在开发一款网络连接的应用程序时,它迟早会需要使用一些JSON。这里简单介绍一下JSON在flutter中的使用。Tips:编码和序列化是将数据结构转换为字符串的同一件事。解码和反序列化是将字符串转换为数据结构的相反过程。然而,序列化通常也指将数据结构转换为更易于阅读的格式的整个过程。哪种JSON序列化方法适合这里主要简单介绍

    日期 2023-06-12 10:48:40     
  • 干货 | 能看懂的PHP反序列化字符逃逸漏洞

    干货 | 能看懂的PHP反序列化字符逃逸漏洞

    1免责声明 本公众号提供的工具、教程、学习路线、精品文章均为原创或互联网收集,旨在提高网络安全技术水平为目的,只做技术研究,谨遵守国家相关法律法规,请勿用于违法用途,如果您对文章内容有疑问,可以尝试加入交流群讨论或留言私信,如有侵权请联系小编处理。2内容速览1、引子在php中,反序列化的过程中必须严格按照序列化规则才能成功实现反序列化,例如<?php $str = "a:2:

    日期 2023-06-12 10:48:40     
  • RPC的序列化方案详解

    RPC的序列化方案详解

    1 为什么需要序列化?网络传输的数据须是二进制数据,但调用方请求的出入参数都是对象: 对象不能直接在网络传输,需提前转成可传输的二进制,且要求可逆,即“序列化” 将对象转换成二进制数据 这时,服务提供方就能正确从二进制数据中分割出不同请求,同时根据请求类型和序列化类型,把二进制的消息体逆向还原成请求对象,即“反序列化” 将二进制转换为对象 RPC框架为何需要序列化?回想RPC通信流程:2

    日期 2023-06-12 10:48:40     
  • 从分布式到微服务:深入理解网络,网络传输中的对象序列化问题

    从分布式到微服务:深入理解网络,网络传输中的对象序列化问题

    网络传输中的对象序列化问题仅仅懂了Socket编程还不够,因为我们不是简单地写一个发送字符串的Hello World程序,需要实现复杂的对象实例传输,因此,如何将一个对象实例编码成为高效的二进制数据报文传输到对端,并且正确地“还原”出来,就是一个专业的技术问题了。对象序列化技术是Java本身的重要底层机制之一,因为Java一开始就是面向网络的,远程方法调用(RPC)是必不可少的,需要方便地将一个对

    日期 2023-06-12 10:48:40     
  • Android 反序列化漏洞攻防史话

    Android 反序列化漏洞攻防史话

    Java 在历史上出现过许多反序列化的漏洞,但大部分出自 J2EE 的组件。即便是 FastJSON 这种漏洞,似乎也很少看到在 Android 中被实际的触发和利用。本文即为对历史上曾出现过的 Android Java 反序列化漏洞的分析和研究记录。序列化和反序列化是指将内存数据结构转换为字节流,通过网络传输或者保存到磁盘,然后再将字节流恢复为内存对象的过程。在 Web 安全领域,出现过很多反序

    日期 2023-06-12 10:48:40     
  • 【Android Protobuf 序列化】Protobuf 使用 ( protobuf-gradle-plugin 插件简介 | Android Studio 中配置插件 | AS 中编译源文件 )

    【Android Protobuf 序列化】Protobuf 使用 ( protobuf-gradle-plugin 插件简介 | Android Studio 中配置插件 | AS 中编译源文件 )

    文章目录一、protobuf-gradle-plugin 插件简介二、Android Studio 中配置 protobuf-gradle-plugin 插件三、Android Studio 中编译 Protobuf 源文件四、参考资料一、protobuf-gradle-plugin 插件简介上一篇博客 【Android Protobuf 序列化】Protobuf 使用 ( protoc 编译器简

    日期 2023-06-12 10:48:40