Bug 1151030

Summary: after a crash, SELinux is preventing sosreport to mkdir
Product: Red Hat Enterprise Linux 7 Reporter: Martin Žember <mzember>
Component: selinux-policyAssignee: Miroslav Grepl <mgrepl>
Status: CLOSED ERRATA QA Contact: Martin Žember <mzember>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 7.1CC: dapospis, ebenes, mmalik
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: selinux-policy-3.13.1-5.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-03-05 10:45:50 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:
Attachments:
Description Flags
AVCs caught in enforcing mode
none
AVCs caught in permissive mode
none
AVCs caught in permissive mode (original tshark crash) none

Description Martin Žember 2014-10-09 12:51:08 UTC
Description of problem:
SELinux is preventing /usr/bin/python2.7 from 'write' accesses on the directory .

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


How reproducible:
Always

Steps to Reproduce:
1. Default installation (ABRT enabled)
2. tshark -nxr <bz1010028 crash reproducing pcap>

Actual results:
SELinux AVC

Expected results:


Additional info:

*****  Plugin catchall (100. confidence) suggests   **************************

If you believe that python2.7 should be allowed write access on the  directory by default.
Then you should report this as a bug.
You can generate a local policy module to allow this access.
Do
allow this access for now by executing:
# grep yum /var/log/audit/audit.log | audit2allow -M mypol
# semodule -i mypol.pp

Additional Information:
Source Context                system_u:system_r:sosreport_t:s0-s0:c0.c1023
Target Context                system_u:object_r:cert_t:s0
Target Objects                 [ dir ]
Source                        yum
Source Path                   /usr/bin/python2.7
Port                          <Unknown>
Host                          (removed)
Source RPM Packages           python-2.7.5-16.el7.x86_64
Target RPM Packages           
Policy RPM                    selinux-policy-3.13.1-2.el7.noarch
Selinux Enabled               True
Policy Type                   targeted
Enforcing Mode                Enforcing
Host Name                     (removed)
Platform                      Linux (removed) 3.10.0-123.el7.x86_64 #1 SMP Mon
                              May 5 11:16:57 EDT 2014 x86_64 x86_64
Alert Count                   12
First Seen                    2014-10-09 14:06:52 CEST
Last Seen                     2014-10-09 14:17:22 CEST
Local ID                      11c27063-6f54-4e31-be65-0847b0f61b75

Raw Audit Messages
type=AVC msg=audit(1412857042.121:23047): avc:  denied  { write } for  pid=13052 comm="rhsm-debug" name="pki" dev="dm-1" ino=2359306 scontext=system_u:system_r:sosreport_t:s0-s0:c0.c1023 tcontext=system_u:object_r:cert_t:s0 tclass=dir


type=SYSCALL msg=audit(1412857042.121:23047): arch=x86_64 syscall=mkdir success=no exit=EACCES a0=29291d0 a1=1ff a2=7f916b0e1f88 a3=7fff9f5f8ad0 items=0 ppid=13051 pid=13052 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm=rhsm-debug exe=/usr/bin/python2.7 subj=system_u:system_r:sosreport_t:s0-s0:c0.c1023 key=(null)

Hash: yum,sosreport_t,cert_t,dir,write

Comment 1 Miroslav Grepl 2014-10-09 16:26:04 UTC
Martin,
are you getting more AVCs in permissive mode? Did it work correctly? I believe we can dontaudit it.

Comment 2 Milos Malik 2014-10-09 18:59:13 UTC
Here is my reproducer, but it uses a different ABRT addon:

# sleep 120 &
[1] 2315
# kill -6 2315
# 
[1]+  Aborted                 (core dumped) sleep 120
#

Here are suggestions produced by audit2allow (enforcing mode):

allow sosreport_t NetworkManager_t:dbus send_msg;
allow sosreport_t NetworkManager_var_run_t:sock_file write;
allow sosreport_t self:netlink_audit_socket create;
allow sosreport_t semanage_store_t:dir write;
allow sosreport_t var_lib_nfs_t:dir write;

Gathered AVCs will be attached.

Comment 3 Milos Malik 2014-10-09 19:14:30 UTC
Created attachment 945427 [details]
AVCs caught in enforcing mode

Comment 4 Milos Malik 2014-10-09 19:14:57 UTC
Created attachment 945428 [details]
AVCs caught in permissive mode

Comment 5 Martin Žember 2014-10-10 01:27:40 UTC
Created attachment 945457 [details]
AVCs caught in permissive mode (original tshark crash)

Comment 6 Miroslav Grepl 2014-10-10 10:30:12 UTC
commit a42d8becdd28570605c380d07a940c7284de4730
Author: Miroslav Grepl <mgrepl>
Date:   Fri Oct 10 12:29:56 2014 +0200

    Make sosreport as unconfined domain.

Comment 12 errata-xmlrpc 2015-03-05 10:45:50 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, 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://rhn.redhat.com/errata/RHBA-2015-0458.html