Bug 594488 - SELinux is preventing /opt/teamviewer/teamviewer/5/wine/bin/wine-preloader from loading /opt/teamviewer/teamviewer/5/wine/lib/wine/msvfw32.dll.so which requires text relocation.
Summary: SELinux is preventing /opt/teamviewer/teamviewer/5/wine/bin/wine-preloader fr...
Alias: None
Product: Fedora
Classification: Fedora
Component: selinux-policy
Version: 12
Hardware: i386
OS: Linux
Target Milestone: ---
Assignee: Daniel Walsh
QA Contact: Fedora Extras Quality Assurance
Whiteboard: setroubleshoot_trace_hash:5c11af64b61...
Depends On:
TreeView+ depends on / blocked
Reported: 2010-05-20 20:12 UTC by Heiko Adams
Modified: 2010-10-11 10:03 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2010-05-20 21:12:21 UTC
Type: ---

Attachments (Terms of Use)

Description Heiko Adams 2010-05-20 20:12:43 UTC

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

Detaillierte Beschreibung:

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

Zugriff erlauben:

If you trust /opt/teamviewer/teamviewer/5/wine/lib/wine/msvfw32.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/msvfw32.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

Befehl berichtigen:

chcon -t textrel_shlib_t

Zusätzliche Informationen:

Quellkontext                  unconfined_u:unconfined_r:unconfined_t:s0
Zielkontext                   system_u:object_r:lib_t:s0
Zielobjekte                   /opt/teamviewer/teamviewer/5/wine/lib/wine/msvfw32
                              .dll.so [ file ]
Quelle                        wineboot.exe
Quellpfad                     /opt/teamviewer/teamviewer/5/wine/bin/wine-
Port                          <Unbekannt>
Host                          (removed)
RPM-Pakete der Quelle         teamviewer5-5.0-1
RPM-Pakete des Ziels          teamviewer5-5.0-1
Richtlinien-RPM               selinux-policy-3.6.32-114.fc12
SELinux aktiviert             True
Richtlinientyp                targeted
Enforcing-Modus               Enforcing
Plugin-Name                   allow_execmod
Rechnername                   (removed)
Plattform                     Linux (removed) #1 SMP
                              Fri Apr 30 20:34:53 UTC 2010 i686 i686
Anzahl der Alarme             100
Zuerst gesehen                Do 20 Mai 2010 22:04:10 CEST
Zuletzt gesehen               Do 20 Mai 2010 22:11:24 CEST
Lokale ID                     24a2ecee-3ac3-4c65-aaee-22a063eb86de


node=(removed) type=AVC msg=audit(1274386284.88:686): avc:  denied  { execmod } for  pid=13761 comm="TeamViewer.exe" path="/opt/teamviewer/teamviewer/5/wine/lib/wine/msvfw32.dll.so" dev=dm-0 ino=1237446 scontext=unconfined_u:unconfined_r:unconfined_t:s0 tcontext=system_u:object_r:lib_t:s0 tclass=file

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

Hash String generated from  allow_execmod,wineboot.exe,unconfined_t,lib_t,file,execmod
audit2allow suggests:

#============= unconfined_t ==============
#!!!! This avc can be allowed using the boolean 'allow_execmod'

allow unconfined_t lib_t:file execmod;

Comment 1 Daniel Walsh 2010-05-20 21:12:21 UTC
Either execute the chcon command or remove the check

# setsebool -P allow_execmod 1

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