On Thu, 2005-11-10 at 23:03 -0800, matthew patton wrote: > hehe, good one. my point was never about MAC. Heck, I haven't done > anything with roles yet and that would be very good to have worked out.
I'm not sure if you're inferring that this is what I'm doing, but just to clarify, as I pointed out in my e-mail, the point of my post wasn't to score points or contradict the person I was replying to - I was genuinely interested in a friendly discussion because I wasn't sure as to what, precisely, Kurt Dillard meant, and I was interested! I also (politely) don't agree with you with regard to filing systems, either in theory or in practice, and this is why: Possibly the strongest pointer for me towards an increase in permission hardening in windows is that consulting within the financial sector as I am at the moment, I can see first hand the breakage which ensues thanks to the filing system and registry (arguably more important) permission changes resultant in Windows Server 2003 - colleagues of mine have had to devote significant amounts of time actually reducing the security of permissions on servers in a granular fashion in order to get their applications to work without (overly) compromising the security of their systems. In an altogether different environment, permissions on many unix and linux platforms are only better documented and understood due to the common, open architecture such systems share and the (traditionally) greater number of command line tools for enumerating, debugging, and setting permissions on these platforms. (note: I'm not trying to start a flamewar here, and I work with linux/unix too, so this isn't just a windows guy opining!) More recently, however, the number of such tools has increased (and the options available for windows admins at the command line have always been better-than-advertised thanks to the number of resource kits out there and also freeware offerings such as those from sysinternals). Unfortunately, the commercial nature of windows and the adherence which it lacks to a specific family of OS means that it lacks the open/ubiquitous factor which unix/linux have. But don't get this the wrong way round - I think this difference (locking permissions in unix is easier) owes a lot to this ubiquitous nature of the unix architecture and applications (such as apache) which commonly run on unix and linux/unix-derived operating systems. This isn't the same thing as the architecture being impossible to secure in this manner or a lack of support for doing it, neither of which (I think) are the case. Coupled with the commercial (and therefore proprietary) nature of the OS, this creates an environment in which it's easy to fall into the trap of assuming you have no options. My experience has been that, more recently, given contact with Microsoft (which is a gotcha, but with the complexity of modern operating systems is a gotcha which even open platforms like linux share if you're a large business), the options for locking down windows are increased and they're not as dire as you seem to assume. Besides this, there's nothing stopping you learning about the platform you've chosen to deploy and doing some testing! With some of my clients in the financial sector, I see (as above with a server build which owes much of its security both to the base OS and the organisation in question's default build security policy) permissions just as (if not more) locked down than unix over and above the base level. Further to what I've just said, in response to what you say here: > IMO before one gets wrapped up in roles or MAC, the stupid filesystem > has got to be done right. Arguably, you've got this the wrong way round, although contemporary philosophy seems to view this the other way round - if you read up on trusted computing (for instance, the NCSC orange book, which is over 20 years old - http://www.radium.ncsc.mil/tpep/library/rainbow/5200.28-STD.html), you'll find quite a different philosophy - that Discretionary Access Control or DAC (which is what you're referring to by the "stupid filesystem") is viewed as a companion to (and even further step than, when implemented properly), MAC. (Of course, if your DAC was never implemented properly in the first place, you need to establish a baseline from somewhere, but this is one of the reasons why DAC is such a mess and "locking down permissions" can feel, at times, really quite a sisyphan task!) See the following quote from the orange book: "...Discretionary controls are not a replacement for mandatory controls. In an environment in which information is classified (as in the DoD) discretionary security provides for a finer granularity of control within the overall constraints of the mandatory policy..." And, further to that: "...Access to classified information requires effective implementation of both types of controls as precondition to granting that access. In general, no person may have access to classified information unless: (a) that person has been determined to be trustworthy, i.e., granted a personnel security clearance -- MANDATORY, and (b) access is necessary for the performance of official duties, i.e., determined to have a need-to-know -- DISCRETIONARY. In other words, discretionary controls give individuals discretion to decide on which of the permissible accesses will actually be allowed to which users, consistent with overriding mandatory policy restrictions..." ie. once you've implemented your MAC, you'll be re-implementing DAC over the top of it to restrict your information based on Need To Know over and above your existing security level. But just my 2c! Sorry, this got quite long quite fast. :) - James. --------------------------------------------------------------------------- ---------------------------------------------------------------------------
