Bug 884417 - SELinux is preventing /usr/bin/polipo from 'name_bind' accesses on the tcp_socket .
Summary: SELinux is preventing /usr/bin/polipo from 'name_bind' accesses on the tcp_so...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: selinux-policy
Version: 18
Hardware: x86_64
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Miroslav Grepl
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: abrt_hash:b415a89e94af10a52b622273830...
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-12-06 07:55 UTC by static.cast
Modified: 2012-12-18 06:55 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-12-18 06:55:08 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description static.cast 2012-12-06 07:55:22 UTC
Description of problem:
$ sudo yum install polipo
$ sudo service polipo start
SELinux is preventing /usr/bin/polipo from 'name_bind' accesses on the tcp_socket .

*****  Plugin bind_ports (99.5 confidence) suggests  *************************

If you want to allow /usr/bin/polipo to bind to network port 8123
Then you need to modify the port type.
Do
# semanage port -a -t PORT_TYPE -p tcp 8123
    where PORT_TYPE is one of the following: http_cache_port_t.

*****  Plugin catchall (1.49 confidence) suggests  ***************************

If you believe that polipo should be allowed name_bind access on the  tcp_socket 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 polipo /var/log/audit/audit.log | audit2allow -M mypol
# semodule -i mypol.pp

Additional Information:
Source Context                system_u:system_r:polipo_t:s0
Target Context                system_u:object_r:unreserved_port_t:s0
Target Objects                 [ tcp_socket ]
Source                        polipo
Source Path                   /usr/bin/polipo
Port                          8123
Host                          (removed)
Source RPM Packages           polipo-1.0.4.1-9.fc18.x86_64
Target RPM Packages           
Policy RPM                    selinux-policy-3.11.1-59.fc18.noarch
Selinux Enabled               True
Policy Type                   targeted
Enforcing Mode                Enforcing
Host Name                     (removed)
Platform                      Linux (removed) 3.6.9-4.fc18.x86_64 #1 SMP Tue Dec
                              4 14:12:51 UTC 2012 x86_64 x86_64
Alert Count                   1
First Seen                    2012-12-05 23:42:59 PST
Last Seen                     2012-12-05 23:42:59 PST
Local ID                      ac755af2-5ca1-46f8-b0ef-1ea724085052

Raw Audit Messages
type=AVC msg=audit(1354779779.252:407): avc:  denied  { name_bind } for  pid=5304 comm="polipo" src=8123 scontext=system_u:system_r:polipo_t:s0 tcontext=system_u:object_r:unreserved_port_t:s0 tclass=tcp_socket


type=SYSCALL msg=audit(1354779779.252:407): arch=x86_64 syscall=bind success=no exit=EACCES a0=0 a1=7fff53cf1300 a2=10 a3=7fff53cf1070 items=0 ppid=1 pid=5304 auid=4294967295 uid=989 gid=986 euid=989 suid=989 fsuid=989 egid=986 sgid=986 fsgid=986 tty=(none) ses=4294967295 comm=polipo exe=/usr/bin/polipo subj=system_u:system_r:polipo_t:s0 key=(null)

Hash: polipo,polipo_t,unreserved_port_t,tcp_socket,name_bind

audit2allow

#============= polipo_t ==============
#!!!! This avc can be allowed using the boolean 'nis_enabled'

allow polipo_t unreserved_port_t:tcp_socket name_bind;

audit2allow -R

#============= polipo_t ==============
#!!!! This avc can be allowed using the boolean 'nis_enabled'

allow polipo_t unreserved_port_t:tcp_socket name_bind;


Additional info:
hashmarkername: setroubleshoot
kernel:         3.6.9-4.fc18.x86_64
type:           libreport

Comment 1 Miroslav Grepl 2012-12-06 09:45:20 UTC
Did you configure polipo to use tcp/8123 port?

Comment 2 static.cast 2012-12-07 05:58:41 UTC
I did not change the configuration to use that port. 

Digging around further, I notice port 8123 is no longer in http_cache_port_t.

----
Output from Fedora 18 Beta:

$ sepolicy network -d polipo_t
polipo_t: tcp name_connect
    dns_port_t: 53
    http_port_t: 80,81,443,488,8008,8009,8443,9000
    ocsp_port_t: 9080
    kerberos_port_t: 88,750,4444
polipo_t: tcp name_bind
    http_cache_port_t: 8080,8118,10001-10010
$ sudo semanage port -l | grep http_cache_port
http_cache_port_t              tcp      8080, 8118, 10001-10010
http_cache_port_t              udp      3130

----
Output from Fedora 17:
$ sudo semanage port -l | grep http_cache_port
http_cache_port_t              tcp      8080, 8118, 8123, 10001-10010
http_cache_port_t              udp      3130

Comment 3 Miroslav Grepl 2012-12-07 11:05:51 UTC
Ah, you are right.

commit 98281e9adfaa785c68e1e2f434d851baa7f76de7
Author: Miroslav Grepl <mgrepl>
Date:   Fri Dec 7 11:47:53 2012 +0100

    Add back tcp/8123 port as http_cache port

Comment 4 Fedora Update System 2012-12-11 17:52:08 UTC
selinux-policy-3.11.1-62.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/selinux-policy-3.11.1-62.fc18

Comment 5 Fedora Update System 2012-12-11 23:28:46 UTC
Package selinux-policy-3.11.1-62.fc18:
* should fix your issue,
* was pushed to the Fedora 18 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing selinux-policy-3.11.1-62.fc18'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2012-20203/selinux-policy-3.11.1-62.fc18
then log in and leave karma (feedback).

Comment 6 Fedora Update System 2012-12-17 17:40:30 UTC
selinux-policy-3.11.1-66.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/selinux-policy-3.11.1-66.fc18

Comment 7 Fedora Update System 2012-12-18 06:55:10 UTC
selinux-policy-3.11.1-66.fc18 has been pushed to the Fedora 18 stable repository.  If problems still persist, please make note of it in this bug report.


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