I was trying to launch a Java Applet application, but in the process it displays a AVC denial security alert, and the launch failed due to this denial. What's wrong?
The following is detailed information:
--------------------------------------------------------------------------------------------------
Summary:
SELinux is preventing /usr/lib/firefox-3.6/firefox "execmod" access to
/usr/local/jdk1.6.0_21/jre/lib/i386/client/libjvm.so.
Detailed Description:
SELinux denied access requested by firefox.
/usr/local/jdk1.6.0_21/jre/lib/i386/client/libjvm.so may be a mislabeled.
/usr/local/jdk1.6.0_21/jre/lib/i386/client/libjvm.so default SELinux type is
textrel_shlib_t, but its current type is usr_t. Changing this file back to the
default type, may fix your problem.
File contexts can be assigned to a file in the following ways.
* Files created in a directory receive the file context of the parent
directory by default.
* The SELinux policy might override the default label inherited from the
parent directory by specifying a process running in context A which creates
a file in a directory labeled B will instead create the file with label C.
An example of this would be the dhcp client running with the dhclient_t type
and creating a file in the directory /etc. This file would normally receive
the etc_t type due to parental inheritance but instead the file is labeled
with the net_conf_t type because the SELinux policy specifies this.
* Users can change the file context on a file using tools such as chcon, or
restorecon.
This file could have been mislabeled either by user error, or if an normally
confined application was run under the wrong domain.
However, this might also indicate a bug in SELinux because the file should not
have been labeled with this type.
If you believe this is a bug, please file a bug report against this package.
Allowing Access:
You can restore the default system context to this file by executing the
restorecon command. restorecon
'/usr/local/jdk1.6.0_21/jre/lib/i386/client/libjvm.so', if this file is a
directory, you can recursively restore using restorecon -R
'/usr/local/jdk1.6.0_21/jre/lib/i386/client/libjvm.so'.
Fix Command:
/sbin/restorecon '/usr/local/jdk1.6.0_21/jre/lib/i386/client/libjvm.so'
Additional Information:
Source Context unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1
023
Target Context unconfined_u:object_r:usr_t:s0
Target Objects /usr/local/jdk1.6.0_21/jre/lib/i386/client/libjvm.
so [ file ]
Source firefox
Source Path /usr/lib/firefox-3.6/firefox
Port <Unknown>
Host localhost.localdomain
Source RPM Packages firefox-3.6.10-1.fc13
Target RPM Packages
Policy RPM selinux-policy-3.7.19-62.fc13
Selinux Enabled True
Policy Type targeted
Enforcing Mode Enforcing
Plugin Name restorecon
Host Name localhost.localdomain
Platform Linux localhost.localdomain
2.6.34.7-56.fc13.i686.PAE #1 SMP Wed Sep 15
03:27:15 UTC 2010 i686 i686
Alert Count 14
First Seen Mon 27 Sep 2010 12:46:28 AM EDT
Last Seen Wed 13 Oct 2010 10:57:19 AM EDT
Local ID dca2591e-b3be-4c02-9a50-33ea11e19ca1
Line Numbers
Raw Audit Messages
node=localhost.localdomain type=AVC msg=audit(1286981839.12:20): avc: denied { execmod } for pid=2298 comm="firefox" path="/usr/local/jdk1.6.0_21/jre/lib/i386/client/libjvm.so" dev=dm-0 ino=2621577 scontext=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:usr_t:s0 tclass=file
node=localhost.localdomain type=SYSCALL msg=audit(1286981839.12:20): arch=40000003 syscall=125 success=no exit=-13 a0=a5c21000 a1=49e000 a2=5 a3=bfea3dd0 items=0 ppid=2281 pid=2298 auid=500 uid=500 gid=500 euid=500 suid=500 fsuid=500 egid=500 sgid=500 fsgid=500 tty=(none) ses=1 comm="firefox" exe="/usr/lib/firefox-3.6/firefox" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key=(null)