SELinux avc: denied after upgrading phpBB

Clodoaldo Pinto clodoaldo.pinto at gmail.com
Sat Jul 29 22:42:47 UTC 2006


2006/7/29, Paul Howarth <paul at city-fan.org>:
> On Sat, 2006-07-29 at 14:56 -0300, Clodoaldo Pinto wrote:
> > FC5. After upgrading phpBB from 2.0.19 to 2.0.21 I get this message:
> >
> > kernel: audit(1154193819.965:244): avc:  denied  { getattr } for
> > pid=10862 comm="httpd" name="index.php" dev=sda1 ino=2553454
> > scontext=user_u:system_r:httpd_t:s0 tcontext=user_u:object_r:tmp_t:s0
> > tclass=file
> >
> > Why didn't I have it with the old version?
>
> The old version was probably installed properly...
>
> > I know there are booleans related to httpd:
> >
> > # getsebool -a | grep httpd
> > allow_httpd_anon_write --> off
> > allow_httpd_mod_auth_pam --> off
> > allow_httpd_sys_script_anon_write --> off
> > httpd_builtin_scripting --> on
> > httpd_can_network_connect --> off
> > httpd_can_network_connect_db --> on
> > httpd_can_network_relay --> off
> > httpd_disable_trans --> off
> > httpd_enable_cgi --> on
> > httpd_enable_ftp_server --> off
> > httpd_enable_homedirs --> on
> > httpd_rotatelogs_disable_trans --> off
> > httpd_ssi_exec --> on
> > httpd_suexec_disable_trans --> off
> > httpd_tty_comm --> off
> > httpd_unified --> on
> >
> > Which one, if any, can solve this problem?
>
> None of them. The problem is that the file has the wrong context type,
> probably due to having bee unpacked in /tmp and copied into your web
> server area. You need to change the context type of the php files and
> the directory they are in to httpd_sys_content_t.

The patch was unpacked in my home directory and copied to
/var/www/html/domain which is owned by me.

The upgrade process is:
$ patch -cl -p1 < phpBB-2.0.19_to_2.0.21.patch

This changes already existing files. And it also changes their
contexts to tmp_t as patch uses the /tmp directory for temporary
files:

$ ls -aZ
drwxr-xr-x  cpn  cpn  user_u:object_r:httpd_sys_content_t .
drwxr-xr-x  root root system_u:object_r:httpd_sys_content_t ..
drwxr-xr-x  cpn  cpn  user_u:object_r:httpd_sys_content_t admin
drwxr-xr-x  cpn  cpn  user_u:object_r:httpd_sys_content_t cache
-rw-r--r--  cpn  cpn  user_u:object_r:tmp_t            common.php
-rw-r--r--  cpn  cpn  user_u:object_r:httpd_sys_content_t config.php
drwxr-xr-x  cpn  cpn  user_u:object_r:httpd_sys_content_t db
drwxr-xr-x  cpn  cpn  user_u:object_r:httpd_sys_content_t docs
-rw-r--r--  cpn  cpn  user_u:object_r:httpd_sys_content_t extension.inc
-rw-r--r--  cpn  cpn  user_u:object_r:httpd_sys_content_t faq.php
-rw-r--r--  cpn  cpn  user_u:object_r:httpd_sys_content_t groupcp.php
drwxr-xr-x  cpn  cpn  user_u:object_r:httpd_sys_content_t images
drwxr-xr-x  cpn  cpn  user_u:object_r:httpd_sys_content_t includes
-rw-r--r--  cpn  cpn  user_u:object_r:tmp_t            index.php
drwxr-xr-x  cpn  cpn  user_u:object_r:httpd_sys_content_t language
-rw-r--r--  cpn  cpn  user_u:object_r:tmp_t            login.php
-rw-rw-r--  cpn  cpn  user_u:object_r:tmp_t            memberlist.php
-rw-rw-r--  cpn  cpn  user_u:object_r:httpd_sys_content_t memberlist.php.orig
-rw-r--r--  cpn  cpn  user_u:object_r:tmp_t            modcp.php
-rw-r--r--  cpn  cpn  user_u:object_r:httpd_sys_content_t
phpBB-2.0.19_to_2.0.21.patch
-rw-r--r--  cpn  cpn  user_u:object_r:tmp_t            posting.php
-rw-r--r--  cpn  cpn  user_u:object_r:tmp_t            privmsg.php
-rw-r--r--  cpn  cpn  user_u:object_r:tmp_t            profile.php
-rw-r--r--  cpn  cpn  user_u:object_r:tmp_t            search.php
drwxr-xr-x  cpn  cpn  user_u:object_r:httpd_sys_content_t templates
-rw-r--r--  cpn  cpn  user_u:object_r:httpd_sys_content_t viewforum.php
-rw-r--r--  cpn  cpn  user_u:object_r:httpd_sys_content_t viewonline.php
-rw-r--r--  cpn  cpn  user_u:object_r:tmp_t            viewtopic.php

I changed the contexts back with chcon:

$ chcon -R -t httpd_sys_content_t *

Is it necessary to use chcon whenever a patch is applied or is there a
way to change patch's behavior or some selinux configuration?

Regards, Clodoaldo Pinto




More information about the fedora-list mailing list