Bug 1346316

Summary: SELinux is preventing /usr/bin/python2.7 from 'write' accesses on the directory /etc/sysconfig/network-scripts.
Product: Red Hat Enterprise Linux 7 Reporter: David Jaša <djasa>
Component: selinux-policyAssignee: Lukas Vrabec <lvrabec>
Status: CLOSED ERRATA QA Contact: Milos Malik <mmalik>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.3CC: djasa, lvrabec, mgrepl, mmalik, plautrba, pvrabec, ssekidde
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard: abrt_hash:2082789ea4234cec2c3604c3ceb234dbc8645948c96d3995f447608c6169a3fe
Fixed In Version: selinux-policy-3.13.1-83.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-11-04 02:31:57 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:

Description David Jaša 2016-06-14 14:09:38 UTC
Description of problem:
SELinux is preventing /usr/bin/python2.7 from 'write' accesses on the directory /etc/sysconfig/network-scripts.

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

If you believe that python2.7 should be allowed write access on the network-scripts 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:
# ausearch -c 'firewalld' --raw | audit2allow -M my-firewalld
# semodule -i my-firewalld.pp

Additional Information:
Source Context                system_u:system_r:firewalld_t:s0
Target Context                system_u:object_r:net_conf_t:s0
Target Objects                /etc/sysconfig/network-scripts [ dir ]
Source                        firewalld
Source Path                   /usr/bin/python2.7
Port                          <Unknown>
Host                          (removed)
Source RPM Packages           python-2.7.5-44.el7.x86_64
Target RPM Packages           initscripts-9.49.30-1.el7_2.2.x86_64
Policy RPM                    selinux-policy-3.13.1-78.el7.noarch
Selinux Enabled               True
Policy Type                   targeted
Enforcing Mode                Enforcing
Host Name                     (removed)
Platform                      Linux (removed)
                              3.10.0-429.el7.BZ1332712_usbv4.6.x86_64 #1 SMP Thu
                              Jun 9 10:21:02 EDT 2016 x86_64 x86_64
Alert Count                   2
First Seen                    2016-06-13 17:39:03 CEST
Last Seen                     2016-06-14 14:58:45 CEST
Local ID                      cd43b8f1-ba32-40eb-aa26-250a62519c25

Raw Audit Messages
type=AVC msg=audit(1465909125.934:834): avc:  denied  { write } for  pid=1345 comm="firewalld" name="network-scripts" dev="dm-4" ino=12703240 scontext=system_u:system_r:firewalld_t:s0 tcontext=system_u:object_r:net_conf_t:s0 tclass=dir


type=SYSCALL msg=audit(1465909125.934:834): arch=x86_64 syscall=open success=no exit=EACCES a0=34e8030 a1=200c2 a2=180 a3=4 items=0 ppid=1 pid=1345 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm=firewalld exe=/usr/bin/python2.7 subj=system_u:system_r:firewalld_t:s0 key=(null)

Hash: firewalld,firewalld_t,net_conf_t,dir,write

Version-Release number of selected component:
selinux-policy-3.13.1-78.el7.noarch

Additional info:
reporter:       libreport-2.1.11.1
hashmarkername: setroubleshoot
kernel:         3.10.0-429.el7.BZ1332712_usbv4.6.x86_64
reproducible:   Not sure how to reproduce the problem
type:           libreport

Comment 1 Miroslav Grepl 2016-06-29 08:11:32 UTC
Could you please re-test it with permissive mode and attach raw AVC msgs?

Thank you.

Comment 2 David Jaša 2016-06-30 15:56:50 UTC
AVC messages:

type=AVC msg=audit(1467301801.810:319): avc:  denied  { create } for  pid=1091 comm="firewalld" name="ifcfg-br0.tgnR8E" scontext=system_u:system_r:firewalld_t:s0 tcontext=system_u:object_r:net_conf_t:s0 tclass=file
type=AVC msg=audit(1467301801.810:319): avc:  denied  { write } for  pid=1091 comm="firewalld" path="/etc/sysconfig/network-scripts/ifcfg-br0.tgnR8E" dev="dm-4" ino=12708402 scontext=system_u:system_r:firewalld_t:s0 tcontext=system_u:object_r:net_conf_t:s0 tclass=file
type=AVC msg=audit(1467301801.810:320): avc:  denied  { setattr } for  pid=1091 comm="firewalld" name="ifcfg-br0.old" dev="dm-4" ino=12584113 scontext=system_u:system_r:firewalld_t:s0 tcontext=system_u:object_r:net_conf_t:s0 tclass=file
type=AVC msg=audit(1467301801.811:321): avc:  denied  { rename } for  pid=1091 comm="firewalld" name="ifcfg-br0.tgnR8E" dev="dm-4" ino=12708402 scontext=system_u:system_r:firewalld_t:s0 tcontext=system_u:object_r:net_conf_t:s0 tclass=file
type=AVC msg=audit(1467301801.811:321): avc:  denied  { unlink } for  pid=1091 comm="firewalld" name="ifcfg-br0" dev="dm-4" ino=12698511 scontext=system_u:system_r:firewalld_t:s0 tcontext=system_u:object_r:net_conf_t:s0 tclass=file


and corresponding /var/log/firewalld (not exactly but the same program touching almost the same files during analogous action - network interface status change):

2016-06-29 17:32:27 ERROR: Failed to open temporary file: [Errno 13] Permission denied: '/etc/sysconfig/network-scripts/ifcfg-br0.XMSRHp'
2016-06-29 17:32:27 ERROR: Calling post func <function ifcfg_set_zone_of_interface at 0x7f2ae7750578>(('', 'br0')) failed: [Errno 13] Permission denied: '/etc/sysconfig/network-scripts/ifcfg-br0.XMSRHp'

Comment 6 errata-xmlrpc 2016-11-04 02:31:57 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-2016-2283.html