Bug 654068 - SELinux is preventing /lib64/ld-2.12.90.so from making the program stack executable.
Summary: SELinux is preventing /lib64/ld-2.12.90.so from making the program stack exec...
Keywords:
Status: CLOSED DUPLICATE of bug 652297
Alias: None
Product: Fedora
Classification: Fedora
Component: selinux-policy
Version: 14
Hardware: x86_64
OS: Linux
low
medium
Target Milestone: ---
Assignee: Miroslav Grepl
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: setroubleshoot_trace_hash:ea43cffbb2e...
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-11-16 19:32 UTC by ssabchew
Modified: 2012-01-30 06:05 UTC (History)
4 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2010-11-17 21:35:32 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description ssabchew 2010-11-16 19:32:19 UTC
Summary:

SELinux is preventing /lib64/ld-2.12.90.so from making the program stack
executable.

Detailed Description:

The ld-linux-x86-64 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 ld-linux-x86-64 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
ld-linux-x86-64 to run correctly, you can change the context of the executable
to execmem_exec_t. "chcon -t execmem_exec_t '/lib64/ld-2.12.90.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 execmem_exec_t
'/lib64/ld-2.12.90.so'"

Fix Command:

chcon -t execmem_exec_t '/lib64/ld-2.12.90.so'

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                        ld-linux-x86-64
Source Path                   /lib64/ld-2.12.90.so
Port                          <Unknown>
Host                          (removed)
Source RPM Packages           glibc-2.12.90-17
Target RPM Packages           
Policy RPM                    selinux-policy-3.9.7-3.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.x86_64 #1 SMP
                              Fri Oct 22 15:36:08 UTC 2010 x86_64 x86_64
Alert Count                   1
First Seen                    Tue 16 Nov 2010 09:13:16 PM EET
Last Seen                     Tue 16 Nov 2010 09:13:16 PM EET
Local ID                      2f90c8ca-b264-4175-89f8-1472bc2507d3
Line Numbers                  

Raw Audit Messages            

node=(removed) type=AVC msg=audit(1289934796.483:279): avc:  denied  { execstack } for  pid=3986 comm="ld-linux-x86-64" 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(1289934796.483:279): arch=c000003e syscall=10 success=no exit=-13 a0=7fff5672c000 a1=1000 a2=1000007 a3=33eac20090 items=0 ppid=3984 pid=3986 auid=500 uid=500 gid=500 euid=500 suid=500 fsuid=500 egid=500 sgid=500 fsgid=500 tty=pts3 ses=21 comm="ld-linux-x86-64" exe="/lib64/ld-2.12.90.so" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key=(null)



Hash String generated from  allow_execstack,ld-linux-x86-64,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;

Comment 1 Daniel Walsh 2010-11-17 21:35:32 UTC

*** This bug has been marked as a duplicate of bug 652297 ***


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