Fleet 4.10.0 发布解析:为漏洞分析师打造的软件清单、Webhook 自动化与 MDM 数据聚合
Fleet 4.10.0 发布解析为漏洞分析师打造的软件清单、Webhook 自动化与 MDM 数据聚合【免费下载链接】fleetOpen device management项目地址: https://gitcode.com/GitHub_Trending/fl/fleetFleet 4.10.0 是一期面向漏洞分析与 IT 运维的版本更新核心变化包括全新的全局 Software 页面软件清单聚合与 CVE 检索、可配置的漏洞 Webhook 自动化新 CVE 自动通知以及 MDM 与 Munki 数据的全局聚合视图。读完本文你将掌握这三个特性的使用场景与配置方式并通过仓库源码理解其底层实现例如 Webhook 的请求载荷结构、批处理逻辑与漏洞周期扫描配置。版本概览本版本发布于 2022 年 2 月主题是为漏洞分析师带来新功能与改进。三个 Feature highlights 分别是全新的Software 页面Fleet UI 内全局软件清单关联 issue #3397 对应的能力漏洞 Webhook 自动化的配置与发送关联 #3050 对应的能力聚合 MDM移动设备管理与 Munki 数据关联 #3263 对应的能力。同时4.10.0 将 Settings 入口从主导航移入 Account 下拉菜单使主导航更简洁也为新加入的 Software 导航项腾出空间。一、全新的 Software 页面全局软件清单与漏洞视角在 4.10.0 之前软件清单主要停留在单台 Host 的维度host-specific software inventory。本次更新将其提升到组织级Software 页面展示整个组织范围内安装软件的去重聚合列表并支持按团队team过滤。对于管理大量设备的漏洞分析师来说这个页面的价值在于直接查看受漏洞CVE影响的软件并看到受影响设备数量据此追踪整个 Fleet 的打补丁patching进度。相关的搜索与过滤能力伴随 Software 页面4.10.0 还补充了两项针对漏洞排查的查询能力按 CVE 搜索软件可直接用 CVE 编号检索对应的软件条目Host 详情页新增 Vulnerable 过滤在 Host detail 页按存在漏洞状态过滤软件。这些能力共同构成了从全局软件 → 具体 CVE → 受影响 Host的下钻路径是漏洞分析师日常巡检的关键工作流。从源码看软件与漏洞的关联实现软件清单与漏洞的关联建立在漏洞处理模块之上。VulnerabilitiesConfig定义了漏洞扫描的全部关键参数见 server/config/config.go其中databases_path是唯一强制配置项默认值为/tmp/vulndbsFleet 需要对该路径具备读写权限periodicity控制漏洞检查周期默认1h同时它也是每个软件的受影响主机数的统计间隔详见 docs/Configuration/fleet-server-configuration.md。而按 CVE 搜索软件背后是 CVE、CPE通用平台枚举与软件清单的匹配链路Fleet 通过cpe_database_url、cpe_translations_url与cve_feed_prefix_url获取 NVD 数据流未配置时默认从 nvd.nist.gov 拉取结合各 Host 上报的软件信息完成漏洞匹配。配置项汇总如下配置项默认值说明vulnerabilities.databases_path/tmp/vulndbs漏洞数据库存储路径唯一必填项需可读可写vulnerabilities.periodicity1h漏洞检查周期同时决定每软件受影响主机数的统计间隔vulnerabilities.cpe_database_url自定义 CPE 字典下载地址未设置时自动检查最新 releasevulnerabilities.cpe_translations_urlCPE 翻译数据下载地址用于补充匹配vulnerabilities.cve_feed_prefix_url旧版 CVE Feed 前缀地址未设置时使用 NVD 2.0 APIvulnerabilities.cisa_known_exploits_urlCISA 官方目录已知被利用漏洞KEV目录用于增强漏洞报告二、配置并发送漏洞 Webhook 自动化4.10.0 的另一核心能力是漏洞自动化通知当启用漏洞自动化后Fleet 检测到新漏洞CVE时会主动向配置的 URL 发送请求从而自动通知设备负责人或创建工单来跟踪该漏洞。信号降噪仅通知最近两天的新漏洞为了避免告警噪声Fleet 只对发布距今不超过两天的新漏洞发送通知。对应到服务端配置即vulnerabilities.recent_vulnerability_max_age默认值为48h见 docs/Configuration/fleet-server-configuration.mdvulnerabilities: recent_vulnerability_max_age: 48h该配置限定了新发布漏洞的时间窗口超出窗口的存量 CVE 不会触发 Webhook。配置方法GitOps / YAML 方式在 GitOps 模式下漏洞 Webhook 属于org_settings下的全局配置只能为 All fleets全局配置见 docs/Configuration/yaml-files.mdorg_settings: webhook_settings: vulnerabilities_webhook: enable_vulnerabilities_webhook: true destination_url: https://example.org/webhook_handler host_batch_size: 0参数含义enable_vulnerabilities_webhook是否启用漏洞 Webhook默认falsedestination_urlWebhook 触发时POST的目标 URL默认host_batch_size单个 Webhook 请求中最多包含的主机标识数量0表示把检测到该漏洞的所有主机标识放在同一个请求中发送。从源码看 Webhook 的实现细节Webhook 的设置模型定义在 server/fleet/app.gotype VulnerabilitiesWebhookSettings struct { Enable bool json:enable_vulnerabilities_webhook DestinationURL string json:destination_url HostBatchSize int json:host_batch_size }触发逻辑位于 server/webhooks/vulnerabilities.go其工作流程为检查VulnerabilitiesWebhook.Enable未启用则直接返回将本次扫描发现的漏洞按 CVE 分组cveGrouped针对每个 CVE通过ds.HostVulnSummariesBySoftwareIDs查询受影响主机摘要按HostBatchSize分批0表示不分批每批构造载荷并通过sendVulnerabilityHostBatch发送。发送的请求体为{timestamp: 时间, vulnerability: WebhookPayload}见 server/webhooks/vulnerabilities.go。而WebhookPayload的结构定义在 server/webhooks/mapper.go包含{ cve: CVE-2022-xxxx, details_link: https://fleet.example.com/vulnerabilities/CVE-2022-xxxx, epss_probability: 0.012, // Premium 专属 cvss_score: 7.8, // Premium 专属 cisa_known_exploit: false, // Premium 专属 cve_published: 2022-02-01T00:00:00Z, // Premium 专属 hosts_affected: [ { id: 42, hostname: mbp-01, display_name: mbp-01, url: https://fleet.example.com/hosts/42, software_installed_paths: [/Applications/App.app] } ] }其中details_link指向该 CVE 的详情页hosts_affected中的每个主机带id、hostname、display_name、跳转 URL 以及可选的software_installed_paths软件安装路径列表用于帮助定位需要修补的具体文件。此外epss_probability、cvss_score、cisa_known_exploit、cve_published为 Premium 版本专属字段用于让接收方如工单系统在无需回查 Fleet 的情况下就能评估漏洞严重度与利用风险。也就是说Fleet 4.10.0 的漏洞 Webhook 并不是简单发一条有新漏洞的通知而是把 CVE 详情、评分、利用状态与受影响主机清单一并打包方便下游自动化工单直接消费。三、聚合 MDM 与 Munki 数据第三项特性面向 IT 管理员监控所有设备的 MDM 注册状态并查看安装了特定 Munki 版本macOS 软件分发工具的设备数量用于追踪升级进度。需要注意的适用范围MDM 注册数据目前仅适用于 macOS 设备官方说明将扩展到 Windows 与 Linux 设备后续版本实现Munki 版本统计用于跟踪自管 macOS 环境中 Munki 客户端的升级覆盖情况是判断补丁/软件分发客户端是否陈旧的直观指标。这两类数据与 Software 页面同属全局聚合视图方向前者把分散在各 Host 详情页的 MDM 状态汇总为一张全景图后者则把 Munki 客户端版本作为可量化的升级指标。四、更多改进与问题修复运维与调试新增SHOW ENGINE INNODB STATUS输出改善了调试工具当排查 MySQL/InnoDB 问题时可直接获取引擎状态支持配置 Sentry可在 Fleet 服务端集成 Sentry 进行错误上报。对应配置结构定义在 server/config/config.gosentry: dsn: https://xxxxsentry.example.com/1移除配置扁平化config flattening过程服务端配置对象更健壮减少因扁平化转换导致的配置丢失风险。UI 与交互体验Settings 移入 Account 下拉菜单主导航更清爽为新增的 Software 导航项留出空间团队名称与描述的编辑体验改进策略Policies与查询Queries的编辑体验改进Host 详情页可直接访问团队 Enroll Secret并下载团队专属的 osquery 安装器方便按团队维度快速完成设备接入不必再返回团队设置页翻找密钥。命令行工具扩展了fleetctl新的简化实现更多子命令迁移到精简实现命令行为更一致。Bug 修复修复 UI 的 padding、元素摆放等样式问题团队现在能正确上报分配给它们的主机数量此前存在统计偏差修复登出页面的 UI 缺陷GET /software接口现在返回预期的结果数量此前存在分页或聚合计数问题。五、如何升级到 Fleet 4.10.0如需升级请参考 Fleet 官方升级指南upgrade guide完成版本迁移。升级前建议重点确认若依赖漏洞扫描确认vulnerabilities.databases_path指向的路径存在且可读写并关注periodicity、recent_vulnerability_max_age是否符合告警节奏若准备启用漏洞 Webhook先在org_settings.webhook_settings.vulnerabilities_webhook中配置好destination_url并用host_batch_size控制请求体大小若使用 GitOps 模式注意 Settings 相关页面入口的迁移设置已从主导航移入 Account 下拉菜单GitOps 文件格式不受影响。完整的版本变更说明见仓库 CHANGELOG.md本版本的发布说明与配置示例可对照 docs/Configuration/yaml-files.md 和 docs/Configuration/fleet-server-configuration.md 继续深入阅读。【免费下载链接】fleetOpen device management项目地址: https://gitcode.com/GitHub_Trending/fl/fleet创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

