首页 > 其他分享 >FastJson反序列化漏洞利用和扫描探测工具-实战

FastJson反序列化漏洞利用和扫描探测工具-实战

时间:2024-04-12 21:22:07浏览次数:22  
标签:FastJson txt -- 检测 xxx JsonExp 漏洞 LDAP 序列化

一、简介

fastjson漏洞批量检测工具,根据现有payload,检测目标是否存在fastjson或jackson漏洞(工具仅用于检测漏洞),若存在漏洞,可根据对应payload进行后渗透利用,若出现新的漏洞时,可将最新的payload新增至txt中(需修改格式),工具完全替代手工检测,作为辅助工具使用。

二、LDAP检测环境搭建

将JNDIExploit-1.4-SNAPSHOT.jar文件拷贝到到指定的服务器

执行命令:

java -jar JNDIExploit-1.4-SNAPSHOT.jar -i 0.0.0.0 -l 8091 -p 8092

将域名换成IP:端口即可(上图中使用的是8091作为LDAP服务端口)    备注:服务器端口需要开启外网访问权限 

 服务启动成功

三、下载FastJson反序列化检测工具,我这里是解压到windos本地

命令使用介绍:

参数别名作用例子
-u --url 指定目标url -u http://www.test.com
-uf --urlfile 指定目标url文档,每行一个url -uf url.txt
-req --request 指定请求包 -req request.txt
-to --timeout 指定请求超时时长,默认为5秒 -to 8
-f --file 指定payload文本路径,默认为template/fastjson.txt -f payload.txt
-t --type 指定HTTP请求类型,默认为post -t get
-l --ldap 指定ldap地址 -l xxx.xxx.xxx:8080
-r --rmi 指定rmi地址 -r xxx.xxx.xxx:8080
-c --cookie 指定cookie值 --cookie "name=xxx;sessionid=xxxxx"
-pro --protocol 指定请求包所使用的协议,需结合-req参数使用,默认为http协议 -req request.txt -pro https
-proxy --proxy 设置代理 --proxy http://127.0.0.1:8080
-dnslog --dnslog 是否申请dnslog进行检测,默认为false(此功能需挂全局代理) --dnslog true

windows系统:

在JsonExp.exe目录打开cmd界面

检测单个站点:
JsonExp -u [目标] -l [LDAP服务地址]

根据请求包检测单个站点:
JsonExp -req [目标.txt] -l [LDAP服务地址]

根据文本检测多个站点:
JsonExp -uf [目标.txt] -l [LDAP服务地址]

Linux系统:

添加权限:
chmod +x JsonExp_linux

检测单个站点:
./JsonExp_linux -u [目标] -l [LDAP服务地址]

根据请求包检测单个站点:
./JsonExp_linux -req [目标.txt] -l [LDAP服务地址]

根据文本检测多个站点:
./JsonExp_linux -uf [目标.txt] -l [LDAP服务地址]

这里演示windos使用操作:

以下是提前构建好的fastjion漏洞靶场:

 -u 域名扫描:

JsonExp.exe -l 14.116.152.57:8091 -u http://14.116.152.57:8090/

 扫描完成后:

 此时去检查LDAP服务是否有报错:

 查看报告:

 如果实在不懂报错什么意思,可以让gpt翻译一下:

 到此FastJson反序列化漏洞检测复现成功

备注:

检测txt文件示例:

文件格式示例:

 

 

 

 

  

  

 

标签:FastJson,txt,--,检测,xxx,JsonExp,漏洞,LDAP,序列化
From: https://www.cnblogs.com/xfbk/p/18132149

相关文章

  • java代码审计-反序列化
    Java代码审计-反序列化0x00漏洞挖掘业务代码简单来说,找readObject/readUnshared就好了protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{StringbaseStr=request.getParameter("str");b......
  • JackSon反序列化通杀
    前言Springboot一般都会自带JackSon这个依赖包,JackSon跟Fastjson有相同的功效简单复现packagecom.example.jakeson.demo;importjava.io.IOException;importjava.io.Serializable;publicclassUserimplementsSerializable{publicUser(){}publicOb......
  • 从CVE复现看栈溢出漏洞利用
    最近复现了两个栈溢出漏洞的cve,分别是CVE-2017-9430和CVE-2017-13089,简单记录一下realwrold中的栈溢出漏洞学习。目前,栈溢出漏洞主要出现在iot固件中,linux下的已经很少了,所以这两个洞都是17年,比较早,但还是能学到一些东西。CVE-2017-94301.漏洞描述dnstracer1.9及之前版本中......
  • golang JSON序列化和反序列化
    目录JSON序列化(Marshaling)JSON反序列化(Unmarshaling)错误处理和注意事项在Go语言(通常被称为Golang)中,JSON(JavaScriptObjectNotation)是一种常用的数据交换格式。Go标准库提供了encoding/json包,使得JSON的序列化(将Go数据结构转换为JSON格式的字符串)和反序列化(将JSON格式的字符串......
  • 02-APIView和序列化
    常规通过CBV的写法#models.pyfromdjango.dbimportmodelsclassBook(models.Model):name=models.CharField(max_length=32)price=models.IntegerField()publish=models.CharField(max_length=64)classMeta:db_table="book&qu......
  • Hessian反序列化分析
    RPC协议RPC全称为RemoteProcedureCallProtocol(远程调用协议),RPC和之前学的RMI十分类似,都是远程调用服务,它们不同之处就是RPC是通过标准的二进制格式来定义请求的信息,这样跨平台和系统就更加方便RPC协议的一次远程通信过程如下:客户端发起请求,并按照RPC协议格式填充信息填充......
  • sql注入漏洞简单讲解与实战
    SQL注入(SQLInjection)是一种常见的网络安全漏洞,攻击者利用该漏洞向应用程序的数据库发送恶意的SQL查询,从而绕过身份验证、获取敏感数据或者对数据库进行修改。SQL注入通常发生在与数据库交互的Web应用程序中,尤其是那些直接将用户输入拼接到SQL查询语句中的应用程序。攻击者利......
  • 文件包含漏洞详解(超级详细)
    目录什么是文件包含?文件包含漏洞产生的原因文件包含函数include()include_once()     require()require_once()     本地文件包含日志文件包含什么是日志文件如果没有access.log文件日志文件包含实验远程文件包含漏洞PHP伪协议php://filter伪协议包含......
  • 记录很久没用Ubuntu遇到的问题,并安装vulhub漏洞环境(Docker已装好)
    前景提要:之前有装过vulhub,但是今天想复现一下shiro反序列化漏洞(CVE-2016-4437),查看我下载的vulhub,没有找到。就打算更新(顺便提一嘴,更新命令为:gitpull,要先关闭docker),但是我一更新就VMware就弹出“对文件“……\VirtualMachines\Ubuntu64位\Ubuntu64位-000001.vmdk”的操作失......
  • 从0到1的二次反序列化
    前言简单介绍下二次反序列化,顾名思义,就是反序列化两次,其主要意义是绕过黑名单的限制或不出网利用,有些CTF题把一大堆关键类全都ban了,这就让人无从下手,二次反序列化就是为此而生的SignedObject原理看构造函数,接受一个可序列化的对象,再进行一次序列化,简直不要太perfect关注一下......