Slashdot Mirror


Windows vs Mac Security

sdhorne writes "There is a good technical discussion over at InfoWorld on the merits of launchd and what is lacking in a comparable Windows secure solution. It is a throw back to the UNIX vs Windows security discussion that has been hashed out for many years." From the article: "it always traces back to Microsoft's untenable policy of maintaining gaps in Windows security to avoid competing with 3rd party vendors and certified partners. Apple's taking a different approach: What users need is in the box: Anti-virus, anti-spam, encryption, image backup and restore, offsite safe storage through .Mac, and launchd. Pretty soon any debate with Microsoft over security can be ended in one round when Apple stands up, says 'launchd', and sits back down."

21 of 513 comments (clear)

  1. Well written, but by MECC · · Score: 5, Insightful

    Pretty soon any debate with Microsoft over security can be ended in one round when Apple stands up, says 'launchd', and sits back down."

    It seemed pretty wello written. That said, I which he would have said a little more about launchd, at least enough to explain why it gives OSX an advantage. It would have also been nice to have had some kind of side-by side comparing Windows and OSX, like how the windows System pseudo-user trumps the admin user, and how there is not way to trump the OSX root user.

    Why this can't happen under OS X:

    I don't know if I'd go that far. OSX isn't 100% immune - it just has more common sense.

    --
    "We are all geniuses when we dream"
    - E.M. Cioran
    1. Re:Well written, but by fruitbane · · Score: 4, Insightful

      "I don't know if I'd go that far. OSX isn't 100% immune - it just has more common sense. "

      This is, I think, the best summary I've ever read of OS X's inherent security advantage. No OS could really succeed and be 100% air-tight at the same time, IMO. And user- and developer-friendliness does often mean compromises that lead to security problems, but the article that this discussion refers to covers a lot of it well and MECC (parent) summarized succintly and effectively.

      OS X, as an OS, has more common sense built-in.

    2. Re:Well written, but by 93+Escort+Wagon · · Score: 4, Insightful

      "In a nutshell, OS-X is built upon a known animal, whereas Windows is an animal which continues to be re-invented, like a leopard changing its spots to stripes, then plaid, then paisley, then something else."

      I am a Mac user, and I think it is an inherently safer platform design than Windows. But as was mentioned in a recent SANS newsletter, Apple has on occasion had problems with security issues that were resolved long ago on BSD proper and on Linux. So while it's true that OS X is "built upon a known animal", they haven't always been as consistent as I'd like with regard to learning from other groups' mistakes.

      --
      #DeleteChrome
    3. Re:Well written, but by IamTheRealMike · · Score: 4, Insightful

      From your article:

      First of all launchd replaced init and xinetd with one process. This is a bit scary as we now basically have init listening in a bunch of different ways for something to tell it to start a job. The security implications of this aren't really known yet with launchd being as young as it is.

      Secondly, and in the same vein, launchd is process 1 and it has the potential to take down the whole system. I've already seen unconfirmed reports of a ssh scan on a network causing launchd to freak out and make systems inaccessible. Having at least some sort of resource limit set on jobs might help here.

      I guess I'm struggling to see how yet another way to launch things is a revolution in security, given that it's a brand new (and therefore untested) codebase and already has reports of it "freaking out".

      The default in Windows is now to have no open ports as well due to the Firewall, so for any up to date installation of Windows the primary ways crap gets in is via browser exploits and malware. I am not seeing anything that Apple does fundamentally different here - Safari has already had several serious security problems, some of them near identical re-runs of problems Microsoft had before (eg help exploits). Malware is just a massively hard problem that nobody is really attacking right now, except maybe Microsoft with Vista, and there's certainly nothing in MacOS that would make it hard to write malware. Indeed there is very simple example code showing how to dump secure form information from Safari and you know how much marketeers would love that.

      A lot of the points made in TFA aren't valid either, they are apparently the result of an extreme lack of thought or knowledge:

      • The purpose of most of the DLLs in SYSTEM32 is documented, just look at the summary tab in Explorer, the problem is that with any complex operating system it's trivial to make up fake names that sound plausible. So it doesn't help as much as you might think. 3rd parties are "duty bound" to produce man pages? Please, how ridiculous. You could argue the same for Linux yet people routinely write new programs without man pages.

      • Windows requires users to use Administrator to install software? No, buggy software requires that. Historically a few Mac programs have had the same requirements ... iTunes springs to mind. Anyway, the Apple solution to buggy software requiring elevated privileges is "you can't run that software" - not very helpful if you need it.

      • "Microsoft made it easy for commercial applications to refuse a debugger's attempt to attach to a process or thread" ... no they didn't, there is no API to prevent yourself from being debugged. This is a total fantasy. Why should I believe this guy at all, when he is talking such nonsense? There are various tricks you can use to detect a debugger being attached but none of these are reliable and none have OS support. If you detect a debugger you cannot force it to detach, the best you can do is stop the program and put up a message box. I think he has seen these messages from copy protection software and assumed it's a flaw in Windows. Not so.

      • "Malicious code or data can be concealed in NTFS files' secondary streams. These are similar to HFS forks, but so few would think to look at these" ... a feature that OS X has as well.

      • "OS X's nearest equivalent to the Registry is Netinfo, but this requires authentication for modification. In later releases of OS X, it is fairly sparse" ... no it isn't, the "equivalent" is a mish-mash of Netinfo, XML plist files dotted around the filing system, UNIX style config files and proprietary datastores. I fail to see how this is an improvement.

      I could go on, most of these points are either wrong or very biased. The article seems worthless as a serious security analysis. I suggest the author go research exactly what modern malware does and how it works.

    4. Re:Well written, but by Sunrun · · Score: 4, Insightful

      - Windows requires users to use Administrator to install software? No, buggy software requires that. Historically a few Mac programs have had the same requirements ... iTunes springs to mind. Anyway, the Apple solution to buggy software requiring elevated privileges is "you can't run that software" - not very helpful if you need it.

      From TFA:
      "- Windows requires that users log in with administrative privileges to install software, which causes many to use privileged accounts for day-to-day usage." [emphasis mine]

      First, administrative privilege != the Administrator account.

      Secondly, yes, Windows does in fact require admin privs to install most software. Try this some time... Start with a fresh WinXP install. Immediately after setup, create an account with only User privilege and log in with it. Then, try to install all the software you'd normally install (anti-virus/spyware-checker/firewall, ANY productivity software (MS-Office, OpenOffice.org)) and see just how far you get. I'll save you the time: you can't. This is exactly the reason that most users run under an account with membership in the Administrators group for every-day tasks -- they're lazy and don't want to be bothered by being constantly denied access to this function or that resource because the account they're using isn't an Admin. By the way, this goes double for people whose job is Windows Administrator, but not just because they're lazy.. Because they're arrogant in addition to being lazy. [And before you label me a whiner, I'll say that it takes a Windows Admin to know a Windows Admin.]

      I further defy you to find a single piece of software for MacOS X that doesn't require Admin privs to install.

      I conclude that you're missing the point. A system requiring privilege to install ANY software will be inherently less prone to malware since it requires a brain to be sitting in front of the screen having to make a decision based essentially on whether or not they did anything to provoke such a request from the OS. It makes sense in a business environment where you don't want users installing just anything, and it makes sense in a home environment where you don't want your kids installing just anything -- especially when you don't want it installed by accident, which is (or should be) always. I would also point out that there's a difference between "want" and "need". In the above cases (business and home) "need" becomes "demonstrated need".

      /rant

      --
      "God is a comedian playing to an audience too afraid to laugh." -- Voltaire
  2. well, by joe+155 · · Score: 3, Insightful

    "Pretty soon any debate with Microsoft over security can be ended in one round when Apple stands up, says 'launchd', and sits back down"

    I would have though "(almost) no viruses" would have done the trick since OSX came out...

    Or, we don't effectively force everyone to run as super user all the time - if you prefer

    --
    *''I can't believe it's not a hyperlink.''
  3. But what if Microsoft offered it all together? by LinuxIsRetarded · · Score: 4, Insightful

    Apple's taking a different approach: What users need is in the box: Anti-virus, anti-spam, encryption, image backup and restore, offsite safe storage through.

    Don't you think that if Microsoft offered this that everyone would cry monopoly? Actually, I've seen other people on Slashdot cry this before at the announcement of Microsoft's OneCare program, which isn't even bundled with the OS!

    1. Re:But what if Microsoft offered it all together? by 99BottlesOfBeerInMyF · · Score: 3, Insightful

      It's not difficult to understand; it's annoying because it's the wrong argument, and it really muddies the debate. We don't need to hold Microsoft and Apple to different standards to show that one is better than the other. There is nothing wrong with MS bundling software with their OS.

      I 100% disagree with this. It is illegal for MS to bundle any software with their OS, for which their is a separate market (like antivirus). Anyone who understands the economic models of monopolies should understand why. We are holding MS and Apple to the same standard. Neither can bundle products they have for which there is an existing market, with a product they have that is a monopoly in a market. It is illegal for MS to bundle antivirus software with Windows. It is not illegal for them to bundle antivirus with their mice or MS Office. It is legal for Apple to bundle antivirus with their OS. If Apple is ever ruled to have a monopoly on iPods it will be illegal for them to bundle antivirus with iPods (They are around 70% of the market now and some courts have already begun investigating the possibility).

    2. Re:But what if Microsoft offered it all together? by DesireCampbell · · Score: 3, Insightful
      That's because Microsoft is a convicted monopolist while Apple is not
      Arrgghhh! I hate it when people say that. That exact line: "Microsoft is a convicted monopoly". You can't be "convicted" of being a monopoly, being a monopoly isn't a crime. Using that monopoly to unfairly gain more market share and profits is a crime.

      And it's not as simple as a monopoly being held to "higher standards", they're held to "completely different standards". This is a prime example, bundled security applications. Apple can bundle whatever they want with their OS - Microsoft can't. Microsoft can't even improve the damned search function without an investigation.

      Apple holds more power over their products than Microsoft has over theirs. Apple sells their software with their hardware. Microsoft just sells software. No one says anything bad about Apple forcing its customers to have their proprietary security software bundled withe the OS. Microsoft, on the other hand, is forced by the EU to provide versions of Windows without IE and Media Player. Apple puts in Spotlight, and people laud it. Microsoft tries to put the same function into Vista, and they get investigated.

      The bottom line is this: If you laud Apple for including more and more useful apps in System Software, then you can't turn around and troll Microsoft for doing the same thing. You can't complain about Windows being worse than OSX and then complain when they try to make it better than OSX.
      --
      Whoo, signature!
      DesireCampbell.com
    3. Re:But what if Microsoft offered it all together? by 99BottlesOfBeerInMyF · · Score: 3, Insightful

      The issue is persuading other companies who sell your product not to sell a competitors product.

      The issue is, quite simply, doing anything that provides your product an advantage over another product, because you have a monopoly on a different product. It does not matter if it is coercion, bundling, or tying. Here's the test. Look at two products in the market, like IE and Firefox. Does IE gain an advantage in the market because MS bundles it and thus all developers know users will have it available? Yes. Are they able to do this because of their Windows OS monopoly? Yes? Without having a monopoly, can the Firefox team make sure every Windows box has a copy of Firefox on them, without costing them any money? No. Thus it is a violation.

      Do you have cites for your claims MS has settled with several companies over Wordpad?

      I don't have citations, just something I think I recall from and article in passing. MS has settled a lot of these lawsuits, most of them with the inclusion of a nondisclosure clause. It would take a lot of digging to find any given specifics, if it is even possible.

      And while having 70% marketshare may have potential for monopoly influence, it doesn't mean you are imposing your will on vendors - it means you probably have enough clout to do so. I mean, anyone has the potential to be a murderer, but we aren't all murderers now, are we?

      Here is where you are making a false analogy. Being a murderer is illegal, by definition because it means you have committed murder, which is a crime. Being a monopolist is not illegal because gaining a monopoly is not illegal. Abusing a monopoly is illegal. Thus a more proper analogy would be Monopolists are like people who have baseball bats. They both have the power to commit a crime. If a baseball bat owner beats someone to death or if a monopolist bundles another product with their monopoly product, then they have committed a crime.

      In the case of Apple, the courts aren't ruling if Apple has beaten someone. We know Apple is bundling. The courts are ruling if Apple has a baseball bat and is thus guilty of armed assault instead of simple assault. They are measuring the size and weight of the stick Apple has to see if it is legally a weapon. (To be a more perfect analogy, beatings would have to not be a crime unless committed with a weapon as bundling is not a crime unless the involve a monopoly product.)

    4. Re:But what if Microsoft offered it all together? by amliebsch · · Score: 3, Insightful

      It's been discussed, but I've never seen anybody substantiate this claim.

      --
      If you don't know where you are going, you will wind up somewhere else.
  4. Microsoft is just too nice? by Shimmer · · Score: 3, Insightful

    It always traces back to Microsoft's untenable policy of maintaining gaps in Windows security to avoid competing with 3rd party vendors and certified partners

    So if they bundled everything you list (anti-virus, anti-spam, encryption, etc.) into the operating system, you don't think they'd be accused of illegally leveraging their monopoly advantage? Just look what happened when they integrated a web browser into the OS a few years ago.

    --
    The most rabid believers in American Exceptionalism are the exact same people whose policies are destroying it.
    1. Re:Microsoft is just too nice? by n2art2 · · Score: 3, Insightful

      The difference is. . . . Try and get rid of explorer. It is one thing to offer/install/bundle an option for those services, that can be deleted if the user decides to use another service. It's another to integrate it so far into the OS that you are forced to use it. (Think beyond websurfing.)

      --
      Self proclaimed wannabe geek. You know how it is. Most of us who read this stuff probably fit in that category.
    2. Re:Microsoft is just too nice? by 2nd+Post! · · Score: 5, Insightful

      And Apple could never do the things Microsoft does:
      1) Threaten Compaq with withholding OS licenses if Compaq installed Netscape Navigator as the default browser
      2) Threaten IBM with increased OS license fees if IBM did not drop OS/2

      Those were the lynchpins of the antitrust lawsuit. If Microsoft had ONLY bundled, they would not face monopoly abuse charges. Then HP could have UNBUNDLED IE and installed Firefox, or IBM could have unbundled Windows and installed OS/2.

      Apple's bundles can be unbundled. That is the critical difference. Drag Safari, Mail, Virex, Appleworks, iCal, and Quicktime to the trash, and the OS still works.

  5. Anti-virus? by Anonymous Coward · · Score: 4, Insightful

    If you don't count a trojan as a virus, then you don't need an anti-virus if your OS is secure. Apple can work on securing its OS or on an anti-trojan, but any effort spent on an anti-virus is wasted.

  6. Concept Versus Implementation by 99BottlesOfBeerInMyF · · Score: 5, Insightful

    Conceptually, I agree that LaunchD is a really slick idea and I really hope Linux and the BSDs take a good hard look at this code and the possibility of adopting it. That said, it is not a security panacea by any means, just one more clean, sensible implementation that leaves less room for a vulnerability. The thing that makes me hesitate to laud this feature, however, is the implementation. Apple has a lot of smart people working for them and a lot of old school UNIX geeks to whom secure programming is as natural as breathing. They also have a lot of coders and managers who realize that OS X is not a primarily security minded OS. Sure, it is better than Windows and on par with a desktop Linux distro, but it isn't a locked down OpenBSD install or a super secure Linux distro. They don't focus their efforts on security and it shows sometimes when they introduce new code. LaunchD replaces a number of time tested bits of code and while it is (IMHO) a much cleaner, nicer design I haven't a clue about how well written and tested it is, especially from a security perspective. I'd feel a lot better about claiming it as a security feature if I knew some white hats had pounded on it for a while and exposed anything Apple did not bother to think of. I'd feel a lot better if the OSS community in general jumped on it and adopted it, thus helping with this security testing and adding more eyes.

    I like LaunchD. I like OS X as a desktop. Lets just not get carried away here with random claims about security. OS X is inherently more secure than Windows, but that really isn't saying a lot. I'm not willing to just assume LaunchD is secure in and of itself, let alone that it will play a big part in securing the OS as a whole.

  7. Microsoft's Intentionally Insecure? by mpapet · · Score: 3, Insightful

    maintaining gaps in Windows security to avoid competing with 3rd party vendors

    Whoever dreamed up this rationalization is gifted.

    The holes are there by design. As in security wasn't a part of the overall design. I would argue that it still isn't.

    Like all the versions that have come before, "It's more secure" for about a week after launch and then I'm back to cleaning out infected PC's. This works out great for me because it's my job. Personally, the people that take my advice to switch -always- thank me later for making a switch.

    --
    http://www.maxineudall.com/2010/02/should-economists-be-sued-for-malpractice.html
  8. Re:UNIX and viruses by wfberg · · Score: 4, Insightful

    [..]say that as the Mac gains a larger market share, the number of viruses available for it will grow. I think this is of little consequence.[..] The permissions system means that a common virus could damage a user's home directory, but the system for the most part would remain unaffected, including other users [..] and most of all the fact that users don't run as administrators, all of these reasons make it much less likely that viruses could be as damaging as on Windows

    I think this is thinking too much from the perspective of old-school "format c:" destructive virusses.

    Today's malware isn't purely destructive anymore; in fact, little incentive exists to create a virus that merely destroys stuff.

    Today we're seeing worms that are used to send spam or perform DDOS attacks, and ransomware that encrypts your files and will only unlock them after you pay up.

    Access to a user's home directory is perfectly adequate for ransomware. Access to networkresources is sufficient to turn your computer into a zombie. Privileged system access is not the holy grail; access to specific resources are.

    User-based security offers no protection against this. Instead people often install programs to limit access to, for example, network resources - a software firewall that will inspect a process to see if it's legit before letting it use the network. Likewise we will need a security subsystem that prevent programs to write to files not created by them. For example; firefox should be able to upload a word document (read permissions) perhaps, but surely only word or openoffice should be permitted to (over)write it.

    This is more along the lines of capabilities, but it could be grafted onto user-based security systems (just run processes as different users and give those users permissions only to write to their own files and/or read from their own directories, with some exceptions (e.g. the filemanager)).

    Todays programs are so flexible and scriptable, not to mention just plain big and unverifiable, let alone complex and exploitable, that simply saying 'these programs have been deemed safe by an administrator, so they can access all your files if you run them' is no longer an adequate means of making sure applications stay within bounds. We really need to make programs stay on their own turf. Not just files; how about that registry? Why the hell should every program be able to read all of it, and write almost all of it, even keys that belong to a different program?

    It's not just windows; MacOS lacks such stuff at the moment too (though it will undoubtedly be much easier to integrate into it than into Windows). Really only SE Linux is set up to handle this sort of thing.

    --
    SCO employee? Check out the bounty
  9. Re:UNIX and viruses by Laur · · Score: 4, Insightful
    The permissions system means that a common virus could damage a user's home directory, but the system for the most part would remain unaffected, including other users.

    In reality, this is not an important distinction for home users. I don't know about you, but I don't care a whole lot about by system, I can re-install everything without too much trouble. Replacing years of digital family photograghs, financial records, etc. in my home directory? Impossible. This is why I backup my home directly regularly, but don't bother with the system.

    --
    When you lose something irreplaceable, you don't mourn for the thing you lost, you mourn for yourself. - Harpo Marx
  10. Behavioral flaws, not just technical by Kadin2048 · · Score: 4, Insightful

    What I thought was interesting in the article was how many of his complaints were probably due not to bad design per se, but to poor practices -- things like documentation, structural transparency, consistent use of system policies, etc.

    What struck me is that there are definitely seeming flaws in Windows that make it insecure as-is, but that it doesn't have to be this way; Microsoft has chosen and continues to choose to operate in such a way that exacerbates rather than minimizes the effect of many of the inherent weaknesses of the platform. A similarly designed system, managed and documented differently, would probably be less problematic.

    --
    "Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
  11. Secure principles by blakestah · · Score: 5, Insightful

    Mac is not dramatically more secure through launchd...

    It is simple really. Six years into OS X, growing market share, and no viruses in the wild.

    First principle. No ports open by default. Macs ship with a closed box. Plug it into the Internet, wait, and your machine will never get infected simply because it is not listening on any port, and no attacker has any foothold to get into the box. Over the years Windows has shipped with a wide variety of open ports, whether they be for netbios, smbd, messenger, IIS (on NT), or others. Many of these have been launching pads for viruses and worms.

    Second principle. Design the OS from the ground up to support privilege descalation. That is, make it so that every action on the machine is executed with User privileges or less, unless you really need more privilege. Launchd is a part of this. On Windows, you still have ActiveX with escalatable privilege, and people get infected from web surfing or opening email.

    That is really all it takes. Make it so a user cannot compromise the OS trivially, and there are no open ports, and you made a box as secure as a Mac. Once you start opening ports, you need to know what you are doing or you will be 0wn3d by some script kiddy. Make it secure by default, and force the user to take positive action to do anything that is a potential security problem (like installing executables from random places on the internet).