Bug 544853

Summary: SELinux is preventing /usr/bin/Xorg from loading /opt/VBoxGuestAdditions-3.1.0/lib/VBoxOGL.so which requires text relocation.
Product: [Fedora] Fedora Reporter: Bob Peers <linux>
Component: selinux-policyAssignee: Daniel Walsh <dwalsh>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 12CC: dwalsh, mgrepl, mmiller6
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard: setroubleshoot_trace_hash:00416625b345e4002324e0c8bd4b89ae60439b9938fc61d77176b48861c5b98c
Fixed In Version: 3.6.32-56.fc12 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-12-15 20:07:12 EST Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Description Bob Peers 2009-12-06 14:42:10 EST
Summary:

SELinux is preventing /usr/bin/Xorg from loading
/opt/VBoxGuestAdditions-3.1.0/lib/VBoxOGL.so which requires text relocation.

Detailed Description:

[Xorg has a permissive type (xserver_t). This access was not denied.]

The Xorg application attempted to load
/opt/VBoxGuestAdditions-3.1.0/lib/VBoxOGL.so which requires text relocation.
This is a potential security problem. Most libraries do not need this
permission. Libraries are sometimes coded incorrectly and request this
permission. The SELinux Memory Protection Tests
(http://people.redhat.com/drepper/selinux-mem.html) web page explains how to
remove this requirement. You can configure SELinux temporarily to allow
/opt/VBoxGuestAdditions-3.1.0/lib/VBoxOGL.so to use relocation as a workaround,
until the library is fixed. Please file a bug report.

Allowing Access:

If you trust /opt/VBoxGuestAdditions-3.1.0/lib/VBoxOGL.so to run correctly, you
can change the file context to textrel_shlib_t. "chcon -t textrel_shlib_t
'/opt/VBoxGuestAdditions-3.1.0/lib/VBoxOGL.so'" You must also change the default
file context files on the system in order to preserve them even on a full
relabel. "semanage fcontext -a -t textrel_shlib_t
'/opt/VBoxGuestAdditions-3.1.0/lib/VBoxOGL.so'"

Fix Command:

chcon -t textrel_shlib_t '/opt/VBoxGuestAdditions-3.1.0/lib/VBoxOGL.so'

Additional Information:

Source Context                system_u:system_r:xserver_t:s0-s0:c0.c1023
Target Context                system_u:object_r:lib_t:s0
Target Objects                /opt/VBoxGuestAdditions-3.1.0/lib/VBoxOGL.so [
                              file ]
Source                        Xorg
Source Path                   /usr/bin/Xorg
Port                          <Unknown>
Host                          (removed)
Source RPM Packages           xorg-x11-server-Xorg-1.7.1-7.fc12
Target RPM Packages           
Policy RPM                    selinux-policy-3.6.32-49.fc12
Selinux Enabled               True
Policy Type                   targeted
Enforcing Mode                Enforcing
Plugin Name                   allow_execmod
Host Name                     (removed)
Platform                      Linux (removed) 2.6.31.6-145.fc12.x86_64 #1 SMP Sat
                              Nov 21 15:57:45 EST 2009 x86_64 x86_64
Alert Count                   3
First Seen                    Wed 02 Dec 2009 14:17:45 CET
Last Seen                     Sun 06 Dec 2009 20:26:39 CET
Local ID                      c4d11cfa-b5bd-4ad1-8c37-c0b8d637ed86
Line Numbers                  

Raw Audit Messages            

node=(removed) type=AVC msg=audit(1260127599.632:6): avc:  denied  { execmod } for  pid=2144 comm="Xorg" path="/opt/VBoxGuestAdditions-3.1.0/lib/VBoxOGL.so" dev=dm-0 ino=144186 scontext=system_u:system_r:xserver_t:s0-s0:c0.c1023 tcontext=system_u:object_r:lib_t:s0 tclass=file

node=(removed) type=SYSCALL msg=audit(1260127599.632:6): arch=c000003e syscall=10 success=yes exit=4194432 a0=7f20970e1000 a1=8b000 a2=5 a3=7f2097122818 items=0 ppid=2138 pid=2144 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=tty7 ses=4294967295 comm="Xorg" exe="/usr/bin/Xorg" subj=system_u:system_r:xserver_t:s0-s0:c0.c1023 key=(null)



Hash String generated from  selinux-policy-3.6.32-49.fc12,allow_execmod,Xorg,xserver_t,lib_t,file,execmod
audit2allow suggests:

#============= xserver_t ==============
allow xserver_t lib_t:file execmod;
Comment 1 Daniel Walsh 2009-12-07 09:47:46 EST
Use the chcon command mentioned in the alert.

Please report this as a bug to vbox, which this link to explain the access.


http://people.redhat.com/~drepper/selinux-mem.html

They are building the library incorrectly.

I will fix the labeling in the next release.

Fixed in selinux-policy-3.6.32-56.fc12.noarch
Comment 2 Fedora Update System 2009-12-07 17:54:56 EST
selinux-policy-3.6.32-56.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/selinux-policy-3.6.32-56.fc12
Comment 3 Bob Peers 2009-12-08 04:26:19 EST
I've filed a bug against Virtualbox for this.
http://www.virtualbox.org/ticket/5690
Comment 4 Fedora Update System 2009-12-09 23:20:23 EST
selinux-policy-3.6.32-56.fc12 has been pushed to the Fedora 12 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update selinux-policy'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F12/FEDORA-2009-12990
Comment 5 Fedora Update System 2009-12-15 20:05:52 EST
selinux-policy-3.6.32-56.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.