Summary: SELinux is preventing /usr/bin/upx from making the program stack executable. Detailed Description: The upx application attempted to make its stack executable. This is a potential security problem. This should never ever be necessary. Stack memory is not executable on most OSes these days and this will not change. Executable stack memory is one of the biggest security problems. An execstack error might in fact be most likely raised by malicious code. Applications are sometimes coded incorrectly and request this permission. The SELinux Memory Protection Tests (http://www.akkadia.org/drepper/selinux-mem.html) web page explains how to remove this requirement. If upx does not work and you need it to work, you can configure SELinux temporarily to allow this access until the application is fixed. Please file a bug report. Allowing Access: Sometimes a library is accidentally marked with the execstack flag, if you find a library with this flag you can clear it with the execstack -c LIBRARY_PATH. Then retry your application. If the app continues to not work, you can turn the flag back on with execstack -s LIBRARY_PATH. Otherwise, if you trust upx to run correctly, you can change the context of the executable to execmem_exec_t. "chcon -t execmem_exec_t '/usr/bin/upx'" 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 execmem_exec_t '/usr/bin/upx'" Fix Command: chcon -t execmem_exec_t '/usr/bin/upx' Additional Information: Source Context unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1 023 Target Context unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1 023 Target Objects None [ process ] Source upx Source Path /usr/bin/upx Port <Unknown> Host (removed) Source RPM Packages upx-3.04-2.fc13 Target RPM Packages Policy RPM selinux-policy-3.9.7-14.fc14 Selinux Enabled True Policy Type targeted Enforcing Mode Enforcing Plugin Name allow_execstack Host Name (removed) Platform Linux (removed) 2.6.35.6-48.fc14.i686 #1 SMP Fri Oct 22 15:34:36 UTC 2010 i686 i686 Alert Count 1 First Seen Sun 05 Dec 2010 03:57:12 PM EST Last Seen Sun 05 Dec 2010 03:57:12 PM EST Local ID 53d19d2c-0381-494e-8542-3ff9818b9076 Line Numbers Raw Audit Messages node=(removed) type=AVC msg=audit(1291582632.391:171): avc: denied { execstack } for pid=15444 comm="upx" scontext=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 tcontext=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 tclass=process node=(removed) type=SYSCALL msg=audit(1291582632.391:171): arch=40000003 syscall=125 success=no exit=-13 a0=bf92a000 a1=1000 a2=1000007 a3=bf929e00 items=0 ppid=14864 pid=15444 auid=500 uid=500 gid=500 euid=500 suid=500 fsuid=500 egid=500 sgid=500 fsgid=500 tty=pts0 ses=1 comm="upx" exe="/usr/bin/upx" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key=(null) Hash String generated from allow_execstack,upx,unconfined_t,unconfined_t,process,execstack audit2allow suggests: #============= unconfined_t ============== #!!!! This avc can be allowed using the boolean 'allow_execstack' allow unconfined_t self:process execstack;
*** This bug has been marked as a duplicate of bug 652297 ***