Bug 613592

Summary: SELinux is preventing /opt/teamviewer/teamviewer/5/wine/bin/wine-preloader from loading /opt/teamviewer/teamviewer/5/wine/lib/wine/mpr.dll.so which requires text relocation.
Product: [Fedora] Fedora Reporter: Bishnu Marasini <bismar.blog>
Component: selinux-policyAssignee: Daniel Walsh <dwalsh>
Status: CLOSED CANTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 12CC: bismar.blog, dwalsh, mgrepl
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard: setroubleshoot_trace_hash:0e47ed5c33ee3aa08adc192b54f5939eff0bbe58983d35b374fcbed5aed06c99
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-07-12 16:45:46 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 Bishnu Marasini 2010-07-12 11:21:39 UTC
Summary:

SELinux is preventing /opt/teamviewer/teamviewer/5/wine/bin/wine-preloader from
loading /opt/teamviewer/teamviewer/5/wine/lib/wine/mpr.dll.so which requires
text relocation.

Detailed Description:

The wineboot.exe application attempted to load
/opt/teamviewer/teamviewer/5/wine/lib/wine/mpr.dll.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/teamviewer/teamviewer/5/wine/lib/wine/mpr.dll.so to use relocation as a
workaround, until the library is fixed. Please file a bug report.

Allowing Access:

If you trust /opt/teamviewer/teamviewer/5/wine/lib/wine/mpr.dll.so to run
correctly, you can change the file context to textrel_shlib_t. "chcon -t
textrel_shlib_t '/opt/teamviewer/teamviewer/5/wine/lib/wine/mpr.dll.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/teamviewer/teamviewer/5/wine/lib/wine/mpr.dll.so'"

Fix Command:

chcon -t textrel_shlib_t '/opt/teamviewer/teamviewer/5/wine/lib/wine/mpr.dll.so'

Additional Information:

Source Context                unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1
                              023
Target Context                system_u:object_r:lib_t:s0
Target Objects                /opt/teamviewer/teamviewer/5/wine/lib/wine/mpr.dll
                              .so [ file ]
Source                        wineboot.exe
Source Path                   /opt/teamviewer/teamviewer/5/wine/bin/wine-
                              preloader
Port                          <Unknown>
Host                          (removed)
Source RPM Packages           teamviewer5-5.0-1
Target RPM Packages           teamviewer5-5.0-1
Policy RPM                    selinux-policy-3.6.32-41.fc12
Selinux Enabled               True
Policy Type                   targeted
MLS Enabled                   True
Enforcing Mode                Enforcing
Plugin Name                   allow_execmod
Host Name                     (removed)
Platform                      Linux (removed)
                              2.6.32.14-127.fc12.i686.PAE #1 SMP Fri May 28
                              04:47:04 UTC 2010 i686 i686
Alert Count                   6
First Seen                    Thu 01 Jul 2010 08:33:53 PM PKST
Last Seen                     Fri 02 Jul 2010 12:38:27 PM PKST
Local ID                      ed7c1b0c-63f1-4b65-b1f7-987b89dc1a48
Line Numbers                  

Raw Audit Messages            

node=(removed) type=AVC msg=audit(1278052707.654:140): avc:  denied  { execmod } for  pid=4573 comm="wineboot.exe" path="/opt/teamviewer/teamviewer/5/wine/lib/wine/mpr.dll.so" dev=sda3 ino=526481 scontext=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 tcontext=system_u:object_r:lib_t:s0 tclass=file

node=(removed) type=SYSCALL msg=audit(1278052707.654:140): arch=40000003 syscall=125 success=no exit=-13 a0=3926d000 a1=1000 a2=7 a3=3926d000 items=0 ppid=1 pid=4573 auid=500 uid=500 gid=500 euid=500 suid=500 fsuid=500 egid=500 sgid=500 fsgid=500 tty=(none) ses=1 comm="wineboot.exe" exe="/opt/teamviewer/teamviewer/5/wine/bin/wine-preloader" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key=(null)



Hash String generated from  selinux-policy-3.6.32-41.fc12,allow_execmod,wineboot.exe,unconfined_t,lib_t,file,execmod
audit2allow suggests:

#============= unconfined_t ==============
allow unconfined_t lib_t:file execmod;

Comment 1 Miroslav Grepl 2010-07-12 16:45:46 UTC
Please update your system

yum update

and then either execute the chcon command or remove the check

# setsebool -P allow_execmod 1