ZUI(Brim)使用指南

2023-10-29 07:30
文章标签 使用指南 zui brim

本文主要是介绍ZUI(Brim)使用指南,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

zui(Brim)使用规范

将数据包转换为json格式

文章目录

  • zui(Brim)使用规范
    • 每一行的意义
      • 对想要看的摘要右键——>Show In Detail Pane
      • 可以看到右边DETAIL栏,除了摘要的各项信息之外,还有摘要的相关的其他类型的摘要关联。
      • 出现一个流conn摘要相关摘要是同一个流但产生了多个摘要是怎么回事?
      • 结论
    • SSL摘要
    • DNS摘要
    • 选取一定时间范围内的流摘要
    • CICAndMal2017数据集的一些规律

每一行的意义

先将所有的json格式包按时间顺序排序。

zql代码:sort ts

前两行日志:stats、conn都是zeek自己添加的。

从第三行开始对应原始pcap,一行对应一个流。相当于对一个数据包在wireshark进行追踪流后形成的流,这一行必定是五元组相同的数据流(flow),但一个流可能会有多个摘要。

conn.log摘要主要包含这些信息:

ts:到达时间
uid:可能是随机给的id号
id:{orig_h:源IP地址,orig_p:源端口}
proto:协议
servive:服务器类型(null/ssl)
duration:流持续时间
orig_bytes:来自源IP的字节
resp_bytes:响应自目的IP的字节
conn_state:conn文件类型- S0 尝试连接,未应答- S1 建立连接未结束(不包含字节数)⚪ SF 正常建立和终止(有字节数)- REJ 连接被拒绝- S2 发起连接,未收到答复,发起者尝试关闭- S3 建立连接,应答者尝试关闭- RSTO 连接已建立,发送发终止- RSTR 响应方发终止⚪ RSTRH 响应方发送一个SYN ACK和RST,未见发起方的SYN- SH 发起方发送一个SYN,和FIN,未见响应方的SYN ACK(半连接)- SHR 响应发送了一个SYN ACK和一个FIN,未发送见SYN- OTH 未关闭的连接
history:
orig_pkts:源IP发出的包数量
resp_pkts:响应的包数量
orig_ip_bytes:
resp_ip_bytes:

对想要看的摘要右键——>Show In Detail Pane

请添加图片描述

可以看到右边DETAIL栏,除了摘要的各项信息之外,还有摘要的相关的其他类型的摘要关联。

  • 我们对第五行的conn摘要进行细节了解,可以看到各项信息和其关联的其他类型摘要,说明这个流中包含多种类型。

请添加图片描述

请添加图片描述

  • 还可以看到该流的完整建立过程。由于该流是SF类型,所以是建立了完整连接的。

请添加图片描述

  • 我们看另外一条类型未RSTRH的流,就没有完整的建立过程。

请添加图片描述

  • 说回上一个conn摘要的关联摘要,也是该流产生的摘要,因此我们明白了,conn摘要对应了一个完整的流(五元组相同的flow)但其也不知conn一种类型,可能流中有DNS响应和文件传输,那么它还会对应DNS摘要和files摘要,这些摘要也会在摘要行中紧随其后。X509摘要好像没有出现在关联链表中,但从摘要的流到达时间可以看出,是同一个流产生的摘要。

请添加图片描述

出现一个流conn摘要相关摘要是同一个流但产生了多个摘要是怎么回事?

请添加图片描述

  • 第一个conn 状态是SHR(响应发送了一个SYN ACK和一个FIN,未发送见SYN),第二个conn状态时SH(发起方发送一个SYN,和FIN,未见响应方的SYN ACK),第三、四、五个conn状态是SH。
  • 理解是:这种情况一个流发生了重传,每个conn都记录的不是完整的流,只是这个端口发生的一些连接行为,所以conn不一定对应用五元组方式区分出来的流。

结论

  • conn.log对应的是该流的基本信息,对应的是一个完整flow的信息。但有时同一个端口也会发生重传,每一次重传会对应一个conn摘要,此时不一定对应用五元组方式区分出来的流。

  • 并不是一行对应一个流。因为一个流会产生多个类型的摘要。

  • 一个流产生的摘要关联可以通过图看出,一般摘要信息都紧挨着。

  • 可能有些流是不完整的流,从conn_state可以看出来,一般SF才是完整的流。

SSL摘要

  • 不一定会和conn摘要挨在一起,最好还是通过DETAIL——CORRELATION来看

请添加图片描述

重要字段:

subject:主题{CN:网站域名,O:单位名称,L:所在城市,S/ST:省份,C:国家……}issuer:颁发者{CN:网站申请单位名称,O:单位名称,}自签名证书:issuer和subject是一样的,没有SSL第三方可信机构的支持。
要看根证书是不是可信机构签发的。
  • 怎么筛选出ssl和其conn的对应关系?

