Bug 538659 - SELinux is preventing /home/jacob/.dropbox-dist/dropbox from making the program stack executable.
Summary: SELinux is preventing /home/jacob/.dropbox-dist/dropbox from making the progr...
Keywords:
Status: CLOSED DUPLICATE of bug 533987
Alias: None
Product: Fedora
Classification: Fedora
Component: selinux-policy
Version: 12
Hardware: x86_64
OS: Linux
low
medium
Target Milestone: ---
Assignee: Daniel Walsh
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: setroubleshoot_trace_hash:4bb210adc28...
: 539858 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-11-19 01:32 UTC by Jacob Isreal
Modified: 2011-03-27 13:03 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-12-01 15:21:26 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Jacob Isreal 2009-11-19 01:32:30 UTC
Summary:

SELinux is preventing /home/jacob/.dropbox-dist/dropbox from making the program
stack executable.

Detailed Description:

The dropbox 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://people.redhat.com/drepper/selinux-mem.html) web page explains how
to remove this requirement. If dropbox 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 dropbox to
run correctly, you can change the context of the executable to execmem_exec_t.
"chcon -t execmem_exec_t '/home/jacob/.dropbox-dist/dropbox'" 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
'/home/jacob/.dropbox-dist/dropbox'"

Fix Command:

chcon -t execmem_exec_t '/home/jacob/.dropbox-dist/dropbox'

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                        dropbox
Source Path                   /home/jacob/.dropbox-dist/dropbox
Port                          <Unknown>
Host                          (removed)
Source RPM Packages           
Target RPM Packages           
Policy RPM                    selinux-policy-3.6.32-41.fc12
Selinux Enabled               True
Policy Type                   targeted
MLS Enabled                   True
Enforcing Mode                Enforcing
Plugin Name                   allow_execstack
Host Name                     (removed)
Platform                      Linux (removed)
                              2.6.31.5-127.fc12.x86_64 #1 SMP Sat Nov 7 21:11:14
                              EST 2009 x86_64 x86_64
Alert Count                   1
First Seen                    Wed 18 Nov 2009 05:53:28 PM CST
Last Seen                     Wed 18 Nov 2009 05:53:28 PM CST
Local ID                      114990d5-d28b-4a10-9eda-3ac2d9286acb
Line Numbers                  

Raw Audit Messages            

node=(removed) type=AVC msg=audit(1258588408.302:20927): avc:  denied  { execstack } for  pid=20309 comm="dropbox" 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(1258588408.302:20927): arch=c000003e syscall=10 success=no exit=-13 a0=7fffa61cc000 a1=1000 a2=1000007 a3=3474a19aeb items=0 ppid=20305 pid=20309 auid=500 uid=500 gid=500 euid=500 suid=500 fsuid=500 egid=500 sgid=500 fsgid=500 tty=(none) ses=1 comm="dropbox" exe="/home/jacob/.dropbox-dist/dropbox" 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_execstack,dropbox,unconfined_t,unconfined_t,process,execstack
audit2allow suggests:

#============= unconfined_t ==============
allow unconfined_t self:process execstack;

Comment 1 Miroslav Grepl 2009-11-23 09:45:34 UTC
*** Bug 539858 has been marked as a duplicate of this bug. ***

Comment 2 David 2009-11-28 13:13:38 UTC
Is this going to be added to the selinux rules or do I have to run the command listed to fix t each time.

Comment 3 Daniel Walsh 2009-12-01 15:21:26 UTC
Once you have run the setsebool -P allow_execstack 1 command on a machine, you will not have to run it again, unless you reinstall

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


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