To read all comments associated with this story, please click here.
The problem with Windows security has nothing to do with the core of the OS. It has to do with the core of MS themselves. MS has trained ISVs and their users to rely on having admin rights even when those rights are not necessary and are actually a detriment to the stability of their system. Windows has a more fine grained permission system than the *nixes but no one uses them. MS tried to rectify the issue with the AUC thing but because of the type of access most application are asking due to laziness, it fails in so many ways. It becomes annoying and instead of helping security it actually hurts because now the OS has trained users to ignore warnings. I think Ubuntu and OSX handle this much better.
I'm a linux and Mac, this is just my preference. However I do think that Windows gets a lot of flack for MS lack of balls when it comes to telling 3rd party developers to get their damn act together and also for not training uses properly from the get go. Something that Apple and Linux distros have been doing for years.
For those who believe Windows to be a multi-user system at the core, log into you Windows box twice as the same user - i.e., run two simultaneous sessions as the same user. Are you there yet? Even different users being logged in at the same time is done with "fast-user switching". The multi-user OS is an illusion. It is a hobby OS meant to keep track of your CD's and home checkbook. The current web-connected computer was not envisioned when it was created. Meanwhile, Unix was serving 1000's of simultaneous user sessions on a single box. Security was paramount from early on. I agree that Microsoft has done a pretty good job of bolting on fine-grained permissions, etc. with the NT kernel. But no matter how you spin it, processes in the Windows world "long to be free" and by nature tend to take over the computer. Only a massive harness-and-strap framework like we see in the Vista OS can try to prevent these processes from running wild. But just like "life" in the first Jurassic Park movie, they always find a way.
Now lets quit arguing, grab a nice BSD kernel, toss a few bucks at the kernel devs, close it all up for profit, and get to crackin' on that shiny new Winders!
"Windows has a more fine grained permission system than the *nixes but no one uses them."
No one?
I don't think so.
Almost all IT and system administrators apply them.
If you apply Read Write and Execute Permissions to a root folder and a user deletes it you would understand why it should be done.
There are 2 different types of permissions:
1. Share Permissions
2. NTFS (or file system) permissions
Windows has more permissions control than Unix, which is true and windows is better in this regard but windows is vulnerable (and buggy recently).
The simple problem is this; when Microsoft don't even code to the standards, how can things improve? I remember when Windows Terminal Services was released and the number of Microsoft applications that broke because they were never designed to run in that way.
Office 2003 on Vista being a recent example of when the licence 'accept/decline' keeps coming up because the settings aren't saved to a global location - why wasn't the installer right at the beginning put into administration mode so that all the necessary system wide things are set - such as accepting the licence?
But this goes beyond just mere security. Windows Vista, for example, not a single application bundled with it uses the new API's like WPF. Heck, there is still the font dialogue using widgets from circa Win 3.x; not a single bundled application are using the new and safe API calls that have been known about when Microsoft did the bit Windows XP SP2 development.
Microsoft needs to lead by example and start ensuring their own products actually work properly instead of getting up and lecturing the world on how 'third parties' were 'slow to release drivers/software'. It looks pretty stupid when an operating system vendor who has the operating system at their disposal, that they can't get their middleware functioning right on it. If they can't get it right, with the Windows source code and documentation in front of them - how on earth can the third parties get it correct?
Your post is very inaccurate. Windows (NT based versions) are inherently multi-user. Each user has their own home directory in windows as well. And security is also very tight because the user can only write to their home directory.
The problem is that most people are habitual of running windows as Administrator. This was the decision made by Microsoft to make Administrator as the default users for people migrating from Windows 9x.
These problems are due to business decisions as Microsoft doesn't want to alienate users by forcing them to run as limited user which would mean educating users on the difference between normal user account and administrator etc etc.
It is a tough problem to solve. You either bite the bullet and let users complain or you do something like UAC and still users complain or you do nothing and then users complain about security (or lack of it).
Users aren't just running as administrator out of habit; many programs just won't run correctly otherwise.
We usually run Linux on occasion, but once in a rare while I'll boot up Windows to do something or other. For example, my daughter was given a game for her birthday, so I booted up Windows to try it out. Turns out that I had to make my six-year-old girl an administrator if she wanted to play the game!
So while the architects did a good job on the core system, common practices force users to turn off the security.
Unfortunately not quite true...
Windows has permissions on several directories including the root of the disk that allow anyone to create files and folders, these are done with the so-called owner account.
I have to remove these permissions on terminal servers because they still allow users to install programs that don't use the Windows installers.
Only after this is done can users forget about writing anywhere but their own profile directory.





Member since:
2005-07-06
Windows is fundamentally a single-user, "I own the computer" operating system with multiple layers of kludges piled on top of this core. Unix-based OS's are fundamentally multi-user operating systems where "I only own my home directory". Any layers built on top of Unix-like OS's fundamentally secure core are "tightening" and "strengthening" measures. The layers built on top of Windows' insecure core are mere prayers.
It is time to do what Mac did, and bite the bullet and replace the insecure core.
All else is FUD and Flame.
EDIT: Punctuation
Edited 2008-08-08 13:59 UTC