DNS摘要

  • 不同类型的摘要都会和conn摘要相关,因为conn是该流的基本信息,而该流如果是完整的流就一定有其他工作,例如提供DNS查询,或者是加密通信等等。

  • DNS查询的流怎么关联到其对应的加密流量?

  • 好像可以通过ssl摘要中的server_name字段关联

  • DNS的query字段
    请添加图片描述

  • ssl的server_name字段

请添加图片描述

选取一定时间范围内的流摘要

  • 选取一个流摘要邮件——>Set Time Range From,会显示从这个时间开始,一定时间范围内的流摘要

请添加图片描述

CICAndMal2017数据集的一些规律

  • 原始数据集一个pcap对应一个主机源IP向外的所有请求和响应。

  • 处理时,可以通过zql语句,筛选出所有完整的流的conn.log,点击export可以导出所有完整流的conn.log日志,可以获得

    orig_bytes:源IP负载部分的字节数resp_bytes:目的IP负载部分字节数duration:流持续时间orig_pkts:源IP发出包数orig_ip_bytes:源IP所有网络层的字节数(包括TCP头部等)resp_pkts:目的IP发出包数resp_ip_bytes:目的IP网络层的字节数
    
    sort ts|conn_state=="SF"
    
  • 从完整的流中,可以从443端口筛选出所有加密流

这篇关于ZUI(Brim)使用指南的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/299171

相关文章

Python虚拟环境与Conda使用指南分享

《Python虚拟环境与Conda使用指南分享》:本文主要介绍Python虚拟环境与Conda使用指南,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、python 虚拟环境概述1.1 什么是虚拟环境1.2 为什么需要虚拟环境二、Python 内置的虚拟环境工具

Java JSQLParser解析SQL的使用指南

《JavaJSQLParser解析SQL的使用指南》JSQLParser是一个Java语言的SQL语句解析工具,可以将SQL语句解析成为Java类的层次结构,还支持改写SQL,下面我们就来看看它的具... 目录一、引言二、jsQLParser常见类2.1 Class Diagram2.2 Statement

正则表达式r前缀使用指南及如何避免常见错误

《正则表达式r前缀使用指南及如何避免常见错误》正则表达式是处理字符串的强大工具,但它常常伴随着转义字符的复杂性,本文将简洁地讲解r的作用、基本原理,以及如何在实际代码中避免常见错误,感兴趣的朋友一... 目录1. 字符串的双重翻译困境2. 为什么需要 r?3. 常见错误和正确用法4. Unicode 转换的

Python Selenium动态渲染页面和抓取的使用指南

《PythonSelenium动态渲染页面和抓取的使用指南》在Web数据采集领域,动态渲染页面已成为现代网站的主流形式,本文将从技术原理,环境配置,核心功能系统讲解Selenium在Python动态... 目录一、Selenium技术架构解析二、环境搭建与基础配置1. 组件安装2. 驱动配置3. 基础操作模

Spring Validation中9个数据校验工具使用指南

《SpringValidation中9个数据校验工具使用指南》SpringValidation作为Spring生态系统的重要组成部分,提供了一套强大而灵活的数据校验机制,本文给大家介绍了Spring... 目录1. Bean Validation基础注解常用注解示例在控制器中应用2. 自定义约束验证器定义自

Python Websockets库的使用指南

《PythonWebsockets库的使用指南》pythonwebsockets库是一个用于创建WebSocket服务器和客户端的Python库,它提供了一种简单的方式来实现实时通信,支持异步和同步... 目录一、WebSocket 简介二、python 的 websockets 库安装三、完整代码示例1.

Kotlin 作用域函数apply、let、run、with、also使用指南

《Kotlin作用域函数apply、let、run、with、also使用指南》在Kotlin开发中,作用域函数(ScopeFunctions)是一组能让代码更简洁、更函数式的高阶函数,本文将... 目录一、引言:为什么需要作用域函数?二、作用域函China编程数详解1. apply:对象配置的 “流式构建器”最

2025最新版Python3.13.1安装使用指南(超详细)

《2025最新版Python3.13.1安装使用指南(超详细)》Python编程语言自诞生以来,已经成为全球最受欢迎的编程语言之一,它简单易学易用,以标准库和功能强大且广泛外挂的扩展库,为用户提供包罗... 目录2025最新版python 3.13.1安装使用指南1. 2025年Python语言最新排名2.

Deepseek使用指南与提问优化策略方式

《Deepseek使用指南与提问优化策略方式》本文介绍了DeepSeek语义搜索引擎的核心功能、集成方法及优化提问策略,通过自然语言处理和机器学习提供精准搜索结果,适用于智能客服、知识库检索等领域... 目录序言1. DeepSeek 概述2. DeepSeek 的集成与使用2.1 DeepSeek API

Rsnapshot怎么用? 基于Rsync的强大Linux备份工具使用指南

《Rsnapshot怎么用?基于Rsync的强大Linux备份工具使用指南》Rsnapshot不仅可以备份本地文件,还能通过SSH备份远程文件,接下来详细介绍如何安装、配置和使用Rsnaps... Rsnapshot 是一款开源的文件系统快照工具。它结合了 Rsync 和 SSH 的能力,可以帮助你在 li