All of lore.kernel.org
 help / color / mirror / Atom feed
From: KaiGai Kohei <kaigai@kaigai.gr.jp>
To: Paul Moore <paul.moore@hp.com>
Cc: KaiGai Kohei <kaigai@ak.jp.nec.com>,
	Stephen Smalley <sds@tycho.nsa.gov>, Joe Nall <joe@nall.com>,
	SELinux Mail List <selinux@tycho.nsa.gov>,
	ewalsh@tycho.nsa.gov
Subject: Re: generic fallbacks of getpeercon (Re: [redhat-lspp] Labeling an interface)
Date: Thu, 07 Jun 2007 02:23:34 +0900	[thread overview]
Message-ID: <4666ED96.8080508@kaigai.gr.jp> (raw)
In-Reply-To: <200706060745.31980.paul.moore@hp.com>

Paul Moore wrote:
> On Tuesday 05 June 2007 11:12:13 pm KaiGai Kohei wrote:
>>>> How do you think necessity for generic fall back behavior in the case
>>>> when getpeercon() failed?
>>> I think it would be useful.  There was some discussion of it during the
>>> labeled networking discussions, but directly returning the secmark label
>>> or the netif/netmsg labels was viewed as problematic because they aren't
>>> peer/process contexts.
>> I agree the conclusion. Those labels don't represent domain's one.
>> But I think that using them an entrypoint of domain transition is
>> a considerable idea, like this:
>>   type_transition postgresql_t untrusted_network_t : packet
>>     sepgsql_client_t;
>>   type_transition ftpd_t untrusted_network_t : packet 
>>     ftpd_client_t;
> 
> There was a discussion about using packet type transitions before, although it 
> was slightly different than what you are proposing here.  The basic idea was 
> to reconcile both the "internal" and "external" packet labels into a single 
> label using type transitions.  In the end it became to complex to write sane 
> policy so the idea was dropped.
> 
> Your proposal is slightly different in that I view it more as a per-domain 
> renaming scheme where you rename/relabel packets based on the receiving 
> domain.  Can you help me understand the advantage of 
> renaming "untrusted_network_t" to "sepgsql_client_t" from a policy point of 
> view?  For example, how would these two policy rules be different or have any 
> advantage over one another:
> 
>  allow sepgsql_t untrusted_network_t:<class> <perms>;
>  allow sepgsql_t sepgsql_client_t:<class> <perms>:

Paul,

I didn't intend to rename/relabel contexts of packets. The idea uses the context
of received packet as an entrypoint of domain transition. In other word, the
server process's context is renamed/relabeled based on packet's one.

The key issues in the discussion is how to determine the context of client process
connected via unlabeled network. My idea is generating an alternative client
context based on server process's one and packet's one, using domain transition.

 > Also, if it is decided that this idea does have merit and is worth
 > implementing I see it as being complimentary, and not mutually exclusive, to
 > static labeling of unlabeled hosts/networks.

The reason why I wanted to separate fallbacked client contexts per server domain
is not to give more permissions than necessary.
For example, fallbacked context for SE-PostgreSQL need to access database with
limited permission. It does not require permissions for any other services.

 >> Is it different from Paul's idea, isn't it?
 >> > In my understanding, he intends to associate a domain's context directly
 >> > with network interfaces and/or network addresses.
 >
 > Yes, that is correct.  It is similar to how existing trusted OSs provide
 > connection/packet labels for unlabeled hosts/networks.

Is it possible to apply onto TE label, not only MLS label?

Domain transition via packet class is a bit hard to understand.
It's preferable, if we can configure the fallbacked client context
directly, as follows:
    192.168.1.0/24 --> system_u:system_r:sepgsql_client_t
    192.168.2.0/24 --> system_u:system_r:sepgsql_trusted_client_t:SystemLow-SystemHigh

Thanks,
-- 
KaiGai Kohei <kaigai@kaigai.gr.jp>

--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.

  parent reply	other threads:[~2007-06-06 17:23 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <C32347D4-3E32-4741-B847-6826EED3BB7A@nall.com>
     [not found] ` <1180631739.3340.309.camel@moss-spartans.epoch.ncsc.mil>
2007-06-02 17:46   ` generic fallbacks of getpeercon (Re: [redhat-lspp] Labeling an interface) KaiGai Kohei
2007-06-04 10:52     ` KaiGai Kohei
2007-06-04 14:17     ` Stephen Smalley
2007-06-04 19:28       ` Paul Moore
2007-06-06  3:12       ` KaiGai Kohei
2007-06-06 11:45         ` Paul Moore
2007-06-06 13:38           ` Venkat Yekkirala
2007-06-06 13:47             ` Paul Moore
2007-06-06 14:28               ` Stephen Smalley
2007-06-06 17:25             ` KaiGai Kohei
2007-06-06 17:34               ` Stephen Smalley
2007-06-06 17:52                 ` KaiGai Kohei
2007-06-06 18:01                   ` Stephen Smalley
2007-06-06 18:37                     ` Venkat Yekkirala
2007-06-06 18:47                       ` Stephen Smalley
2007-06-06 17:23           ` KaiGai Kohei [this message]
2007-06-06 17:42             ` Paul Moore
2007-06-06 18:32               ` Venkat Yekkirala
2007-06-06 19:37                 ` Paul Moore
2007-06-06 20:31                   ` Joshua Brindle
2007-06-06 20:48                     ` Paul Moore
2007-06-06 21:19                       ` Joshua Brindle
2007-06-06 21:34                         ` Paul Moore
2007-06-06 21:39                         ` Eamon Walsh
2007-06-07  6:55               ` KaiGai Kohei
2007-06-07  7:42                 ` KaiGai Kohei
2007-06-07 11:51                   ` Paul Moore
2007-06-07 14:10                     ` KaiGai Kohei

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4666ED96.8080508@kaigai.gr.jp \
    --to=kaigai@kaigai.gr.jp \
    --cc=ewalsh@tycho.nsa.gov \
    --cc=joe@nall.com \
    --cc=kaigai@ak.jp.nec.com \
    --cc=paul.moore@hp.com \
    --cc=sds@tycho.nsa.gov \
    --cc=selinux@tycho.nsa.gov \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.