系统审计集成 [Beta]
编辑系统审计集成 [Beta]
编辑概述
编辑系统审计
集成收集关于系统的各种安全相关信息。所有数据流都发送定期状态信息(例如,所有当前已安装的软件包)和实时更改(例如,当安装/卸载新软件包或更新现有软件包时)。目前,唯一实现的数据流是软件包数据流,它收集有关系统软件包的各种信息。将来,将添加更多数据流,例如(进程、套接字、主机等)。
工作原理
编辑每个数据流发送两种信息:状态和事件。
状态信息定期发送。状态更新将包含每个已安装或状态在轮询期间发生更改的软件包的事件。属于同一状态更新的所有事件将在 event.id
中共享相同的 UUID。
可以使用 state.period
配置选项来控制所有数据流的状态更新频率。默认值为 12h
。
事件信息在事件发生时发送(例如,安装、卸载或更新软件包)。目前,所有数据流都使用轮询模型来检索其数据。这些轮询的频率由 period
配置参数控制。
实体 ID
编辑此模块填充 entity_id
字段以唯一标识主机内的实体(软件包)。这需要模块获取主机的唯一标识符
- macOS:使用
gethostuuid(2)
系统调用返回的值。 - Linux:使用由
systemd
或dbus
创建的以下文件之一的内容 - /etc/machine-id
- /var/lib/dbus/machine-id
- /var/db/dbus/machine-id
在 CentOS 6.x 下,可能不存在上述任何文件。在这种情况下,运行 dbus-uuidgen --ensure
(由 dbus
包提供)将为您生成一个。还需要考虑的一件事是,目前此集成 不支持 Windows 系统。
要求
编辑您需要 Elasticsearch 来存储和搜索您的数据,以及 Kibana 来可视化和管理它。您可以使用我们托管在 Elastic Cloud 上的 Elasticsearch 服务(推荐),或者在您自己的硬件上自行管理 Elastic Stack。
设置
编辑有关如何设置集成的分步说明,请参阅 入门指南。
如果您想禁止 host
相关信息,请考虑添加标签:forwarded
。将此标签添加到标签列表中将从输出中删除任何主机相关数据,这也将阻止某些仪表板显示主机/操作系统相关信息/图表。
数据流
编辑当前支持的数据流为:-
- package
软件包 帮助您记录系统上不同软件包发生的事件和更改。与数据流关联的字段和事件如下:-
导出的字段
字段 | 描述 | 类型 |
---|---|---|
@timestamp |
事件的原始日期/时间。这是从事件中提取的日期/时间,通常表示事件由源生成的时间。如果事件源没有原始时间戳,则此值通常由管道首次接收事件的时间填充。所有事件的必填字段。 |
日期 |
data_stream.dataset |
该字段可以包含任何对于表示数据来源有意义的内容。示例包括 |
constant_keyword |
data_stream.namespace |
用户定义的命名空间。命名空间对于允许数据分组很有用。许多用户已经以这种方式组织他们的索引,数据流命名方案现在将此最佳实践作为默认值提供。许多用户将使用 |
constant_keyword |
data_stream.type |
数据流的总体类型。当前允许的值为“logs”和“metrics”。我们期望在不久的将来也添加“traces”和“synthetics”。 |
constant_keyword |
ecs.version |
此事件符合的 ECS 版本。 |
keyword |
event.dataset |
事件数据集 |
constant_keyword |
event.module |
事件模块 |
constant_keyword |
event.original |
整个事件的原始文本消息。用于演示日志完整性或可能需要完整日志消息(在将其拆分为多个部分之前)的情况,例如重新索引。此字段未编制索引,并且禁用了 doc_values。它无法搜索,但可以从 |
keyword |
host.architecture |
操作系统架构。 |
keyword |
host.domain |
主机所属域的名称。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。 |
keyword |
host.hostname |
主机的 hostname。它通常包含主机机器上 |
keyword |
host.id |
唯一的主机 ID。由于主机名并不总是唯一的,请使用在您的环境中具有意义的值。示例:当前 |
keyword |
host.ip |
主机 IP 地址。 |
ip |
host.mac |
主机 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)都由两个[大写]十六进制数字表示,给出八位字节的值作为无符号整数。连续的八位字节用连字符分隔。 |
keyword |
host.name |
主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名 (FQDN) 或用户指定的名称。建议的值是主机的小写 FQDN。 |
keyword |
host.os.family |
操作系统系列(如 redhat、debian、freebsd、windows)。 |
keyword |
host.os.kernel |
操作系统内核版本,以原始字符串形式表示。 |
keyword |
host.os.name |
操作系统名称,不带版本。 |
keyword |
host.os.name.text |
|
match_only_text |
host.os.platform |
操作系统平台(如 centos、ubuntu、windows)。 |
keyword |
host.os.version |
操作系统版本,以原始字符串形式表示。 |
keyword |
host.type |
主机类型。对于云提供商,这可以是机器类型,如 |
keyword |
input.type |
Auditbeat 输入的类型。 |
keyword |
log.level |
日志事件的原始日志级别。如果事件的源提供日志级别或文本严重性,则将其放入 |
keyword |
message |
对于日志事件,message 字段包含日志消息,针对在日志查看器中查看进行了优化。对于没有原始 message 字段的结构化日志,可以连接其他字段以形成事件的人工可读摘要。如果存在多个消息,可以将它们合并为一个消息。 |
match_only_text |
package.architecture |
软件包架构。 |
keyword |
package.build_version |
有关已安装软件包的构建版本的其他信息。例如,使用未发布软件包的提交 SHA。 |
keyword |
package.checksum |
已安装软件包的校验和,用于验证。 |
keyword |
package.description |
软件包的描述。 |
keyword |
package.install_scope |
指示软件包的安装方式,例如,用户本地、全局。 |
keyword |
package.installed |
软件包的安装时间。 |
日期 |
package.license |
发布软件包的许可证。尽可能使用简称,例如 SPDX 许可证列表中的许可证标识符 (https://spdx.org/licenses/)。 |
keyword |
package.name |
软件包名称 |
keyword |
package.path |
软件包的安装路径。 |
keyword |
package.reference |
此软件包中软件的主页或参考 URL(如果可用)。 |
keyword |
package.size |
软件包大小(以字节为单位)。 |
长整型 |
package.type |
软件包类型。这应包含软件包文件类型,而不是软件包管理器名称。示例:rpm、dpkg、brew、npm、gem、nupkg、jar。 |
keyword |
package.version |
软件包版本 |
keyword |
system_audit.package.arch |
软件包架构。 |
keyword |
system_audit.package.entity_id |
唯一标识软件包的 ID。它是通过主机 ID、软件包名称和软件包版本的 SHA-256 哈希值计算得出的。 |
keyword |
system_audit.package.installtime |
软件包安装时间。 |
日期 |
system_audit.package.license |
软件包许可证。 |
keyword |
system_audit.package.name |
软件包名称。 |
keyword |
system_audit.package.release |
软件包发行版本。 |
keyword |
system_audit.package.size |
软件包大小。 |
长整型 |
system_audit.package.summary |
软件包摘要。 |
|
system_audit.package.url |
软件包 URL。 |
keyword |
system_audit.package.version |
软件包版本。 |
keyword |
tags |
用户定义的标签 |
keyword |
示例
关于 package
的事件示例如下所示
{ "@timestamp": "2023-01-31T11:44:38.695Z", "agent": { "ephemeral_id": "c9a6d8c0-780c-4b96-81f2-5a8c850bd0cc", "id": "027bc354-85a6-40d6-be9d-7eb4533fbd18", "name": "docker-fleet-agent", "type": "auditbeat", "version": "8.5.1" }, "data_stream": { "dataset": "system_audit.package", "namespace": "ep", "type": "logs" }, "ecs": { "version": "8.11.0" }, "elastic_agent": { "id": "027bc354-85a6-40d6-be9d-7eb4533fbd18", "snapshot": false, "version": "8.5.1" }, "event": { "action": "existing_package", "agent_id_status": "verified", "category": [ "package" ], "dataset": "system_audit.package", "id": "f2b5baf6-fd22-490a-82fd-a044ff7075cb", "ingested": "2023-01-31T11:44:40Z", "kind": "state", "module": "system", "type": [ "info" ] }, "host": { "architecture": "x86_64", "containerized": false, "hostname": "docker-fleet-agent", "id": "75e38940166b4dbc90b6f5610e8e9c39", "ip": [ "192.168.80.7" ], "mac": [ "02-42-C0-A8-50-07" ], "name": "docker-fleet-agent", "os": { "codename": "focal", "family": "debian", "kernel": "5.15.49-linuxkit", "name": "Ubuntu", "platform": "ubuntu", "type": "linux", "version": "20.04.5 LTS (Focal Fossa)" } }, "input": { "type": "audit/system" }, "message": "Package adduser (3.118ubuntu2) is already installed", "package": { "architecture": "all", "description": "add and remove users and groups", "name": "adduser", "size": 624, "type": "dpkg", "version": "3.118ubuntu2" }, "system_audit": { "package": { "arch": "all", "entity_id": "OnUSNhuUQkyYgoKf", "name": "adduser", "size": 624, "summary": "add and remove users and groups", "version": "3.118ubuntu2" } }, "tags": [ "audit-system-package" ] }
示例仪表板
编辑该集成包含一个软件包和审计系统仪表板,以便轻松识别事件和进行数据概览。
软件包仪表板
系统审计仪表板
参考
编辑有关更多信息,请参阅Auditbeat 系统模块文档。
更新日志
编辑更新日志
版本 | 详细信息 | Kibana 版本 |
---|---|---|
1.10.3 |
Bug 修复 (查看拉取请求) |
8.7.1 或更高版本 |
1.10.2 |
增强功能 (查看拉取请求) |
8.7.1 或更高版本 |
1.10.1 |
增强功能 (查看拉取请求) |
8.7.1 或更高版本 |
1.10.0 |
增强功能 (查看拉取请求) |
8.7.1 或更高版本 |
1.9.0 |
增强功能 (查看拉取请求) |
8.7.1 或更高版本 |
1.8.0 |
增强功能 (查看拉取请求) |
8.7.1 或更高版本 |
1.7.0 |
增强功能 (查看拉取请求) |
8.7.1 或更高版本 |
1.6.0 |
增强功能 (查看拉取请求) |
8.7.1 或更高版本 |
1.5.1 |
Bug 修复 (查看拉取请求) |
8.7.1 或更高版本 |
1.5.0 |
增强功能 (查看拉取请求) |
8.7.1 或更高版本 |
1.4.0 |
增强功能 (查看拉取请求) |
8.5.0 或更高版本 |
1.3.0 |
增强功能 (查看拉取请求) |
8.5.0 或更高版本 |
1.2.1 |
Bug 修复 (查看拉取请求) |
8.5.0 或更高版本 |
1.2.0 |
增强功能 (查看拉取请求) |
8.5.0 或更高版本 |
1.1.0 |
增强功能 (查看拉取请求) |
8.5.0 或更高版本 |
1.0.1 |
增强功能 (查看拉取请求) |
8.5.0 或更高版本 |
1.0.0 |
增强功能 (查看拉取请求) |
8.5.0 或更高版本 |