Bug 1451377

Summary: SELinux is preventing accounts-daemon from using the 'dac_read_search' capabilities.
Product: [Fedora] Fedora Reporter: Delete My Account <c.crispino8611>
Component: selinux-policyAssignee: Lukas Vrabec <lvrabec>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 27CC: alciregi, alick9188, amessina, awilliam, baptiste.millemathias, brunch875, buzire.rhn, carl, dominick.grift, dwalsh, fedora, igeorgex, iliketurtlesbro, jfrieben, kparal, lvrabec, mgrepl, mikhail.v.gavrilov, nils.tonnaett, plautrba, pmoore, rxguy, ssekidde, vondruch
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard: AcceptedBlocker abrt_hash:7f0096e1b311125ce6e727e034242a4865f79cd0e9a9e92274ecd7036e106960;
Fixed In Version: selinux-policy-3.13.1-273.fc27 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-08-24 07:41:07 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1396704    

Description Delete My Account 2017-05-16 14:22:59 UTC
Description of problem:
SELinux is preventing accounts-daemon from using the 'dac_read_search' capabilities.

*****  Plugin dac_override (91.4 confidence) suggests   **********************

If si vuole aiutare ad identificare se al dominio serva questo accesso o se si possiede un file con i permessi sbagliati sul sistema
Then attivare l'auditing completo per ottenere le informazioni del percorso del file incriminato e generare nuovamente l'errore.
Do

Attivare il controllo completo auditing
# auditctl -w /etc/shadow -p w
Provare a ricreare AVC. Eseguire quindi
# ausearch -m avc -ts recent
Qualora si noti il record PATH, controllare la proprietà/i permessi sul file e correggerli,
altrimenti registrare un bugzilla.

*****  Plugin catchall (9.59 confidence) suggests   **************************

If si pensa che accounts-daemon dovrebbe avere funzionalità dac_read_search in modo predefinito.
Then si dovrebbe riportare il problema come bug.
E' possibile generare un modulo di politica locale per consentire questo accesso.
Do
allow this access for now by executing:
# ausearch -c 'accounts-daemon' --raw | audit2allow -M my-accountsdaemon
# semodule -X 300 -i my-accountsdaemon.pp

Additional Information:
Source Context                system_u:system_r:accountsd_t:s0
Target Context                system_u:system_r:accountsd_t:s0
Target Objects                Unknown [ capability ]
Source                        accounts-daemon
Source Path                   accounts-daemon
Port                          <Unknown>
Host                          (removed)
Source RPM Packages           
Target RPM Packages           
Policy RPM                    selinux-policy-3.13.1-253.fc27.noarch
Selinux Enabled               True
Policy Type                   targeted
Enforcing Mode                Enforcing
Host Name                     (removed)
Platform                      Linux (removed) 4.12.0-0.rc0.git9.1.fc27.x86_64 #1
                              SMP Sat May 13 13:39:12 UTC 2017 x86_64 x86_64
Alert Count                   10
First Seen                    2017-05-07 08:23:33 CEST
Last Seen                     2017-05-16 16:20:42 CEST
Local ID                      b0227745-68ed-4250-90a0-2b3466c64b40

Raw Audit Messages
type=AVC msg=audit(1494944442.255:303): avc:  denied  { dac_read_search } for  pid=619 comm="accounts-daemon" capability=2  scontext=system_u:system_r:accountsd_t:s0 tcontext=system_u:system_r:accountsd_t:s0 tclass=capability permissive=0


Hash: accounts-daemon,accountsd_t,accountsd_t,capability,dac_read_search

Version-Release number of selected component:
selinux-policy-3.13.1-253.fc27.noarch

Additional info:
component:      selinux-policy
reporter:       libreport-2.9.1
hashmarkername: setroubleshoot
kernel:         4.12.0-0.rc0.git9.1.fc27.x86_64
type:           libreport

Comment 1 Bruno Javier Blasco Smaranda 2017-06-06 09:01:48 UTC
Description of problem:
This is a fresh rawhide installation upgraded from a fresh f25 installation using the dnf upgrade plugin
I was told in IRC  the issue is due to a kernel change where the order of dac_read_search and dac_override changed to fix check dac_read_search

Version-Release number of selected component:
selinux-policy-3.13.1-255.fc27.noarch

Additional info:
reporter:       libreport-2.9.1
hashmarkername: setroubleshoot
kernel:         4.12.0-0.rc3.git0.2.fc27.x86_64
type:           libreport

Comment 2 Adam Williamson 2017-06-19 23:42:48 UTC
Description of problem:
Occurs on first boot of an install of current Rawhide Workstation.

Version-Release number of selected component:
selinux-policy-3.13.1-258.fc27.noarch

Additional info:
reporter:       libreport-2.9.1
hashmarkername: setroubleshoot
kernel:         4.12.0-0.rc5.git2.1.fc27.x86_64
type:           libreport

Comment 3 Adam Williamson 2017-06-19 23:46:27 UTC
Proposing as an F27 Final blocker: "There must be no SELinux denial notifications or crash notifications on boot of or during installation from a release-blocking live image, or at first login after a default install of a release-blocking desktop."

Comment 4 Adam Williamson 2017-06-19 23:47:11 UTC
This is clearly not fixed.

Comment 5 Mikhail 2017-07-15 16:35:37 UTC
Description of problem:
Just load Rawhide from USB stick

Version-Release number of selected component:
selinux-policy-3.13.1-263.fc27.noarch

Additional info:
reporter:       libreport-2.9.1
hashmarkername: setroubleshoot
kernel:         4.13.0-0.rc0.git6.1.fc27.x86_64
type:           libreport

Comment 6 Jan Kurik 2017-08-15 08:45:47 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 27 development cycle.
Changing version to '27'.

Comment 7 Nils Tonnätt 2017-08-15 18:41:32 UTC
Happens also on Fedora 26 after turning off and on Wifi.

Comment 8 Kamil Páral 2017-08-21 17:29:02 UTC
Discussed during blocker review [1]:

AcceptedBlocker (Final) - clear violations of Final criterion "There must be no SELinux denial notifications or crash notifications on boot of or during installation from a release-blocking live image, or at first login after a default install of a release-blocking desktop."

[1] https://meetbot-raw.fedoraproject.org/fedora-blocker-review/2017-08-21/

Comment 9 Lukas Vrabec 2017-08-24 07:41:07 UTC
# audit2allow -i avc 


#============= accountsd_t ==============

#!!!! This avc is allowed in the current policy
allow accountsd_t self:capability dac_read_search;

# rpm -q selinux-policy 
selinux-policy-3.13.1-273.fc27.noarch

# sesearch -A -s accountsd_t -t accountsd_t -c capability -p dac_read_search 
allow accountsd_t accountsd_t:capability { audit_control chown dac_override dac_read_search setgid setuid sys_ptrace };

This bug is fixed in the latest selinux-policy build in koji.

Comment 10 JM 2017-08-25 10:29:05 UTC
Same problem with Fedora 25 and selinux-policy-3.13.1-225.19.fc25.noarch

Comment 11 buzire.rhn 2017-08-27 09:34:36 UTC
It does happen on F25:

$ rpm -q selinux-policy
selinux-policy-3.13.1-225.19.fc25.noarch
$ sesearch -A -s accountsd_t -t accountsd_t -c capability -p dac_read_search 
[nothing]

The installation was an upgrade, if that matters.