鲲鹏社区首页
中文
注册
如何使用A-Ops进行智能补丁管理

如何使用A-Ops进行智能补丁管理

智能补丁

发表于 2023/12/27

0

A-Ops智能运维工具的智能补丁管理模块(apollo)主要集成了漏洞扫描、CVE修复、任务回退、热补丁移除等核心功能:

a. 支持对openEuler已修复并发布的漏洞进行手动/定时扫描。漏洞的详细信息通过在线/离线拉取社区发布的安全公告进行同步。

b. 支持对内核漏洞批量修复。修复过程中,客户端会命令行调用基于dnf原生框架的dnf hotpatch插件,实现冷补丁(需重启)/热补丁(免重启)的修复。此插件将底层冷、热补丁的管理封装成统一的入口,方便单机用户的使用和集群的调用。

c. 支持通过任务粒度回退或移除热补丁的形式,将系统恢复至原状态。

下文将按照漏洞修复的工作流来进行A-Ops智能补丁管理功能的介绍。

配置repo源

漏洞管理界面用于对目标主机存在的CVE进行监控与修复。

当前漏洞管理模块分为以下三个界面:

• 主机列表界面

• CVEs界面

• 任务列表界面

1. Repo源添加

进入漏洞管理的主机管理子页面,可以从主机粒度看到当前纳管的所有主机的已修复和未修复漏洞情况:

openEuler的漏洞信息通过安全公告对外发布时,会同时在update源中发布修复所用的软件包。配置了该update源后即可在命令行通过dnf updateinfo list cves命令或dnf hot-updateinfo list cves(需安装A-Ops的dnf热补丁插件)进行漏洞的扫描。

默认的openEuler系统安装后自带对应OS版本的冷补丁update源,用户也可以通过设置repo来自行配置冷/热补丁的update源。

点击下方CVE REPO的加号框,即可进行repo源的添加:

2. repo源设置

新建repo源后,点击右上角设置repo的按钮,可以创建一个任务,为勾选的主机进行批量的repo设置。

点击创建后会生成一个repo设置任务,执行完毕后即可在主机列表界面看到已设置好该repo源。

漏洞扫描

确认好主机上已配置好repo源后,我们就可以为主机进行批量扫描了。直接点击右侧的漏洞扫描,默认扫描全部主机。用户也可以勾选部分主机进行扫描。

除了手动扫描,用户也可以配置后台定时任务,进行每日定时扫描。

扫描完毕后,若用户配置了邮箱信息,apollo会将漏洞情况邮件发送给用户。

漏洞查看

1. 主机详情信息界面

扫描完毕后,除了主机列表可以看到每个主机的已修复和未修复的CVE数量,还可以点击某台主机查看详细的CVE信息:

支持如下操作:

• 查看主机基本信息与CVE个数

• 进行漏洞扫描

• 生成CVE修复任务(切换至“未修复”时,才可支持CVE修复任务创建),可支持CVE粒度的任务创建,同时也可具体到特定的rpm包修复

• 生成热补丁移除任务(切换至“已修复”时,才可支持生成热补丁移除任务)

• 查看当前主机CVE列表信息(可根据严重性与状态进行筛选,可根据CVE发布时间与CVSS分数进行排序,可根据CVE ID进行检索)

• 点击CVE ID可跳转CVE详情界面

• 主机CVE信息导出

2. CVE列表界面

上文介绍了从主机维度查看漏洞情况,我们也可以从漏洞维度去查看我们重点关注的漏洞。

点击CVEs子页面,可以看到未修复和已修复两个页签,下方详细介绍了每个CVE的发布时间、影响软件包、严重性等信息,展开后则能看到描述信息及受影响的rpm包和支持的修复方式。

支持如下操作:

• 查看所有CVE信息(可根据CVE严重性、CVE ID、发布时间、CVSS分数、主机数量进行排序,可根据CVE ID进行检索)

• 上传安全公告

• 切换至“未修复”的CVE时,可生成CVE修复任务

• 切换至“已修复”的CVE时,针对热补丁修复的CVE,可生成热补丁移除任务

• 支持查看已修复和未修复CVE涉及的RPM和对应的主机信息

漏洞的描述及分数等信息来源自社区发布的安全公告,这里对安全公告的上传简单说明:

apollo支持后台配置,定时从openEuler官网下载安全公告信息。针对无法连接外网的环境,提供了安全公告的手动上传功能。可以从安全公告地址进行下载并上传压缩包:https://repo.openeuler.org/security/data/cvrf/


3. CVE详情界面

和主机详情界面类似,在CVE列表界面点击某一个CVE即可进入CVE详情界面。可以看到此漏洞影响的所有主机和已修复这个漏洞的主机。

支持如下操作:

• 查看CVE基本信息

• 查看关联CVE数量,即影响同样源码包(如kernel)的CVE

• 查看用户对该CVE的状态标记

• 查看受此CVE影响的主机列表以及某主机上受此CVE影响的rpm包列表

• 可点击主机名称跳转至主机详情界面

• 选择“未修复”后,生成CVE修复任务

• 选择“已修复”后,生成热补丁移除任务

漏洞修复

1. 漏洞修复任务创建

在CVE列表、CVE详情、主机详情界面均可进行漏洞的批量修复。这里以主机详情界面为实例,选中CVE点击生成修复按钮,右侧会出现弹窗。

其中针对热补丁,有2个按钮:

a. 是否accept:勾选后会在重启后自动激活此次修复使用的热补丁

b. 冷补丁收编:勾选后,会同步生成热补丁对应的冷补丁的修复任务

需额外注意的是,为了方便执行以及后续的任务回滚,生成任务时会自动将冷、热补丁的修复动作拆分成两个任务,可以通过任务名进行分辨。

2. 漏洞修复任务执行

生成任务后可以点击立即跳转到该任务详情,或点击左侧的任务子页面,进入任务列表界面:

点击刚才生成的修复任务,可以看到此任务的基础信息,以及下方的主机以及该主机要修复的软件包信息。点击右侧的执行按钮即可执行。

3. 任务报告查看

执行完毕后,可以看到任务的“上次执行时间”发生更新,并出现“查看报告”按钮。点击查看报告,即可查看各主机的执行情况:

修复任务回滚

进入修复任务详情,点击生成回滚任务,即可对该修复任务进行回退:

进入回滚任务详情,与修复任务相反,可以看见当前已安装的软件包(修复时安装的rpm),以及回退后的目标软件包(修复前的rpm)。执行时点击“执行”按钮即可。

热补丁移除任务

若对已安装的热补丁不满意,可以在任意“已修复”的列表,勾选CVE或主机,生成热补丁移除任务。

与回滚任务相比,热补丁移除任务只针对热补丁,且不支持对热补丁的升降级处理,只通过dnf操作将热补丁rpm进行移除。

本页内容