Bug 2213516

Summary: incorrect labels on /run/systemd/generator.late/efi.* files ?
Product: Red Hat Enterprise Linux 9 Reporter: Milos Malik <mmalik>
Component: selinux-policyAssignee: Zdenek Pytela <zpytela>
Status: CLOSED ERRATA QA Contact: Milos Malik <mmalik>
Severity: medium Docs Contact:
Priority: medium    
Version: 9.3CC: apeetham, lvrabec, mmalik, zpytela
Target Milestone: rcKeywords: Triaged
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: selinux-policy-38.1.18-1.el9 Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-11-07 08:52:30 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Milos Malik 2023-06-08 11:31:19 UTC
Description of problem:
Either the files are labeled correctly and the restorecon command messes them up,
or the files are labeled incorrectly and the restorecon command makes them correct.

# sesearch -s systemd_gpt_generator_t -t systemd_unit_file_t -c file -T
type_transition systemd_gpt_generator_t systemd_unit_file_t:file systemd_gpt_generator_unit_file_t;
# semanage fcontext -l | grep /generator
/usr/lib/systemd/generator/lvm.*                   all files          system_u:object_r:lvm_unit_file_t:s0 
/run/systemd/generator = /usr/lib/systemd/system
/run/systemd/generator.late = /usr/lib/systemd/system
# matchpathcon /run/systemd/generator
/run/systemd/generator	system_u:object_r:systemd_unit_file_t:s0
# matchpathcon /run/systemd/generator.early
/run/systemd/generator.early	system_u:object_r:init_var_run_t:s0
# matchpathcon /run/systemd/generator.late
/run/systemd/generator.late	system_u:object_r:systemd_unit_file_t:s0
#

Version-Release number of selected component (if applicable):
selinux-policy-38.1.14-1.el9.noarch
selinux-policy-targeted-38.1.14-1.el9.noarch

How reproducible:
 * some of our automated tests find the issue, but I don't know the exact cause

Steps to Reproduce:
# restorecon -Rv /run

Actual results:
Relabeled /run/systemd/generator.late/efi.automount from system_u:object_r:systemd_gpt_generator_unit_file_t:s0 to system_u:object_r:systemd_unit_file_t:s0
Relabeled /run/systemd/generator.late/efi.mount from system_u:object_r:systemd_gpt_generator_unit_file_t:s0 to system_u:object_r:systemd_unit_file_t:s0

Expected results:
 * output of the restorecon command is empty, because the files are already labeled correctly

Comment 1 Zdenek Pytela 2023-06-08 13:13:16 UTC
Firstly, one entry is missing:
# semanage fcontext -l | grep generator.*=
/run/systemd/generator = /usr/lib/systemd/system
/run/systemd/generator.late = /usr/lib/systemd/system
# matchpathcon /run/systemd/generator.early
/run/systemd/generator.early	system_u:object_r:init_var_run_t:s0

Secondly, fc entries do not back existing transitions:
# sesearch -s systemd_gpt_generator_t -t systemd_unit_file_t -c file -T
type_transition systemd_gpt_generator_t systemd_unit_file_t:file systemd_gpt_generator_unit_file_t;

# semanage fcontext -l | grep /run/systemd/generator
/run/systemd/generator = /usr/lib/systemd/system
/run/systemd/generator.late = /usr/lib/systemd/system

We probably need to change the unnamed transition to named one.

Comment 3 Zdenek Pytela 2023-07-13 20:31:21 UTC
dist-git commit to backport:

commit 1ade1aa864681105ea81e6ec4a600acf47e72516
Author: Zdenek Pytela <zpytela>
Date:   Thu Jul 13 21:41:25 2023 +0200

    Define equivalency for /run/systemd/generator.early

Comment 12 errata-xmlrpc 2023-11-07 08:52:30 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (selinux-policy bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2023:6617