## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-CISCO-JOY
_
(_) ___ _ _ | |/ _ | | | | | | (_) | |_| |_/ |___/ __ , | |**/ |**_ /
root@kitploit:~
一个用于捕获和分析网络流数据及流内数据的包,
适用于网络研究、取证和安全监控。

#### 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 的 许可证
参见外部库的 复制许可