Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
freddy — 通过主动和被动扫描,自动识别 Java 和 .NET 应用程序中的反序列化问题 | Kitploit
工具/GitHubGitHub/nccgroup/freddy
漏洞扫描器代码分析漏洞利用Web应用程序漏洞利用渗透测试
GitHubnccgroup/freddy

freddy

通过主动和被动扫描,自动识别 Java 和 .NET 应用程序中的反序列化问题

查看仓库
58210055年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
网站
分享

Freddy 序列化杀手 - 反序列化漏洞查找器

一个用于辅助检测和利用序列化库/API的Burp Suite扩展。

这个有用的扩展最初由Nick Bloor(@nickstadb)为NCC Group开发,主要基于Alvaro Muñoz和Oleksandr Mirosh的工作,Friday the 13th: JSON Attacks,他们在Black Hat USA 2017和DEF CON 25上进行了展示。在他们的工作中,他们审查了一系列Java和.NET的JSON和XML序列化库,发现其中许多支持任意运行时对象的序列化,因此与许多序列化技术一样容易受到攻击——在反序列化期间或之后执行的代码片段(POP gadgets)可以通过序列化对象的属性进行控制,通常为任意代码或命令执行开辟了潜在可能。

还包括支持YAML和AMF等更多格式的附加模块,基于Moritz Bechler的论文Java Unmarshaller Security - Turning your data into code execution和工具marshalsec。

该Burp Suite扩展实现了被动和主动扫描,用于识别和利用易受攻击的库。

Freddy特性

被动扫描

Freddy可以通过监视HTTP请求中的类型说明符或其他签名,以及通过监控HTTP响应中目标库抛出的异常,来被动检测潜在危险的序列化库和API的使用。例如,FastJson库使用JSON字段$types来指定序列化对象的类型。

主动扫描

Freddy包含主动扫描功能,尝试检测并在可能的情况下利用受影响的库。

主动扫描尝试使用三种方法检测易受攻击库的使用:基于异常、基于时间和基于协作。

基于异常

在基于异常的主动扫描中,Freddy将数据插入HTTP请求,这些数据应触发已知的目标特定异常或错误消息。如果在应用程序的响应中观察到该错误消息,则会报告一个问题。

基于时间

在某些情况下,可以使用基于时间的有效载荷进行检测,因为操作系统命令执行会在反序列化期间触发,并且该操作会阻塞执行直到操作系统命令完成。Freddy使用包含ping [-n|-c] 21 127.0.0.1的有效载荷,以在这些情况下引入时间延迟。

基于协作

基于协作的有效载荷通过发出nslookup命令解析Burp Suite协作生成的域名,或尝试从域名加载远程类到Java应用程序来工作。Freddy每60秒检查一次新的协作问题,并在问题列表中标记为RCE (Collaborator)。

支持的目标

目前支持以下目标(v2.0新增的以斜体表示):

Java

  • BlazeDS AMF 0(检测,RCE)
  • BlazeDS AMF 3(检测,RCE)
  • BlazeDS AMF X(检测,RCE)
  • Burlap(检测,RCE)
  • Castor(检测,RCE)
  • FlexJson(检测)
  • Genson(检测)
  • Hessian(检测,RCE)
  • Jackson(检测,RCE)
  • JSON-IO(检测,RCE)
  • JYAML(检测,RCE)
  • Kryo(检测,RCE)
  • 使用StdInstantiatorStrategy的Kryo(检测,RCE)
  • ObjectInputStream(检测,RCE)
  • Red5 AMF 0(检测,RCE)
  • Red5 AMF 3(检测,RCE)
  • SnakeYAML(检测,RCE)
  • XStream(检测,RCE)
  • XmlDecoder(检测,RCE)
  • YAMLBeans(检测,RCE)

.NET

  • BinaryFormatter(检测,RCE)
  • DataContractSerializer(检测,RCE)
  • DataContractJsonSerializer(检测,RCE)
  • FastJson(检测,RCE)
  • FsPickler JSON支持(检测)
  • FsPickler XML支持(检测)
  • JavascriptSerializer(检测,RCE)
  • Json.Net(检测,RCE)
  • LosFormatter(检测,RCE) - 注意:本身不是一个模块,通过ObjectStateFormatter支持
  • NetDataContractSerializer(检测,RCE)
  • ObjectStateFormatter(检测,RCE)
  • SoapFormatter(检测,RCE)
  • Sweet.Jayson(检测)
  • XmlSerializer(检测,RCE)

基于AGPL-3.0发布,更多信息请参见LICENSE

构建freddy

Freddy使用gradle构建系统。要构建jar包,只需在根目录下运行gradle jar。这将运行测试,如果一切正确,将在build/libs目录中创建jar文件。

下载工具