Bug 951715 - AVC denials from ovs-vsctl
Summary: AVC denials from ovs-vsctl
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: selinux-policy
Version: 18
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Miroslav Grepl
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-04-12 20:54 UTC by Ryan O'Hara
Modified: 2013-04-18 02:52 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-04-18 02:52:42 UTC


Attachments (Terms of Use)
Partial audit.log containing relevant AVCs. (6.33 KB, application/octet-stream)
2013-04-12 20:54 UTC, Ryan O'Hara
no flags Details

Description Ryan O'Hara 2013-04-12 20:54:39 UTC
Created attachment 734977 [details]
Partial audit.log containing relevant AVCs.

On Fedora 18 with selinux set to enforcing, ovs-vsctl is getting AVC denials:

$ rpm -q selinux-policy
selinux-policy-3.11.1-86.fc18.noarch

$ getenforce 
Enforcing

With the quantum-openvswitch-agent enable, ovs-vsctl is being called repeatedly, each time generating the following AVC:

type=AVC msg=audit(1365797926.454:102983): avc:  denied  { execute } for  pid=22881 comm="python" name="ovs-vsctl" dev="vda3" ino=163045 scontext=system_u:system_r:quantum_t:s0 tcontext=system_u:object_r:openvswitch_exec_t:s0 tclass=file

If I set selinux to permissive, I get a few other AVCs:

$ setenforce 0
$ getenforce 
Permissive

type=AVC msg=audit(1365797928.458:102996): avc:  denied  { execute } for  pid=22908 comm="python" name="ovs-vsctl" dev="vda3" ino=163045 scontext=system_u:system_r:quantum_t:s0 tcontext=system_u:object_r:openvswitch_exec_t:s0 tclass=file
type=AVC msg=audit(1365797928.476:102997): avc:  denied  { read open } for  pid=22910 comm="python" path="/usr/bin/ovs-vsctl" dev="vda3" ino=163045 scontext=system_u:system_r:quantum_t:s0 tcontext=system_u:object_r:openvswitch_exec_t:s0 tclass=file
type=AVC msg=audit(1365797928.476:102997): avc:  denied  { execute_no_trans } for  pid=22910 comm="python" path="/usr/bin/ovs-vsctl" dev="vda3" ino=163045 scontext=system_u:system_r:quantum_t:s0 tcontext=system_u:object_r:openvswitch_exec_t:s0 tclass=file
type=AVC msg=audit(1365797928.486:102998): avc:  denied  { search } for  pid=22910 comm="ovs-vsctl" name="openvswitch" dev="tmpfs" ino=109622 scontext=system_u:system_r:quantum_t:s0 tcontext=system_u:object_r:openvswitch_var_run_t:s0 tclass=dir
type=AVC msg=audit(1365797928.486:102998): avc:  denied  { write } for  pid=22910 comm="ovs-vsctl" name="db.sock" dev="tmpfs" ino=109630 scontext=system_u:system_r:quantum_t:s0 tcontext=system_u:object_r:openvswitch_var_run_t:s0 tclass=sock_file
type=AVC msg=audit(1365797928.486:102998): avc:  denied  { connectto } for  pid=22910 comm="ovs-vsctl" path="/run/openvswitch/db.sock" scontext=system_u:system_r:quantum_t:s0 tcontext=system_u:system_r:openvswitch_t:s0 tclass=unix_stream_socket

And the original 'execute' AVC stops.

Comment 1 Lon Hohberger 2013-04-12 21:02:41 UTC
A quick guess:

Maybe something like this in openvswitch.te:

interface(`ovsvsctl_domtrans',`
        gen_require(`
                type openvswitch_t, openvswitch_exec_t;
        ')

        corecmd_search_bin($1)
        domtrans_pattern($1, openvswitch_exec_t, openvswitch_t)
')


And in quantum.te:

optional_policy(`
  ovsvsctl_domtrans(quantum_t)
')


?

Comment 2 Lon Hohberger 2013-04-12 21:03:05 UTC
Whoops first part would be in openvswitch.if

Comment 3 Miroslav Grepl 2013-04-15 06:01:07 UTC
Added.

commit fe27028c37e0eee41db98a82977ea5c86d7687cb
Author: Miroslav Grepl <mgrepl@redhat.com>
Date:   Mon Apr 15 08:00:34 2013 +0200

    Allow quantum to transition to openvswitch_t

Comment 4 Fedora Update System 2013-04-15 11:12:37 UTC
selinux-policy-3.11.1-90.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/selinux-policy-3.11.1-90.fc18

Comment 5 Fedora Update System 2013-04-16 00:08:09 UTC
Package selinux-policy-3.11.1-90.fc18:
* should fix your issue,
* was pushed to the Fedora 18 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing selinux-policy-3.11.1-90.fc18'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-5742/selinux-policy-3.11.1-90.fc18
then log in and leave karma (feedback).

Comment 6 Fedora Update System 2013-04-18 02:52:44 UTC
selinux-policy-3.11.1-90.fc18 has been pushed to the Fedora 18 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.