Bug 698631 - SELinux is preventing /usr/bin/eu-unstrip from 'read' accesses on the file /usr/lib/debug/lib64/libc-2.13.90.so.debug.
Summary: SELinux is preventing /usr/bin/eu-unstrip from 'read' accesses on the file /u...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: selinux-policy
Version: 15
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Miroslav Grepl
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: setroubleshoot_trace_hash:b22a75556c7...
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-04-21 12:34 UTC by Steve Tyler
Modified: 2011-10-07 14:11 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-10-07 14:11:49 UTC
Type: ---


Attachments (Terms of Use)

Description Steve Tyler 2011-04-21 12:34:03 UTC
SELinux is preventing /usr/bin/eu-unstrip from 'read' accesses on the file /usr/lib/debug/lib64/libc-2.13.90.so.debug.

*****  Plugin file (36.8 confidence) suggests  *******************************

If you think this is caused by a badly mislabeled machine.
Then you need to fully relabel.
Do
touch /.autorelabel; reboot

*****  Plugin file (36.8 confidence) suggests  *******************************

If you think this is caused by a badly mislabeled machine.
Then you need to fully relabel.
Do
touch /.autorelabel; reboot

*****  Plugin catchall_labels (23.2 confidence) suggests  ********************

If you want to allow eu-unstrip to have read access on the libc-2.13.90.so.debug file
Then you need to change the label on /usr/lib/debug/lib64/libc-2.13.90.so.debug
Do
# semanage fcontext -a -t FILE_TYPE '/usr/lib/debug/lib64/libc-2.13.90.so.debug'
where FILE_TYPE is one of the following: etc_runtime_t, anon_inodefs_t, sysctl_kernel_t, httpd_modules_t, abrt_var_run_t, textrel_shlib_t, user_cron_spool_t, sosreport_exec_t, exec_type, rpm_script_tmp_t, nsplugin_rw_t, system_dbusd_var_lib_t, policykit_auth_exec_t, abrt_t, bin_t, cert_t, tmp_t, ld_so_cache_t, usr_t, noxattrfs, prelink_exec_t, nsplugin_home_t, fusefs_t, locale_t, ld_so_t, nfs_t, proc_t, sysfs_t, system_cronjob_var_lib_t, policykit_var_lib_t, abrt_exec_t, rpm_exec_t, abrt_var_run_t, shell_exec_t, modules_object_t, sosreport_tmp_t, abrt_tmp_t, sysctl_crypto_t, dbusd_etc_t, var_lib_t, userdomain, configfile, domain, rpm_var_cache_t, abrt_var_cache_t, abrt_t, abrt_etc_t, rpm_log_t, lib_t, var_log_t, policykit_reload_t, mta_exec_type, fail2ban_var_lib_t, afs_cache_t, abrt_helper_exec_t, abrt_var_log_t, rpm_var_lib_t, rpm_var_run_t, net_conf_t, ld_so_t, root_t. 
Then execute: 
restorecon -v '/usr/lib/debug/lib64/libc-2.13.90.so.debug'


*****  Plugin catchall (5.04 confidence) suggests  ***************************

If you believe that eu-unstrip should be allowed read access on the libc-2.13.90.so.debug file by default.
Then you should report this as a bug.
You can generate a local policy module to allow this access.
Do
allow this access for now by executing:
# grep eu-unstrip /var/log/audit/audit.log | audit2allow -M mypol
# semodule -i mypol.pp

Additional Information:
Source Context                system_u:system_r:abrt_t:s0-s0:c0.c1023
Target Context                system_u:object_r:file_t:s0
Target Objects                /usr/lib/debug/lib64/libc-2.13.90.so.debug [ file
                              ]
