Sploitus

Exploit for joy

kitploit · 2026-09-08

Exploit Code

MARKDOWN172 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-CISCO-JOY
_  
(_) ___ _ _ | |/ _ | | | | | | (_) | |_| |_/ |___/ __ , | |**/ |**_ /

root@kitploit:~
    
    
            一个用于捕获和分析网络流数据及流内数据的包,
            适用于网络研究、取证和安全监控。
    

![Build Status](https://travis-ci.org/cisco/joy.svg?branch=master)

#### TLS 指纹识别

附录:关于我们最新的网络指纹识别工具和数据,请参阅 Mercury。

## 概述

Joy 是一个采用 BSD 许可的基于 libpcap 的软件包,用于从实时网络流量或数据包捕获(pcap)文件中提取数据特征,使用类似于 IPFIX 或 Netflow 的流导向模型,然后将这些数据特征表示为 JSON。它还包含可应用于这些数据文件的分析工具。Joy 可用于大规模数据探索,尤其是与安全和威胁相关的数据。

选择 JSON 是为了使输出易于被数据分析工具使用。虽然 JSON 输出文件有些冗长,但它们相当小,并且压缩效果良好。

Joy 可以配置为获取流内数据,即网络流内部事件的数据和信息,包括:

  * IP 数据包的长度和到达时间序列,直到某个可配置的数据包数量。

  * 流数据部分中字节的经验概率分布,以及基于该值计算出的熵,

  * TLS 记录的长度和到达时间序列,

  * 其他非加密的 TLS 数据,例如提供的密码套件列表、选定的密码套件、clientKeyExchange 字段的长度以及服务器证书字符串,

  * DNS 名称、地址和 TTL,

  * HTTP 头部元素以及 HTTP 体的前八个字节,

  * 对于源自或终止于运行 pcap 的主机的流,与该流关联的进程名称。




Joy 旨在用于安全研究、取证以及(小规模)网络的监控,以检测漏洞、威胁和其他未经授权或不受欢迎的行为。研究人员、管理员、渗透测试人员和安全运维团队可以充分利用这些信息,用于保护被监控的网络,并且在发现漏洞的情况下,通过改进防御态势为更广泛的社区带来益处。与任何网络监控工具一样,Joy 也可能被误用;请不要在您不是所有者或管理员的任何网络上使用它。

在积极心理学中,“flow”(心流)是一种状态,指一个人完全沉浸在充满活力的专注、深度投入和喜悦之中。这第二个含义启发了本软件包名称的选择。

Joy 是 alpha/beta 软件;我们希望您使用它并从中受益,但请理解它不适合生产环境使用。

#### TLS 指纹识别

我们最近发布了最大且信息最丰富的开源 TLS 指纹数据库。除其他特性外,我们的方法建立在先前工作的基础上,通过完全自动化并以显著更多的信息注释 TLS 指纹。我们构建了一组 Python 工具,以便使用该数据库,并在 Joy 的帮助下生成新数据库。更多信息,请参阅 TLS 指纹识别文档。

#### 与思科 ETA 的关系

Joy 曾支持为思科加密流量分析(ETA)铺平道路的研究,但它并未直接集成到任何实现 ETA 的思科产品或服务中。Joy 中的分类器是在几年前基于一个小型数据集训练的,并不代表 ETA 的分类方法或性能。该功能的目的是允许网络研究人员在 Joy 生成的部分数据特征上快速训练并部署自己的分类器。有关训练自己的分类器的更多信息,请参阅 saltUI/README 或联系 some-email@example.com。

#### 致谢

本软件包由 David McGrew、Blake Anderson、Philip Perricone 和 Bill Hudson 撰写,邮箱 {mcgrew,blaander,phperric,bhudson}@cisco.com,来自思科系统高级安全研究组(ASRG)和安全与信任组织(STO)。

### 版本 4.5.0

  * 增加了使用 AF_PACKET v3 和 AF_FANOUT 替代 libpcap 的能力 在 configure 命令中使用 --enable-af_packet 以启用 AF_PACKET
  * 次要 bug 修复



### 版本 4.4.0

  * 修复 DNS 解析中的 SIGSEGV(递归深度 bug)
  * 修复 IPv6 负载计算中的 bug
  * 修复 IPv6 IDP 长度中的 bug
  * 将最大库上下文数提升至 64(用户请求)



### 版本 4.3.0

  * 为 Joy 和 libjoy 添加 IPv6 支持
  * IPFix 收集和导出仅支持 IPv4
  * NFv9 仅支持 IPv4
  * 匿名化仅支持 IPv4 地址
  * 子网标记仅支持 IPv4 地址



### 版本 4.2.0

  * 重写 joy.c 以使用 libjoy 库
  * 更新 joy.c 以利用多线程进行流处理
  * 更新单元测试和 Python 测试以反映新的代码变更
  * 移除更新器进程的核心代码,为后续重写做准备
  * 修复处理命令行多个文件时的 bug
  * 其他次要 bug 修复



### 版本 4.0.3

  * 为 Centos 增加 make install 支持



### 版本 4.0.2

  * 增加指纹识别支持



### 版本 4.0.1

我们很高兴宣布该包的 4.0.1 版本,具有以下特性:

  * 为父应用处理流记录和数据特征增加额外的 API
  * 修复 TCP 重传和乱序检测
  * 更好地识别 IDP 数据包
  * 修复一些内存使用问题
  * 修复次要 bug
  * 移除死代码



### 版本 4.0.0

我们很高兴宣布该包的 4.0.0 版本,具有以下特性:

  * 增加使用 autotools 构建的支持。./configure;make clean;make



### 版本 3.0.0

我们很高兴宣布该包的 3.0.0 版本,具有以下特性:

  * 修改 Joy 基础设施代码以实现线程安全。 
    * 支持多个工作线程进行数据包处理。
    * 每个工作线程使用自己的输出文件。
    * 移除 Config 全局变量。
    * 修改代码基础设施以使用配置结构体。
  * 修改 Makefile 系统,将 Joy 基础设施构建为静态库和共享库。
  * 实现用于使用 Joy 库(joy_api.[hc])的 API。
  * 实现向量数据包处理(VPP)集成方案,以便在构建该集成时利用 VPP 原生基础设施。
  * 创建了 2 个 API 测试程序:joy_api_test.c 和 joy_api_test2.c。
  * 修改现有测试程序,使其链接静态 Joy 库,而非重新编译基础设施代码。
  * 修改版本管理以使用通用安全模块(CSM)约定。
  * 修改 build_pkg 以接受命令行上的包版本。
  * 清理 Coverity 错误和警告。
  * 各种 bug 修复。



### 版本 2.0

我们很高兴宣布该包的 2.0 版本,具有以下特性:

  * JSON 模式已更新,组织更合理、更具可读性、更易搜索(通过将可搜索的关键词作为 JSON 名称),
  * 新的 sleuth 工具取代了 query/joyq,并带来了新功能,如 —fingerprint,
  * 大幅改进的文档,涵盖 joy 和 sleuth 工具、示例以及 JSON 模式 (参见 using-joy)



## 快速开始

Joy 已在 Linux(Debian、Ubuntu、CentOS 和 Raspbian)、Mac OS X 和 Windows 上成功运行和测试。该系统使用 gcc 和 GNU make 构建,但也应适用于其他开发环境。

请参阅 Wiki 获取构建指南: 构建说明

## 许可证

参见 Joy 的 许可证

参见外部库的 复制许可