伪全球变暖(PGW)方法:原理、实验设计与PGW4ERA5实操细节

伪全球变暖(PGW)方法:原理、实验设计与PGW4ERA5实操细节

做极端事件气候变化影响的研究,最让人头疼的一步往往不是模式本身,而是“怎么把未来的气候信号加到当前的真实天气过程里”。直接拿 GCM 输出驱动区域模式,模拟出来的天气系统经常在时间和位置上跟实况脱节,根本没法当成“同一个事…

2026/9/20 17:53:08 阅读更多 →
FUI框架节点路径校验:从白屏事故到构建门禁实战

FUI框架节点路径校验:从白屏事故到构建门禁实战

上个月因为这个事,我凌晨两点被叫起来,整个人是懵的。线上一个活动页面打开就是白屏,灰度放量才几分钟,运营的电话就打到技术负责人手机上了。后台日志看不到任何报错,客户端只能定位到一进页面就卡在UI加载那一步&…

2026/9/20 1:29:58 阅读更多 →
鸿蒙适配实战:用React Native开发个税计算器并解决白屏

鸿蒙适配实战:用React Native开发个税计算器并解决白屏

1. 从“会写RN”到“跑在鸿蒙上”,到底差在哪我第一次拿到“用 React Native 开发鸿蒙应用”这个需求时,第一反应是:这不就是把安卓包换个壳吗?等真正动手才发现,鸿蒙(HarmonyOS)的生态、构建链…

