summaryrefslogtreecommitdiffstats
path: root/recipes-security/refpolicy/refpolicy-git/ftp-add-ftpd_t-to-mlsfilewrite.patch
blob: 85c40a491ed73ea0fc00090920ea8b3ae4f7544c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
From e4e95b723d31c7b678a05cd81a96b10185978b4e Mon Sep 17 00:00:00 2001
From: Roy Li <rongqing.li@windriver.com>
Date: Mon, 10 Feb 2014 18:10:12 +0800
Subject: [PATCH] ftp: add ftpd_t to mls_file_write_all_levels

Proftpd will create file under /var/run, but its mls is in high, and
can not write to lowlevel

Upstream-Status: Pending

type=AVC msg=audit(1392347709.621:15): avc:  denied  { write } for  pid=545 comm="proftpd" name="/" dev="tmpfs" ino=5853 scontext=system_u:system_r:ftpd_t:s15:c0.c1023 tcontext=system_u:object_r:var_run_t:s0-s15:c0.c1023 tclass=dir
type=AVC msg=audit(1392347709.621:15): avc:  denied  { add_name } for  pid=545 comm="proftpd" name="proftpd.delay" scontext=system_u:system_r:ftpd_t:s15:c0.c1023 tcontext=system_u:object_r:var_run_t:s0-s15:c0.c1023 tclass=dir
type=SYSCALL msg=audit(1392347709.621:15): arch=c000003e syscall=2 success=yes exit=3 a0=471910 a1=42 a2=1b6 a3=8 items=0 ppid=539 pid=545 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 ses=4294967295 tty=(none) comm="proftpd" exe="/usr/sbin/proftpd" subj=system_u:system_r:ftpd_t:s15:c0.c1023 key=(null)

root@localhost:~# sesearch --allow -s ftpd_t -t var_run_t|grep dir|grep add_name 
   allow ftpd_t var_run_t : dir { ioctl read write getattr lock add_name remove_name search open } ; 
root@localhost:~#

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
---
 policy/modules/contrib/ftp.te |    2 ++
 1 file changed, 2 insertions(+)

--- a/policy/modules/contrib/ftp.te
+++ b/policy/modules/contrib/ftp.te
@@ -148,10 +148,12 @@ init_system_domain(ftpdctl_t, ftpdctl_ex
 role ftpdctl_roles types ftpdctl_t;
 
 type ftpdctl_tmp_t;
 files_tmp_file(ftpdctl_tmp_t)
 
+mls_file_write_all_levels(ftpd_t)
+
 type sftpd_t;
 domain_type(sftpd_t)
 role system_r types sftpd_t;
 
 type xferlog_t;