Source                        eu-unstrip
Source Path                   /usr/bin/eu-unstrip
Port                          <Unknown>
Host                          (removed)
Source RPM Packages           elfutils-0.152-1.fc15
Target RPM Packages           glibc-debuginfo-2.13.90-9
Policy RPM                    selinux-policy-3.9.16-15.fc15
Selinux Enabled               True
Policy Type                   targeted
Enforcing Mode                Enforcing
Host Name                     (removed)
Platform                      Linux (removed) 2.6.38.2-9.fc15.x86_64 #1 SMP Wed Mar 30
                              16:55:57 UTC 2011 x86_64 x86_64
Alert Count                   3
First Seen                    Wed 20 Apr 2011 01:48:59 PM PDT
Last Seen                     Wed 20 Apr 2011 01:56:19 PM PDT
Local ID                      9d78dc2d-6420-4ed6-8462-7d08a30b1b1b

Raw Audit Messages
type=AVC msg=audit(1303332979.322:75): avc:  denied  { read } for  pid=1937 comm="eu-unstrip" name="libc-2.13.90.so.debug" dev=sdb6 ino=297572 scontext=system_u:system_r:abrt_t:s0-s0:c0.c1023 tcontext=system_u:object_r:file_t:s0 tclass=file


type=SYSCALL msg=audit(1303332979.322:75): arch=x86_64 syscall=open success=no exit=EACCES a0=7f2d50 a1=0 a2=0 a3=6265642e3339 items=0 ppid=1936 pid=1937 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm=eu-unstrip exe=/usr/bin/eu-unstrip subj=system_u:system_r:abrt_t:s0-s0:c0.c1023 key=(null)

Hash: eu-unstrip,abrt_t,file_t,file,read

audit2allow

#============= abrt_t ==============
allow abrt_t file_t:file read;

audit2allow -R

#============= abrt_t ==============
allow abrt_t file_t:file read;

Comment 1 Steve Tyler 2011-04-21 12:41:28 UTC
I've been doing abrt testing.

Comment 2 Daniel Walsh 2011-04-21 13:19:52 UTC
If you delete the contents of /var/lib/debug or run

chcon -t lib_t /var/lib/debug  You should be ok.  The problem is this machine had SELinux disabled and SELinux does not know how to relabel this directory.

Comment 3 Steve Tyler 2011-04-21 13:42:28 UTC
(In reply to comment #2)
> If you delete the contents of /var/lib/debug or run
> 
> chcon -t lib_t /var/lib/debug  You should be ok.  The problem is this machine
> had SELinux disabled and SELinux does not know how to relabel this directory.

OK, thanks. This sounds like a variant of Bug 695787.

Comment 4 Olivier Crête 2011-06-06 01:59:59 UTC
I guess you mean /usr/lib/debug ? Anyway, you should fix it somehow.. Like making SELinux relabel that directory correctly when it's enabled.

Comment 5 Daniel Walsh 2011-06-06 17:03:57 UTC
I guess we could do

# semanage fcontext -a -e / /usr/lib/debug

Then everything under /usr/lib/debug would be labeled the same as it would if it was under /

Comment 6 Steve Tyler 2011-06-06 18:23:58 UTC
(In reply to comment #5)
> I guess we could do
> 
> # semanage fcontext -a -e / /usr/lib/debug
> 
> Then everything under /usr/lib/debug would be labeled the same as it would if
> it was under /

In Comment 2, you suggested "chcon -t lib_t /var/lib/debug", and in Bug 695787, Comment 3, "chcon -t lib_t -R /usr/lib/debug/.build-id".

$ ls -dFZ / /usr/lib /usr/lib/debug
dr-xr-xr-x. root root system_u:object_r:root_t:s0      //
dr-xr-xr-x. root root system_u:object_r:lib_t:s0       /usr/lib/
drwxr-xr-x. root root unconfined_u:object_r:lib_t:s0   /usr/lib/debug/

Comment 7 Daniel Walsh 2011-06-06 19:21:23 UTC
I just changed the default in F16 to label /usr/lib/debug the same way we label / I will let this run for a while and see if it causes any problems.

I think this makes the most sense or just label it lib_t.  Miroslav can you change the default label to lib_t in F15 and see if it causes any problems.


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