7.5. 安全性

改进了pkcs11 的padding

在以前的版本中,pkcs11 令牌标签会对一些智能卡有额外的 padding。因此,错误的 padding 可能会导致基于 label 属性的匹配卡的问题。在这个版本中,所有卡的 padding 已被修复,并定义了 PKCS #11 URI,并在应用程序中匹配它们应如预期工作。

(BZ#1877973)

修复了 sealert 连接问题处理

在以前的版本中,setroubleshoot 守护进程的崩溃可能会导致 sealert 进程停止响应。因此,GUI 没有显示任何分析,也变得无响应,命令行工具不会打印任何输出结果,并在被终止前保持运行。这个版本改进了 sealertsetroubleshootd 之间的连接问题的处理。现在 sealert 报告错误消息,并在 setroubleshoot 守护进程崩溃时退出。

(BZ#1875290)

通过 setroubleshoot优化审计记录分析

在以前的版本中,setroubleshoot-3.3.23-1 中引入的新功能对性能有负面影响,这导致 AVC 分析比以前要最多慢 8 倍。这个版本提供了优化功能,可显著缩短 AVC 分析时间。

(BZ#1794807)

修复了 SELinux 策略接口解析程序

在以前的版本中,在安装一个在其接口文件中包含 ifndef 块的自定义策略时,策略接口解析器会导致出现语法错误消息。这个版本改进了接口文件解析,从而解决了这个问题。

(BZ#1868717)

setfiles 不会在标记错误时停止

在以前的版本中,当重新标记文件失败时,setfiles 工具会停止。因此,错误标记的文件保留在目标目录中。在这个版本中,setfiles 会跳过它无法重新标记的文件,因此 setfile 会处理目标目录中的所有文件。

BZ#1926386

现在,重建 SELinux 策略存储可以更好地解决电源失败

在以前的版本中,SELinux 策略重建会因为写缓存造成在电源出现问题时导致问题。因此,在策略重建过程中,SELinux 策略存储可能会在电源失败后崩溃。在这个版本中,libsemanage 库将所有待处理的修改写入元数据,并在使用前将缓存的文件数据写入包含策略存储的文件系统中。因此,策略存储现在可以在电源失败和其他中断的情况下,更好地修复。

BZ#1913224

libselinux 现在可以正确地决定 SELinux 用户的默认上下文

在以前的版本中,由于使用了已弃用的 security_compute_user() 函数,libselinux 库无法决定某些系统中 SELinux 用户的默认上下文。因此,在具有复杂的安全策略的系统中有些系统服务不可用。在这个版本中,libselinux 不再使用 security_compute_user(),无论策略复杂性如何,都无法正确决定 SELinux 用户的默认上下文。

(BZ#1879368)

rsync 模式中的 GEO-replication 不会再因为SELinux而 失败

在以前的版本中,SELinux 策略不允许运行在 rsync_t 下的进程设置 security.trusted 扩展属性的值。因此,Red Hat Gluster Storage(RHGS)中的 geo-replication 复制会失败。在这个版本中,新的SELinuxrsync_sys_admin布尔值允许rsync_t进程设置security.trusted。因此,如果启用了 rsync_sys_admin 布尔值,rsync 可以设置 security.trusted 扩展属性,geo-replication不会再失败。

(BZ#1889673)

OpenSCAP 现在可以在没有内存不足的情况下扫描含有大量文件的系统

在以前的版本中,当扫描内存较低和大量文件的系统时,OpenSCAP 扫描程序有时会导致系统内存不足。在这个版本中,OpenSCAP 扫描程序内存管理有所改进。因此,扫描程序在扫描大量文件时,在 RAM 较低的系统上不再耗尽内存,例如,软件包组 Server with GUIWorkstation

(BZ#1824152)

在引导时,使用 FAT 修复的系统不再失败

在以前的版本中,SCAP 安全指南(SSG)中的互联网安全中心(CIS)配置集包含一个规则,它禁用了负责访问 FAT 文件系统的内核模块的加载。因此,如果 SSG 修复了这个规则,系统将无法访问使用 FAT12、FAT16 和 FAT32 文件系统格式的分区,包括 EFI 系统分区(ESP)。这会导致系统无法引导。在这个版本中,该规则已从配置集中删除。因此,使用这些文件系统的系统不再无法引导。

BZ#1927019

OVAL 检查会将 GPFS 视为远程

在以前的版本中,OpenSCAP 扫描程序没有将挂载的 General Parallel File Systems(GPFS)识别为远程文件系统(FS)。因此,OpenSCAP 会在只应用于本地系统的 OVAL 检查中扫描 GPFS。这有时会导致扫描程序耗尽资源,且无法完成扫描。在这个版本中,GPFS 包含在远程 FS 列表中。因此,OVAL 检查可以正确地将 GPFS 视为远程 FS,扫描速度更快。

(BZ#1840579)

fapolicyd-selinux SELinux 策略现在涵盖了所有文件类型

在以前的版本中,fapolicyd-selinux SELinux 策略没有涵盖所有文件类型。因此,fapolicyd 服务无法访问位于非监控位置的文件,如 sysfs。在这个版本中,fapolicyd 服务涵盖并分析所有文件系统类型。

BZ#1940289

fapolicyd 不再阻止 RHEL 更新

当更新替换了正在运行的应用程序的二进制文件时,内核会通过附加 (删除) 后缀来修改内存中的应用程序二进制路径。在以前的版本中,fapolicyd 文件访问策略守护进程将此类应用程序视为不被信任。因此,fapolicyd 会阻止这些应用程序打开和执行任何其他文件。在这个版本中,fapolicyd 会忽略二进制路径中的后缀,以便二进制文件可以与信任的数据库匹配。因此,fapolicyd 会正确强制执行规则,更新过程也可以完成。

(BZ#1896875)

usbguard rebase 到 1.0.0-1

usbguard 软件包已更新到上游版本 1.0.0-1。这个版本提供改进和程序错误修复,重要的是:

  • 稳定的公共 API 可确保向后兼容。
  • rules.d 目录中的规则文件现在以字母数字顺序加载。
  • 修复了单个规则无法更改多个设备的策略的某些用例。
  • 根据标签过滤规则不再会产生错误。

(BZ#1887448)

usbguard 现在可以发送审计信息

作为服务强化的一部分,usbguard.service 的功能是有限的,同时缺少 CAP_AUDIT_WRITE这个 功能。因此,作为系统服务运行的 usbguard 无法发送审计事件。在这个版本中,服务配置已被更新,因此 USBGuard 可以发送审计信息。

BZ#1940060

Tangd 现在可以正确地处理无效请求

在以前的版本中,tangd 守护进程会对一些无效请求返回一个错误退出代码。因此, tangd.socket@.service 会失败,如果此类失败单元的数量增加,可能会造成问题。在这个版本中,tangd仅在tangd服务器本身遇到问题时,才会退出并产生错误代码。因此,tangd 可以正确处理无效的请求。

(BZ#1828558)