Joy:一款用于捕获和分析网络内部流量数据的工具
今天给大家介绍的是一款名叫Joy的工具,该工具能够捕捉并分析网络流数据以及系统内部流数据,研究人员可以利用这些数据以及分析结果来进行网络研究、取证以及安全监控等活动。
工具下载
下载地址:点击阅读原文查看
工具介绍
Joy是一款基于BSD许可证协议下的软件数据包(基于libpcap),它可以从实时网络流量中提取数据或直接捕捉到数据包文件(pcap文件)。Joy使用的是一种指向数据流的模型,其工作机制跟IPFIX或Netflow有些类似,在捕捉到数据之后,Joy将以JSON格式呈现出这些数据。除此之外,Joy还包含了分析工具,用户可以直接使用这些分析工具来对数据文件进行分析。值得一提的是,Joy可以用来进行大规模数据提取,尤其是那些跟网络安全以及恶意威胁相关的数据。
之所以这里要使用JSON,主要是为了方便将捕捉到的数据直接输入到数据分析工具之中以进行深入分析。虽然JSON输出文件稍微有些冗长,但是文件大小还是比较小的,而且可压缩性也很强。
经过配置后,Joy还可以获取系统内部流数据,即网络流内部所发生的事件信息以及各种数据,其中包括:
- IP数据包的长度以及到达时间;
- 数据流中特定数据的经验概率分布情况,以及相应的熵;
- TLS记录的长度以及到达时间;
- 其他非加密的TLS数据,例如提供的加密套件列表、选择的加密套件、clientKeyExchange域的长度、以及服务器证书字符串等等;
- DNS域名、地址以及TTLs;
- HTTP头元素以及HTTP body的前八个字节;
- 跟数据流有关的进程名称以及pcap文件;
适用范围
Joy不仅适用于信息安全研究和取证,而且还可以对小型网络进行监控以检测安全漏洞、网络威胁、以及未授权的非法操作。研究人员、网络管理员、渗透测试人员和安全响应团队都可以利用Joy提供的数据来监控和保护自家网络的安全。当然了,对于攻击者来说,Joy同样可以帮助他们实现自己的目的,例如扫描目标网络中潜在的安全漏洞,或者窃取目标网络流数据。因此,我们建议大家在没有得到许可的情况下不要将该工具应用到其他个人或组织网络中。
版本介绍
目前发布的Joy仍是测试版本,我们希望有能力的同学可以在工具的使用过程中给我们提交反馈意见或更新功能代码【GitHub】。在接下来的一两周时间里,我们将会发布Joy 2.0版本,在新版本中我们对JSON模式进行了大幅度修改,并添加了很多新的功能,敬请期待。
使用Tip
Joy可以在Linux(Debian, Ubuntu, CentOS和Raspbian)、macOS以及Windows平台上正常运行。该工具使用了gcc编译,并且能够适用于多种开发环境。
工具配置及依赖组件
下载Joy源代码:
git clone https://github.com/cisco/joy.git
cd joy
Linux(Ubuntu)
Windows
嵌入到windows/子目录中。
macOS
在构建Joy之前,你需要安装OpenSSL开发组件,你可以运行下列命令来查看当前的OpenSSL版本信息:
openssl version
从openssl.org下载符合条件的文件包,并提取出来。
MacOS Sierra native OpenSSL 0.9.8zh:点击阅读原文下载
下载好OpenSSL tarball之后,你还需要提取并运行配置脚本:
* 参考来源:joy,FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM
- 扬言毁灭人类的索菲亚再一次挑战了人类
- SQL Server 存储过程生成insert语句
- silverlight 背景透明
- .Net 转战 Android 4.4 日常笔记(1)--工具及环境搭建
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(33)-MVC 表单验证
- 如何利用深度学习识别千万张图片?
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(32)-swfupload多文件上传[附源码]
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(31)-MVC使用RDL报表
- 43 Hot Flex and ActionScript 3.0 APIs, tips and tools for Autumn 2008
- 异步数据存储
- 谈谈基于SQL Server 的Exception Handling[中篇]
- C# AD(Active Directory)域信息同步,组织单位、用户等信息查询
- 如何仅使用TensorFlow C+来训练深度神经网络
- 捕获silverlight滚轮事件
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Swift 类方法和实例方法
- 我从未见过的牛逼解说方式!Redis五种数据结构,看一遍就懂了
- Swift 动态创建ViewController
- Office 文档解析 文档格式和协议
- 查看centos 7里敏感信息的常用命令(未完)
- C# dotnet 使用 FileStream 随机文件读写
- datables之加载数据时显示进度条
- 这几种常见的“分布式锁”写法,搞懂再也不怕面试官,安排
- C# 8.0 文件长度 Bytes 字节转 KB 等单位字符串
- LeetCode---两数之和
- 通过 cmd 批处理文件将 16 进制转 10 进制数字
- HTML5-JS操作页面滚动条(禁止、隐藏、显示、不显示)
- 追根溯源MySQL,“你的表情”插入对了吗?
- 推荐官方开源 PInvoke 库 包含大量 win32 封装
- 这是什么重大发现!一个导致JVM物理内存消耗大的Bug