2026/9/20 20:38:03 阅读更多 →

最新新闻

使用 gatsby-transformer-screenshot 为网站 URL 自动生成截图:Gatsby 插件与 AWS Lambda 架构解析

使用 gatsby-transformer-screenshot 为网站 URL 自动生成截图:Gatsby 插件与 AWS Lambda 架构解析

使用 gatsby-transformer-screenshot 为网站 URL 自动生成截图:Gatsby 插件与 AWS Lambda 架构解析 【免费下载链接】gatsby React-based framework with performance, scalability, and security built in. 项目地址: https://gitcode.com/gh_mirrors/ga/gatsby …

2026/9/21 7:34:41 阅读更多 →
SQLModel 教程:为关联表创建行数据——外键列、自动刷新与连接团队和英雄

SQLModel 教程:为关联表创建行数据——外键列、自动刷新与连接团队和英雄

SQLModel 教程:为关联表创建行数据——外键列、自动刷新与连接团队和英雄 【免费下载链接】sqlmodel SQL databases in Python, designed for simplicity, compatibility, and robustness. 项目地址: https://gitcode.com/gh_mirrors/sq/sqlmodel 本指南基于…

2026/9/21 7:34:41 阅读更多 →
Mac录屏没声音?彻底搞定系统内录与无声排查方案

