Date: Thu, 1 Nov 2001 15:15:52 +0100 From: Stijn Hoop <stijn@win.tue.nl> To: Anthony Atkielski <anthony@atkielski.com> Cc: FreeBSD Questions <freebsd-questions@freebsd.org> Subject: Re: Tiny starter configuration for FreeBSD Message-ID: <20011101151552.I70817@pcwin002.win.tue.nl> In-Reply-To: <00db01c162d9$3272bc90$0a00000a@atkielski.com>; from anthony@atkielski.com on Thu, Nov 01, 2001 at 02:29:11PM %2B0100 References: <005a01c161ed$a19933c0$1401a8c0@tedm.placo.com> <5.1.0.14.2.20011101165340.02192a40@pop.ozemail.com.au> <005301c162bd$59ac2740$0a00000a@atkielski.com> <006e01c162bf$8c5d87e0$0b64a8c0@becca> <006b01c162c4$c6597cb0$0a00000a@atkielski.com> <20011101224321.H35710@k7.mavetju.org> <009601c162cd$70da3190$0a00000a@atkielski.com> <20011101135558.H70817@pcwin002.win.tue.nl> <00db01c162d9$3272bc90$0a00000a@atkielski.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Nov 01, 2001 at 02:29:11PM +0100, Anthony Atkielski wrote: > > This functionality is not in the base OS as far as I know. > > It's built directly into the kernel. It is present in all versions of > NT/2000, as part of the base OS. Security is very deeply embedded in > Windows NT. Nothing runs without a security context. That's good. Aside from the fact that UNIX has 1 possible security context (root/non-root) instead of many, that's the same then. > > ?! *that's* a login? you mean you can actually log > > on to a Windows domain using http, using base OS > > functionality? > > Yes. If you enable authentication on IIS and specify that it is Windows > domain authentication, users will be logged into the domain when they > connect to the Web server, as I recall. If they are already logged into > the domain, this is transparent to the user. I used to use this on an > Intranet based on Windows, to provide maximum security and transparency at > the same time. Depending on who you were, you could see completely > different versions of a Web site. Well, the concept of logging in to a web site is not new to me, but gaining administrator privileges on a remote machine by simply surfing to it is functionality that I didn't know about. I don't know if this is what I'd want; what if the server is compromised? Or worse, your client is compromised? You'll gain the same privileges on the server. Yes, you're right, that's not necessarily 'root' or equivalent; but it's still a breakin that's spreading over the network. All of this has nothing to do with OS security IMHO, it's a part of your setup, whether you're running NT or UNIX or whatever. You have to decide on the level of access, and for most people, UNIX's root + groups approach simply works. If you really want the above functionality, then probably Windows is better. I still don't see why all of this makes UNIX insecure however. > > ... *and* do something useful? > > As useful as any Web application gets. There are administrative functions now > that you can do from the Web, and these require domain login. See my comments above - I think it's a pretty scary thought that I can use a browser to propagate my administrator privileges. > > Why does it work so well in practice then? > > It doesn't. But if you never used a more flexible system, you might not > notice. Sorry, I should have phrased that as: "Why does it work so well in practice for so many people then?" - obviously, your setup has higher granularity demands and Windows fits those. Fine, but that doesn't make it more secure. > > I'd think we'd all gone to a 'better' model if > > there was one ... > > Many organizations have ... it's one of the reasons for NT's success (security > is one of the significant advantages of NT over UNIX). I doubt that many organizations went over to NT on the basis of 'better security'. Care to share a story? > > ... tell you what, you can also grant privileges > > in *nix on another level than 'root/non-root' > > nowadays (think groups, sudo, countless other possibilities). > > Nope. None of these replaces the fundamental limitation of root = everything. True. But they do deliver better granularity at a user level - now you can have junior sysadmins that can't do everything. Or a helpdesk that can only reset passwords. That's what you wanted isn't it? I do agree with you that having most daemons run as root by default is not secure, but with proper care UNIX can work around that deficiency (and most unices do so nowadays - as in sandboxing named and other such measures). > > And that's why we need to give all users > > administrator access because otherwise nobody > > can install any software? > > No, you need to do that because you don't understand NT, or because the > developers writing the software didn't understand NT, or designed their > software poorly. In some ways I'm in above my head; I don't know a lot about NT - but I have 2 NT admins right around the corner who are more in the know, and they tried to set this up and failed. Indeed, most software written for NT doesn't understand it's security model. But that's one of the things that makes it weaker - you have to use the software (otherwise, why would you run the OS?), and if the security model of the software is weak, it takes the OS with it. At least, in the typical security/usability trade off. [1] Supposedly this should be fixed in Windows XP, but they also claimed that when delivering 2000, so I don't hold my breath. Would be nice if software vendors finally got it though. > > It's all possible - go read up on sudo(1) ... > > I already have, and it is nothing like the architecture I describe. sudo > impersonates; but in NT, you actually execute as an individual user with > specific privileges to do certain things. > > In fact, the NT architecture is far more elaborate than what you normally see > exposed in the standard user interfaces. It is possible to control these > things at a very fine level. These levels are not exposed because so few > sites are interested in them, and they tend to be confusing to those who > don't understand them. Of course - UNIX does not have as fine grained access control as NT (although ACL's in -CURRENT should change that a bit). But it's also usage and setup that makes a system secure. How many NT admins will really make a service run as a single user? How many services will actually require administrator privileges to be fully functional? > > ... yes things still run as root ... > > And that is the root of the problem, so to speak. As long as you have that > constraint, you have a big potential security problem. You have to limit the use of root because every use is a potential problem, true. But you also have to limit usage of services on NT, or any other potential security problem on that OS. > > If you work with NT, you have to keep up with > > the numerous vulnerability patches ... > > You have to do that with UNIX, too. There tends to be less patches, and those that come along tend to be less overall system affecting. Note that this is my opinion, not a cold hard fact. > > ... not to mention the resource runouts ... > > I haven't seen these, as a general rule, even on systems running for years. > > Resource exhaustion is usually an application problem. Yes, but most people do run applications on their servers. True, it's not the fault of the OS then, but having an OS without applications seems rather pointless. It's also true that having good hardware/drivers can make a lot of problems disappear, but in general the perceived stability of NT is not as good as UNIX. Unfortunately, it all also depends on the level of the sysadmin. > > I'd rather work with 'glaringly obvious limited > > security' that has proven itself for about 30 > > years already. > > Yes, your emotional attachment to UNIX is quite obvious. It's not emotional - I'm still using Windows as well, but it just doesn't fit my needs (and frequently just plain can't do what I want without requiring me to buy more software, but that's a whole other story). Fortunately it seems to fit yours. > > Never been there. But somehow I also wonder; > > if the concepts behind this system were so great, > > why weren't they reimplemented somewhere? > > They were. Many operating systems owe a great deal to Multics. Even NT is > partially inspired by Multics. Just as UNIX was, or in some other respect? > UNIX postdates Multics, but it was intended to be a simpler system, easy to > administer and use. Unfortunately, this meant cutting out most of the > security features. Just what security features are we talking about then? > > Yep, that's UNIX for you - and the first real argument > > for someone to switch to an 'easier' OS, say Windows NT. > > It is sufficient in itself to justify the switch, for many organizations. > There are other arguments, also, such as security and ease of administration > (for unsophisticated sites). I won't argue the ease of administration part, at least for various values of 'administration'. But like I said above, I haven't heard of a site switching to NT because of better security. > > I'd really love to know what things that would be. > > Running with an effective UID other than 0 and performing tasks restricted to > root, for example. That's indeed impossible, because you're coming from the wrong angle - if your UID != 0, you can't do tasks that require UID == 0. If you mean, 'granting specific UID's permission for specific tasks' then it's indeed impossible on a theoretical level; but there do exist valid practical workarounds that achieve the same thing. I grant you that UNIX is a bit more insecure in that respect, but to call it insecure is truly exaggerated. --Stijn [1] We have actually considered having the helpdesk install the software for the users, to avoid granting them administrator privileges. Unfortunately in a research environment that's simply not possible - it would mean a doubling of the support load at the least. How could we have worked around this? Fix binary applications? -- Q: Why is Batman better than Bill Gates? A: Batman was able to beat the Penguin. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011101151552.I70817>