_
() ___ _ _
| |/ _ | | | |
| | () | || |
/ |___/ _, |
|/ |/
一个用于捕获和分析网络流数据及流内数据的包,
适用于网络研究、取证和安全监控。
附录:关于我们最新的网络指纹识别工具和数据,请参阅 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 指纹。我们构建了一组 Python 工具,以便使用该数据库,并在 Joy 的帮助下生成新数据库。更多信息,请参阅 TLS 指纹识别文档。
Joy 曾支持为思科加密流量分析(ETA)铺平道路的研究,但它并未直接集成到任何实现 ETA 的思科产品或服务中。Joy 中的分类器是在几年前基于一个小型数据集训练的,并不代表 ETA 的分类方法或性能。该功能的目的是允许网络研究人员在 Joy 生成的部分数据特征上快速训练并部署自己的分类器。有关训练自己的分类器的更多信息,请参阅 saltUI/README 或联系 [email protected]。
本软件包由 David McGrew、Blake Anderson、Philip Perricone 和 Bill Hudson 撰写,邮箱 {mcgrew,blaander,phperric,bhudson}@cisco.com,来自思科系统高级安全研究组(ASRG)和安全与信任组织(STO)。
我们很高兴宣布该包的 4.0.1 版本,具有以下特性:
我们很高兴宣布该包的 4.0.0 版本,具有以下特性:
我们很高兴宣布该包的 3.0.0 版本,具有以下特性:
我们很高兴宣布该包的 2.0 版本,具有以下特性:
Joy 已在 Linux(Debian、Ubuntu、CentOS 和 Raspbian)、Mac OS X 和 Windows 上成功运行和测试。该系统使用 gcc 和 GNU make 构建,但也应适用于其他开发环境。
请参阅 Wiki 获取构建指南: 构建说明
参见 Joy 的 许可证
参见外部库的 复制许可