9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: "Steve Simon" <steve@quintile.net>
To: 9fans@cse.psu.edu
Subject: [9fans] 9grid
Date: Wed,  8 Jun 2005 15:14:27 +0100	[thread overview]
Message-ID: <5c6e493472c2a8aa4552a19e84a88a7a@quintile.net> (raw)

Hi,

First I wish to apologise as this will offend some people.

Am I the only one who is horrorfied at the lack of security
implied by the two recent cross domain authentication proposals?
I applaud any well written code for plan9 but I don't feel either
are ready for production.

The single central auth server approach uses the
outside.plan9.bell-labs.com auth server allowing anyone who has
a sources account (I.E. anyone who wants to), to attach to grid nodes
and run arbitary software, and read any world readable files
on any node. Ok Plan9 is more secure than some OS's but I wouldn't
allow just _anyone_ access to my machine.

There is no trust relationship with the users. Even if accounts where
explicitly enabled on demand and not by default there is still the problem
of how can an adminstrator on one side of the world trust an unknwon
user on the other side?

The system that delegates authentication to remote, trusted servers
requires the node adminstartor to explicitly set up this trust relationship
so there is much more control here. The adminstrator of each remote authdom
retains responsibility for the actions of their users on remote hosts,
thus we have a distributed system of trust; users would connect to their local
grid node to access the grid as whole, at least here we have a chance that
the adminstartors may know and trust their users who they allow onto the grid.

Unfortunately in the current implementation, exchanges between the auth
servers rely on DNS for mutual authentication. Given knowledge of a valid peer
node's domain name DNS poisining atttacks could easily allow a malacious user
access to all grid node; The once secure Plan9 OS is now wide open.

I can think of only two other possible structures for the grid.

1/ Shared private keys between N grid node's auth servers, these secrets
are used to ensure mutual authentication between auth servers and would
prevent the DNS posioning attack above. Unfortunately this would need 2N
secrets which must be securely distributed.

2/ Public Key encryption to secure the channel between auth servers. This
would need only N public keys, which could be distributed in the clear;
A central Certification Authority would not be needed as plan9 already has
a distributed file system, the certificates _are_ files.

Russ sugested that the certificates could have timestamps allowing remote
users to be proxy authenticated by a local auth server until an expiry timeout
has been reached, at which point an authoratitive certificate would have to be
fetched. This would be a very significant win over long-hall networks.

The solution to 9grid authentication seems clear to me.

Next we need some way to stop grid users hogging too much of a nodes
cpu capacity, network bandwidth, disk space, and to stop them posting spam
or organising DDoS attacks...

-Steve


             reply	other threads:[~2005-06-08 14:14 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-08 14:14 Steve Simon [this message]
2005-06-08 15:16 ` Russ Cox
2005-06-08 20:55 ` arisawa
2005-06-09  1:27 YAMANASHI Takeshi
2005-06-09  3:01 ` Ronald G. Minnich
2005-06-09  1:41 andrey mirtchovski
2005-06-09  2:17 YAMANASHI Takeshi
2005-06-09  2:28 ` andrey mirtchovski
2008-11-10  9:56 lupin636
2008-11-10 11:35 erik quanstrom
2008-11-10 14:13 ` lupin636
2008-11-10 17:35 ` lupin636
2008-11-10 17:46   ` ron minnich
2008-11-11  9:50   ` lupin636
2008-11-10 18:38 erik quanstrom
2008-11-11  9:50 ` lupin636
2008-11-11 12:09 erik quanstrom
2008-11-11 13:18 ` lupin636
2008-11-11 14:42   ` john
2008-11-11 15:12   ` lupin636
2008-11-11 15:40     ` Uriel
2008-11-11 16:32     ` lupin636
2008-11-11 17:14       ` Uriel
2008-11-12  0:13     ` ron minnich
2008-11-12  0:11       ` erik quanstrom
2008-11-12  0:41         ` ron minnich
2008-11-12  0:36           ` erik quanstrom
2008-11-12  0:59             ` ron minnich
2008-11-12 10:27     ` lupin636
2008-11-12 14:38       ` john
2008-11-12 16:16       ` lupin636
2008-11-13 12:08       ` lupin636
2008-11-13 12:28         ` erik quanstrom
2008-11-13 15:32         ` lupin636
2008-11-13 15:43 erik quanstrom
2008-11-13 17:06 ` lupin636
2008-11-13 17:24   ` andrey mirtchovski
2008-11-13 17:26     ` erik quanstrom
2008-11-14  9:44     ` lupin636
2008-11-14  9:44 ` torsbohn
2008-11-14 13:53   ` erik quanstrom
2008-11-14 12:23 erik quanstrom
2008-11-14 15:10 ` lupin636
2008-11-17 10:12 ` lupin636
2008-11-17 11:54   ` erik quanstrom
2008-11-17 14:13   ` lupin636
2008-11-17 14:14 erik quanstrom
2008-11-17 16:22 ` lupin636

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=5c6e493472c2a8aa4552a19e84a88a7a@quintile.net \
    --to=steve@quintile.net \
    --cc=9fans@cse.psu.edu \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).