草庐IT

fastjson-BCEL

全部标签

Fastjson反序列化

Fastjson简介Fastjson是Alibaba开发的Java语言编写的高性能JSON库,用于将数据在JSON和JavaObject之间互相转换,提供两个主要接口JSON.toJSONString和JSON.parseObject/JSON.parse来分别实现序列化和反序列化操作。漏洞原理这里没有细说fastjson发序列化的机制,总结起来就是以下内容:反序列化时JSON字符串@type的值指定了要将此JSON字符串实例化为什么对象,在此过程中fastjson调用了setter/getter,其中以get/set开头且满足一下条件都会被调用到:方法名称长度大于等于4非静态方法方法名以ge

错误提示“com.alibaba.fastjson.JSONException: exepct '[', but string, pos 4, json”解决

1、错误提示信息如下:com.alibaba.fastjson.JSONException:exepct'[',butstring,pos4,json:"[{"attrId":33,"attrName":"粗跟"},{"attrId":44,"attrName":"厚底"}]"atcom.alibaba.fastjson.parser.DefaultJSONParser.parseArray(DefaultJSONParser.java:672)atcom.alibaba.fastjson.parser.DefaultJSONParser.parseArray(DefaultJSONParse

错误提示“com.alibaba.fastjson.JSONException: exepct '[', but string, pos 4, json”解决

1、错误提示信息如下:com.alibaba.fastjson.JSONException:exepct'[',butstring,pos4,json:"[{"attrId":33,"attrName":"粗跟"},{"attrId":44,"attrName":"厚底"}]"atcom.alibaba.fastjson.parser.DefaultJSONParser.parseArray(DefaultJSONParser.java:672)atcom.alibaba.fastjson.parser.DefaultJSONParser.parseArray(DefaultJSONParse

Fastjson 代码执行 CVE-2022-25845

漏洞简介  Fastjson代码执行漏洞,该漏洞允许攻击者绕过Fastjson中的"AutoTypeCheck"机制并实现远程代码执行  影响版本:1.2.80及以下版本,即漏洞复现  我们利用idea创建maven项目搭建漏洞环境,在pom文件中添加dependency>  groupId>com.alibabagroupId>  artifactId>fastjsonartifactId>  version>1.2.82version>dependency>  创建文件夹 com.example.fastjson  在下面添加两个java文件packagecom.example.fastj

Fastjson 代码执行 CVE-2022-25845

漏洞简介  Fastjson代码执行漏洞,该漏洞允许攻击者绕过Fastjson中的"AutoTypeCheck"机制并实现远程代码执行  影响版本:1.2.80及以下版本,即漏洞复现  我们利用idea创建maven项目搭建漏洞环境,在pom文件中添加dependency>  groupId>com.alibabagroupId>  artifactId>fastjsonartifactId>  version>1.2.82version>dependency>  创建文件夹 com.example.fastjson  在下面添加两个java文件packagecom.example.fastj

JAVA_Fastjson

0x00前言Fastjson是Alibaba开发的Java语言编写的高性能JSON库,用于将数据在JSON和JavaObject之间互相转换。提供两个主要接口来分别实现序列化和反序列化操作。JSON.toJSONString将Java对象转换为json对象,序列化的过程。JSON.parseObject/JSON.parse将json对象重新变回Java对象;反序列化的过程所谓JOSN就可以简单的理解成一串有格式的字符串,然后既然它存在序列化和反序列化,那么中间代码会不会就出现问题呢,就是我们要研究的地方0x03代码demo0x01漏洞原理这里的话回去写一些demo就是fastjson的dem

JAVA_Fastjson

0x00前言Fastjson是Alibaba开发的Java语言编写的高性能JSON库,用于将数据在JSON和JavaObject之间互相转换。提供两个主要接口来分别实现序列化和反序列化操作。JSON.toJSONString将Java对象转换为json对象,序列化的过程。JSON.parseObject/JSON.parse将json对象重新变回Java对象;反序列化的过程所谓JOSN就可以简单的理解成一串有格式的字符串,然后既然它存在序列化和反序列化,那么中间代码会不会就出现问题呢,就是我们要研究的地方0x03代码demo0x01漏洞原理这里的话回去写一些demo就是fastjson的dem

fastjson绕过-2

前言这里的话就多介绍几种绕过的机制吧,然后原理的话就稍微分析一下,因为绕过的版本太多了,绕过的方法虽然有所不同但最终都是对代码的恶意解读嘛1.2.25绕过先看一下1.2.25这个版本是怎么修复这个漏洞的,简单点说就是增加了一个黑白名单。publicClasscheckAutoType(StringtypeName,ClassexpectClass){if(typeName==null){returnnull;}finalStringclassName=typeName.replace('$','.');//autoTypeSupport默认为False//当autoTypeSupport开启时

fastjson绕过-2

前言这里的话就多介绍几种绕过的机制吧,然后原理的话就稍微分析一下,因为绕过的版本太多了,绕过的方法虽然有所不同但最终都是对代码的恶意解读嘛1.2.25绕过先看一下1.2.25这个版本是怎么修复这个漏洞的,简单点说就是增加了一个黑白名单。publicClasscheckAutoType(StringtypeName,ClassexpectClass){if(typeName==null){returnnull;}finalStringclassName=typeName.replace('$','.');//autoTypeSupport默认为False//当autoTypeSupport开启时

fastjson不出网代码利用

只是做个记录Evil.javaimportjava.io.File;importjava.io.FileNotFoundException;importjava.io.FileOutputStream;importjava.io.IOException;publicclassEvil{//static{//try{//Runtime.getRuntime().exec("calc.exe");//}catch(Exceptione){//e.printStackTrace();//}//}static{//win系统Stringpath="D:\\hello.txt";Filefile=new