Mac录屏没声音?彻底搞定系统内录与无声排查方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/21 7:34:41 阅读更多 →
STM32F411CEU6上ADC-DMA协同实现高效电压采样

STM32F411CEU6上ADC-DMA协同实现高效电压采样

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/21 7:34:41 阅读更多 →
NetworkX 1.X 到 2.0 迁移指南:视图/迭代器 API、属性访问与函数命名空间的全面升级

NetworkX 1.X 到 2.0 迁移指南:视图/迭代器 API、属性访问与函数命名空间的全面升级

NetworkX 1.X 到 2.0 迁移指南:视图/迭代器 API、属性访问与函数命名空间的全面升级 【免费下载链接】networkx Network Analysis in Python 项目地址: https://gitcode.com/gh_mirrors/ne/networkx 本指南以仓库 doc/release/migration_guide_from_1.x_to_2.…

2026/9/21 7:34:41 阅读更多 →
VS Code 调试 STM32 实战:OpenOCD + Cortex-Debug 替代 Keil

VS Code 调试 STM32 实战:OpenOCD + Cortex-Debug 替代 Keil

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/21 7:33:41 阅读更多 →

日新闻

agents-generator 决策矩阵全解析:从项目检测到 AGENTS.md 规则生成的 16 步判定流程

agents-generator 决策矩阵全解析:从项目检测到 AGENTS.md 规则生成的 16 步判定流程

agents-generator 决策矩阵全解析:从项目检测到 AGENTS.md 规则生成的 16 步判定流程 【免费下载链接】agentic-awesome-skills AAS Core is the local, agent-first control plane for complete catalog discovery, agent-owned selection, stack validation, and …

2026/9/21 0:00:01 阅读更多 →
gin-vue-admin 前端工具函数全景指南:src/utils 复用规范与源码级解析

gin-vue-admin 前端工具函数全景指南:src/utils 复用规范与源码级解析

gin-vue-admin 前端工具函数全景指南:src/utils 复用规范与源码级解析 【免费下载链接】gin-vue-admin 🚀ViteVue3Gin拥有AI辅助的基础开发平台,企业级业务AI开发解决方案,内置mcp辅助服务,内置skills管理,…

2026/9/21 0:00:01 阅读更多 →
Wox 全功能插件开发实战指南:基于 Python / Node.js 宿主与 WebSocket 的持久化插件体系

Wox 全功能插件开发实战指南:基于 Python / Node.js 宿主与 WebSocket 的持久化插件体系

桌面应用AI 应用插件系统 【免费下载链接】Wox A cross-platform launcher that simply works 项目地址: https://gitcode.com/gh_mirrors/wo/Wox 点击查看 免费下载 全功能插件(Full-featured Plugin)是 Wox 三类插件实现方式中能力最完整的…

2026/9/21 0:00:01 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/21 3:13:20 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/21 2:19:36 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/21 4:51:05 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/19 23:01:36 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/19 17:50:38 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/19 23:35:34 阅读更多 →