Bug 2258109

Summary: wrong labeling of pulpcore-api and pulpcore-content processes can lead to SELinux denials
Product: Red Hat Satellite Reporter: Evgeni Golov <egolov>
Component: InstallationAssignee: satellite6-bugs <satellite6-bugs>
Status: CLOSED ERRATA QA Contact: Griffin Sullivan <gsulliva>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.15.0CC: gsulliva, rlavi, zhunting
Target Milestone: 6.15.0Keywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: pulpcore-selinux-2.0.1 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-04-23 17:17:12 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 Evgeni Golov 2024-01-12 16:42:09 UTC
Description of problem:
since pulpcore 3.33 there are new binaries to start pulpcore services, but those binaries were not properly labeled with pulpcore_server_exec_t like their old counterpart gunicorn
without that label, the services run as unconfined_service_t, which results in errors like httpd not being able to connect to them

The denial I am seeing is btw:

time->Wed Jan 10 08:24:36 2024
type=PROCTITLE msg=audit(1704875076.749:5217): proctitle=2F7573722F7362696E2F6874747064002D44464F524547524F554E44
type=SYSCALL msg=audit(1704875076.749:5217): arch=c000003e syscall=42 success=no exit=-13 a0=17 a1=7f6844045130 a2=18 a3=7f680c007060 items=0 ppid=57049 pid=57050 auid=4294967295 uid=48 gid=48 euid=48 suid=48 fsuid=48 egid=48 sgid=48 fsgid=48 tty=(none) ses=4294967295 comm="httpd" exe="/usr/sbin/httpd" subj=system_u:system_r:httpd_t:s0 key=(null)
type=AVC msg=audit(1704875076.749:5217): avc:  denied  { connectto } for  pid=57050 comm="httpd" path="/run/pulpcore-api.sock" scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:system_r:unconfined_service_t:s0 tclass=unix_stream_socket permissive=0

note that tcontext is unconfined_service_t which is wrong :)

Version-Release number of selected component (if applicable):
Satellite 6.15

How reproducible:
100%

Steps to Reproduce:
1. ps auxZ | grep pulpcore-

Actual results:
pulpcore-api and pulpcore-content services are running as unconfined_service_t


Expected results:
pulpcore-api and pulpcore-content services are running as pulpcore_server_t

Additional info:

Comment 2 Griffin Sullivan 2024-01-18 14:08:13 UTC
Verified on 6.15.0 snap 7

pulpcore-api and pulpcore-content services are running as pulpcore_server_t

Steps to Reproduce:
1. ps auxZ | grep pulpcore-

Results: 

All pulpcore-api and pulpcore-content services are running as pulpcore_server_t

Comment 6 errata-xmlrpc 2024-04-23 17:17:12 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 (Important: Satellite 6.15.0 release), 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/RHSA-2024:2010