Slashdot Mirror


How the NSA Took Linux To the Next Level

An anonymous reader brings us IBM Developerworks' recent analysis of how the NSA built SELinux to withstand attacks. The article shows us some of the relevant kernel architecture and compares SELinux to a few other approaches. We've discussed SELinux in the past. Quoting: "If you have a program that responds to socket requests but doesn't need to access the file system, then that program should be able to listen on a given socket but not have access to the file system. That way, if the program is exploited in some way, its access is explicitly minimized. This type of control is called mandatory access control (MAC). Another approach to controlling access is role-based access control (RBAC). In RBAC, permissions are provided based on roles that are granted by the security system. The concept of a role differs from that of a traditional group in that a group represents one or more users. A role can represent multiple users, but it also represents the permissions that a set of users can perform. SELinux adds both MAC and RBAC to the GNU/Linux operating system."

172 comments

  1. All very good, but... by Shuntros · · Score: 4, Informative

    SElinux alone is an utter pain in the ass to work with, hence many Linux admins simply switch it off.

    Extensions such as AppArmour (formerly known as SubDomain), are what people should be embracing in order to make practical use of this excellent technology. Whilst using the same kernel hooks, AppArmour allows you to "snapshot" an application's activity and build a ruleset which can then be applied to the process. Much easier than titting around with SElinux policies forever and a day...

    1. Re:All very good, but... by FurtiveGlancer · · Score: 5, Informative

      utter pain in the ass to work with....

      Long ago, in the days when MLS was just the holy grail, Harris Corporation created the first A1 rated Multi-Level Secure computer system. I can't recall the name given to it, BlackHawk or something overblown like that. It was secure, but utterly unusable. According to some early testers I knew, it took more than 10 minutes just to log on. The command line took, on average, 5 minutes to respond to the simplest command. There were no policy templates, so all permissions and access lists had to be entered manually.

      SELinux doesn't look quite so bad in that light, now does it?

      --
      Invenio via vel creo
    2. Re:All very good, but... by Anonymous Coward · · Score: 2, Insightful

      utter pain in the ass to work with....

      Long ago, in the days when MLS was just the holy grail, Harris Corporation created the first A1 rated Multi-Level Secure computer system. I can't recall the name given to it, BlackHawk or something overblown like that. It was secure, but utterly unusable. According to some early testers I knew, it took more than 10 minutes just to log on. The command line took, on average, 5 minutes to respond to the simplest command. There were no policy templates, so all permissions and access lists had to be entered manually.


      SELinux doesn't look quite so bad in that light, now does it?

      Yeah, yeah, yeah and it took years to calculate by hand before computers and months to travel any distance before airplanes. So what's your point?

      SELinux is a pain in the ass. Your comparison is meaningless.

    3. Re:All very good, but... by TheLink · · Score: 2, Informative

      Yeah and we need some thing like "template sandboxes" on top of something like AppArmor.

      http://lists.opensuse.org/opensuse-bugs/2007-09/msg02994.html

      https://bugs.launchpad.net/ubuntu/+bug/156693

      --
    4. Re:All very good, but... by Znork · · Score: 5, Informative

      SElinux alone is an utter pain in the ass to work with, hence many Linux admins simply switch it off.

      I used to think so, but IMO, around FC7, F8 and RHEL 5 (ie, last year) the tipping point was reached. setroubleshoot and the tools around it are verbose to the point of telling you what to type so it's neither a problem noticing that there is an selinux denial nor any problem finding out what to do about it anymore.

      Many integration problems (applications and libraries doing funky stuff they plain shouldn't be doing, something not unique to selinux) have also been fixed at the appropriate places, leading to far fewer failures.

      Switching to MAC security has historically always been a serious pain in the ass (to the point where admins may have been better off implementing security by lack of mains power), but considering how painless it's gotten now I'd say whining about SElinux today says more about the admin than the software...

    5. Re:All very good, but... by zrq · · Score: 4, Interesting

      .. hence many Linux admins simply switch it off.

      Fine by me.
      Means that when it becomes mainstream, anyone who is familiar with how to configure and use it will be in high demand.

    6. Re:All very good, but... by Anonymous Coward · · Score: 0

      Actually yes, it does. It just doesn't look as bad as some old piece of crap that you worked on, that's all.

    7. Re:All very good, but... by Z00L00K · · Score: 4, Informative
      The concept of SELinux is good, but it isn't very friendly for the system administrator and the developers.

      A toolkit that allows for easy integration of new applications into SELinux and adaptations of already defined applikations would be useful. There are some around, but none are really good. The best would be if SELinux could allow for a "learning" mode for a single application in addition to the modes it has. Something like the Zonealarm firewall that is a bit noisy in the beginning, but as soon as it has learned what's permitted it goes silent. This will of course require a user-space application listening to the SELinux events. So a mode that allows SELinux to be permissive for a single application while strict for the rest of the system would be a nice thing.

      One common problem that I have experienced is that databases like MySQL are defined in SELinux, but it's very common that the data storage is going to be relocated in a production environment. This is a cumbersome process that costs a lot of work and pain.

      Another problem is the issue of semantics involved. It's not always clear and takes a lot of time to get familiar with.

      And still - SELinux is a "static" security measure, which only controls the permitted access between application and resource. It doesn't consider any frequency or volume. For example - a mail program may do a limited number of connections to port 25 per second, which is a normal situation, but if a higher frequency occurs that means that there may be a problem that has to be checked. OK - It's not easy to be intelligent about things like this, but system behavior pattern is a critical point in security too.

      So from a view of security SELinux is still only a step on the way, the threats of tomorrow has to be predicted and handled. This means that SELinux has to be a lot easier to work with for the average person to allow it to become a wide-spread security base.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    8. Re:All very good, but... by lkcl · · Score: 5, Insightful

      if you believe that selinux is "an utter pain in the ass" then you have misunderstood what selinux is for. selinux is specifically designed to be able to PROVE that an application is secure, using formal mathematical analysis (of the policy files).

      [ the principle on which selinux works is that when you change "security context", it doesn't matter a damn if you were "god" before, you're now starting from scratch with zero permissions in the new context unless otherwise specified. this is best illustrated with an example of when you go into a military environment, they take your ID badge away from you and issue you with a temporary one that is only relevant inside that building. you can't even leave the building without that temporary badge, and it's been coded to only let you go to the toilet and into the rooms that are associated with your specific purpose for being in that building. and of course, if you forget to get your permanent ID back once you _do_ leave, you'll find it very difficult to get out the country! ]

      one of the "rules" that GCHQ and the NSA follow is that it is perfectly acceptable for something to be "insecure" as long as you KNOW that it's insecure: you can then provide a workaround or a fix to ensure that the security vulnerability is never exploited.

      the one thing that you absolutely absolutely must not ever have is a situation where you don't KNOW whether something is "secure" or "insecure".

      so if AppArmour has wonderful automated rulesets that are impossible to analyse...

      the thing about selinux is that policies require that you understand the source code and what the application is doing. for example, one of the guidelines is that applications should use exec rather than fork, because that provides total privilege separation, obviously, between tasks. fork() does not provide such a complete level of privilege separation, and so up until quite recently there was absolutely no way in selinux to even step into a separate security context on a fork() - it just... wasn't ... even ... remotely worth considering.

      however, it turns out that there were some specific instances why stepping into a different security context on fork() is actually useful (such as in samba) and so it was added in. due to the circumstances under which this could be thoroughly abused, it was decided that it should be provided only via an explict selinux function call (usually, you can just provide an selinux policy statement without any code modifications).

    9. Re:All very good, but... by Score+Whore · · Score: 2, Interesting

      Forget the pain in the ass nature of the kit. Consider the legality of it. The NSA cannot legally own copyright. Anything they produce is in the public domain. Therefore they cannot legally develop code that is under any license.

    10. Re:All very good, but... by Arethan · · Score: 1

      I would have to agree. Having configured both SELinux and AppArmor to their desired effect, AppArmor is definitely the easier and faster of the two to get configured correctly. I'm much more likely to go through the effort to get AppArmor correctly configured, than piss around with SELinux for hours.

      SELinux may have more bells and whistles, but when you simply turn if off because it's a pain in the ass it doesn't really make your system any more secure.

    11. Re:All very good, but... by gaspyy · · Score: 4, Insightful

      Means that when it becomes mainstream, anyone who is familiar with how to configure and use it will be in high demand.

      If no one's using it, how will it become mainstream?

    12. Re:All very good, but... by jxxx · · Score: 2, Interesting

      Maybe I'm missing something here, but fork() and exec() do different things. I don't see how one could be used as a general purpose replacement for the other. Do you mean fork followed by exec instead of system()?

    13. Re:All very good, but... by HuguesT · · Score: 1

      Agreed, I have SELinux fully on with F8, I do notice a few messages from time to time, which I usually correct following the instruction given by SETroubleshoot, and all is well so far.

      I'm not positive my system is any more secure than if it were off, but at least I don't get angry and dismissive about it.

    14. Re:All very good, but... by Jah-Wren+Ryel · · Score: 1

      Forget the pain in the ass nature of the kit. Consider the legality of it. The NSA cannot legally own copyright. Anything they produce is in the public domain. Therefore they cannot legally develop code that is under any license. They can let contractors own it - happens all the time as a form of corporate socialism. They can also release to the public domain and let it be incorporated into the kernel - the GPL is compatible with the public domain. I really don't know what the NSA has done in this case, but licenses do not have to be an impediment here.
      --
      When information is power, privacy is freedom.
    15. Re:All very good, but... by Anonymous Coward · · Score: 0

      Um, you make this statement based on what, something that fell out of your nose during a big sigh? Seriously, have you polled the community? Working within the Federal governement and with many contractors and vendors I can say based on my experience and observation that SE is a defacto standard in this space. This may seem obvious since it's the Fed and associated companies using it, but remember that just about anyone selling anything sells (at some point) to the Fed. I would say that the current trend is in fact toward SE use rather than ignoring it.

    16. Re:All very good, but... by Anonymous Coward · · Score: 0

      In exactly the same way as every year is supposed to be the year of "Linux on the Desktop", according to /.

    17. Re:All very good, but... by SlashWombat · · Score: 3, Funny

      I guess when the project failed, all the programmers were snapped up by Micro$oft to work on their Vista project!

    18. Re:All very good, but... by John+Whitley · · Score: 4, Interesting
      This was also why a lot of folks prefer the competing grsecurity system. First listed among its features (and this has been available in grsec for years):

      An intelligent and robust Role-Based Access Control (RBAC) system that can generate least privilege policies for your entire system with no configuration grsec has a lot of other great features; see the link above for details. IMO, it's somewhat unfortunate that grsec has remained a separate patchset for the Linux kernel. Unusable security is useless security; I'm glad to see some catch-up on the SELinux front.

      Anyone out there who's used both grsec and SELinux + AppArmour want to favor us with a comparison?
    19. Re:All very good, but... by pembo13 · · Score: 0

      I beg to differ.

      --
      "Thanks for all the money you paid to us. We've used it to buy off ISO among other things" -Microsoft
    20. Re:All very good, but... by mosinu · · Score: 3, Interesting

      Means that when it becomes mainstream, anyone who is familiar with how to configure and use it will be in high demand.
      If no one's using it, how will it become mainstream? Quite simple really; Government mandate. Some agency will mandate it or make it part of some policy. From there it will spread into private sector via companies that do business with said agency. The Agency I work for is already doing just such a thing for new projects. Any company that is running Linux by contract has to secure their system through multiple methods; including SELinux.
    21. Re:All very good, but... by sjames · · Score: 4, Interesting

      None of that is the problem. The problem is in the WAY the access is specified by slicing and dicing the namespace to assign a security context to each object.

      If I write an app that needs to access JUST ONE file in /etc and other apps already access it and a few more under a common context, I have two choices. I can allow my new app carte blanche on /etc (bad) or modify the policy of the other apps that may access the file to grant them the new context. Lather, rinse, and repeat until you've made a hash of the policy source (and the admin rips out his last chunk of hair).

      Then, now that you've hacked away and sliced and diced enough to grant everything just what it needs and then you do yum update. I swear, you can actually HEAR satan laughing maniacally below as you have to either abort the security update (and be insecure), turn off MAC (and be insecure) or accept that half your system will be broken now (I suppose an app that won't even run IS secure, but now the ADMIN feels insecure).

      what's needed is a policy.d directory. Each app is allowed to drop one file there that will be evaluated in isolation from whatever else is there to grant that particular app what it needs without having to understand the rest of the policy (perhaps modified locally anyway). The directory is there, but there's more than one and the files there have to understand the others and the global policy to avoid problems (like preventing the policy from compiling at all).

      Most places simply do not wish to pay for the amount of admin time required to make all of that work. In many cases, they're well justified in that, the data on the systems just isn't worth that much.

      When it is used, a common pattern is to run the app and then mindlessly add permisssions for whatever was denied until it finally works. The natural result is an overly permissive policy. All the disadvantages to using AppArmour automation plus granting entirely unnecessary access to any files related to the files needed.

      My post sounds almost entirely negative, but that would be unfair. In the environment SELinux was developed for, where leaked information can be a real disaster, it makes perfect sense to invest the administrative effort that is required. For the rest of us, it got the kernel code moving in the right direction for MAC and MLS. That makes follow on schemes better suited to the rest of us more likely to happen.

    22. Re:All very good, but... by Score+Whore · · Score: 2, Interesting

      They can let contractors own it - happens all the time as a form of corporate socialism.


      No they can't. They can contract with a contractor to develop a piece of code, but the government cannot develop something and then give it to a corporation. If government employees are building it, it's public domain. That's the nature of US law.

      They can also release to the public domain and let it be incorporated into the kernel - the GPL is compatible with the public domain.


      Your statement is fallacious because the code is automatically public domain. There is nothing to be done to release it into the public domain as it's already there. The legal problem comes from the fact that it is a derivative of a GPLed program. Therefore if they want to distribute it it must be GPLed. However government employees cannot produce anything that is not in the public domain. See the problem? The GPL license requires that they release their changes under the GPL and the law requires that they release under the public domain.
    23. Re:All very good, but... by Anonymous Coward · · Score: 0

      sure they can. Most government entities can contract out and hold copyrights from the contractors. Silly little loophole.

    24. Re:All very good, but... by mrsteveman1 · · Score: 3, Funny

      mister please don't make me use that thing, i promise i'll be real good! and i won't complain about selinux or nothin!

    25. Re:All very good, but... by Tracy+Reed · · Score: 4, Informative

      I have been deployed around 30 CentOS 5 boxes over the last 6 months. I used to turn SE Linux off when it was expedient. Not anymore. I educated myself about how it works and a few basic commands. This:

      audit2allow -a -m local

      checkmodule -M -m -o local.m

      semodule_package -o local.pp -m local.mod

      semodule -i ./local.pp

      sequence of commands plus togglesebool has so far accomplished everything I have ever needed. I don't run any hand-written custom policy. And we have web servers, dns, mysql, web dev, and all kinds of other stuff.

      It sure is easier than setting up a bunch of iptables commands although I see it as analogous. I rarely hear people talk about what a pain iptables is (and it surely is a pain). I think learning SE Linux was even easier.

      I really look forward to more policy being applied to the desktop applications. That work is already well underway thanks to Dan Walsh over at RedHat who has already made a lot of progress in this area:

      http://danwalsh.livejournal.com/15700.html
      http://danwalsh.livejournal.com/18578.html
      http://danwalsh.livejournal.com/13376.html

      It is work like this that leads me to believe that Linux is not nearly so likely to become like Windows should it ever achieve a critical mass of desktop users. Security problems on the massive scale of some other operating systems are not inevitable. That is nice to know.

      Also, I will be doing a presentation on SE Linux at the Kernel Panic Linux Users Group:

      http://www.kernel-panic.org/meetings/general/08-07-10-general-meeting

      on July 10th, 2008. If you are in San Diego please stop by. It's a fun crowd and the after-meeting meeting at Denny's is always lively.

    26. Re:All very good, but... by Anonymous Coward · · Score: 0

      Very nice explanation, but fork and exec serve different purposes and are not interchangeable (they are complementary) and your post makes no sense.

      Gee. When does slashdot officially becomes dig?

    27. Re:All very good, but... by toddestan · · Score: 3, Funny

      According to some early testers I knew, it took more than 10 minutes just to log on. The command line took, on average, 5 minutes to respond to the simplest command.

      Well, you can get the same experience now, thanks to Symantec Antivirus. Well, except for the whole actual security part.

    28. Re:All very good, but... by Anonymous Coward · · Score: 0

      Because IT people don't create the demand, they are just a necessary component to run the "super NSA secure OS" some CEO read about in Businessweek or something. They don't care if you'd prefer to shut it off.

    29. Re:All very good, but... by Jah-Wren+Ryel · · Score: 1

      No they can't. They can contract with a contractor to develop a piece of code, but the government cannot develop something and then give it to a corporation. If government employees are building it, it's public domain. That's the nature of US law. You presume that the employees are not employees of a contractor who have been emplaced at the government agency.

      There is nothing to be done to release it into the public domain as it's already there. The legal problem comes from the fact that it is a derivative of a GPLed program. I think you will find that a set of is not a derivative work because it does not contain the original work.
      --
      When information is power, privacy is freedom.
    30. Re:All very good, but... by RKBA · · Score: 1

      Yes, but that was before the computer industry switched from mechanical relays to vacuum tubes. ;-)

    31. Re:All very good, but... by Bazer · · Score: 1

      By the visible hand of government regulation.

    32. Re:All very good, but... by lkcl · · Score: 1

      yes i think i do :) [mean fork() followed by exec()].

      as opposed to just fork() which then shares some resources and continues to use them - e.g. file handles etc.

    33. Re:All very good, but... by init100 · · Score: 1

      One common problem that I have experienced is that databases like MySQL are defined in SELinux, but it's very common that the data storage is going to be relocated in a production environment. This is a cumbersome process that costs a lot of work and pain.

      Is it? You only have to make sure that the new location has the same security context as the old one, which takes one simple command. Hardly a "cumbersome process".

    34. Re:All very good, but... by WuphonsReach · · Score: 1

      Agreed, I have SELinux fully on with F8, I do notice a few messages from time to time, which I usually correct following the instruction given by SETroubleshoot, and all is well so far.

      I've wanted to use it since 2004 or so (back when I was running Gentoo), but while the core functionality was there, I wasn't up to the task of dealing with it.

      When we started switching boxes over to CentOS 5 (back in 2007), it came with SELinux enabled out-of-the-box in "targeted" mode. To me, that was the tipping point for SELinux adoption. It now had a major company (Red Hat) who was shipping it as enabled and was supporting it in a major fashion.

      It still gets in my way sometimes. I had to write a custom profile to get Nagios 2.x working. And I'll be spending some time this morning convincing Twiki to run from the /var/www/twiki folder. Or maybe I'll move the install folder to somewhere more SELinux friendly. Or fix the file labeling.

      But on the whole - I'm a firm believer in the concept. It provides defense in depth, so even if Apache gets hacked there are limits to what an attacker can do without also defeating SELinux.

      (And given the number of sealert messages that I get when SELinux isn't configured properly, it apparently works well.)

      --
      Wolde you bothe eate your cake, and have your cake?
    35. Re:All very good, but... by WuphonsReach · · Score: 3, Informative

      The best would be if SELinux could allow for a "learning" mode for a single application in addition to the modes it has.

      Read up on "seaudit" and creating custom profiles.

      (I still think the process could be a bit more human-friendly, but the tools do exist.)
      For example - a mail program may do a limited number of connections to port 25 per second, which is a normal situation, but if a higher frequency occurs that means that there may be a problem that has to be checked. OK - It's not easy to be intelligent about things like this, but system behavior pattern is a critical point in security too.

      Things like that are better handled in IPTABLES, or in the application itself. Those do not fall under the purview of SELinux which is about controlling access to the resource (not rate limiting or rationing out a resource).

      --
      Wolde you bothe eate your cake, and have your cake?
    36. Re:All very good, but... by Anonymous Coward · · Score: 0

      Seriously - has the author of that article tried to use SELinux? It's not just difficult to use, and doesn't just cause weird errors - it's also a hideously ugly hack. How could a second authentication, permission and privilidge system, working at the same time as traditional *nix, be anything but?

    37. Re:All very good, but... by Anonymous Coward · · Score: 0

      I am 100% behind that idea. Not having ZoneAlarm functionality is now the only showstopper preventing my company making the switch to Linux.

      If *any* application on my desktop box wants to either connect to the internet or accept incoming connections then I want to know about it first. And yes that means every single application, no exceptions. DNS, NTP, email, browser, you name it. *I* get to decide if it's allowed or not. Not "Joe Random" programmer, not the distribution maintainers, Me.

      Having something unexpected trying to get internet access is one of the best indicators that you've potentially got malicious code running on your box. This lesson has been learnt well over the last decades and it's about time Linux had user land tools that work as well as Zone Alarm.

    38. Re:All very good, but... by drinkypoo · · Score: 1

      This illustrates the point that the problem with selinux is the lack of useful userspace tools. This is pretty much the area in which redhate has always excelled. They have the best VM management tool too.

      I think I'll be waiting another year or two to move on to selinux. I've tried to jump on it a couple times now, and for the most part, when I try to follow a guide the guide turns out to be shit.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    39. Re:All very good, but... by Z00L00K · · Score: 1
      Just an example - doesn't have to be a network resource - it can be file I/O, a socket, a shared memory or a device too. In those cases iptables isn't sufficient.

      As for what I wrote - I wanted just the single application to be in learning mode, not the whole system. A slight difference that has an impact for developing larger system solutions.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    40. Re:All very good, but... by Z00L00K · · Score: 1
      Well - if you want the system to know about your new filesystem, e.g. "/db" and the database directory/files there so it can process them during a relabeling process you can't just change the security context of the files/directories. You will also edit the SELinux configuration files to tell that the files in that location shall be relabeled to the specific label you select whenever requested.

      And to add to this - if you have a new filesystem, the root of that filesystem has to have an appropriate label too in order to allow the application to access the files.

      So what in theory is a simple operation can easily get out of hand and overwhelm anyone with low patience.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    41. Re:All very good, but... by eldepeche · · Score: 1

      OK, so the NSA creates software, and that software is public domain. That means I can take it and incorporate it into a GPL project. The original code is still in the public domain.

    42. Re:All very good, but... by corbettw · · Score: 1

      Things like that are better handled in IPTABLES, or in the application itself. Those do not fall under the purview of SELinux which is about controlling access to the resource (not rate limiting or rationing out a resource). iptables would be good for killing incoming connections, but first you have to detect them. AFAIK, it doesn't provide a way to throttle connections (if it does, please share). The application itself should, but if it doesn't you can limit how much memory is available to it (which should prevent it from forking, though it can have other, unintended, consequences, as well).

      You could also set net.core.rmem_max and ..wmem_max to low values, preventing the TCP stack from having enough memory to handle too many connections. It would take some tweaking to find the right balance. Perhaps a better version of the same concept would be to have a script that monitors the number of established connections for a service, and when it hits some threshold starts throttling back on those settings using the /proc filesystem. Once the connections drop down, then reset them to their original settings.
      --
      God invented whiskey so the Irish would not rule the world.
    43. Re:All very good, but... by lkcl · · Score: 1

      yes - i clarified later with a correction that you of course must do fork() followed by exec() to create an (isolated) child process.

      sorry!

    44. Re:All very good, but... by WuphonsReach · · Score: 1

      AFAIK, it doesn't provide a way to throttle connections (if it does, please share).

      We don't use it ourselves - and we use Shorewall to manage our firewall settings, but I refer you to Shorewall Rules. There is a section there titled "rate limit". It allows you to control how many connections per second/minute and how big of a burst are allowed before Shorewall will block it. AFAIK, this is done with iptables.

      Or this older article from 2005 Using iptables to rate-limit incoming connections.

      --
      Wolde you bothe eate your cake, and have your cake?
    45. Re:All very good, but... by zrq · · Score: 1

      If no one's using it ...

      I am. I suspect many others are too.

      I made a conscious decision to learn how to use it on our test servers now, rather than wait until it is required on our production servers.

    46. Re:All very good, but... by corbettw · · Score: 1

      Cool, thanks, I'll be sure to read through those.

      --
      God invented whiskey so the Irish would not rule the world.
    47. Re:All very good, but... by Anonymous Coward · · Score: 0

      Well, so few people use Oracle for their DB, it must not be worth much either.

  2. wrong by larry+bagina · · Score: 3, Informative
    SELinux adds both MAC and RBAC to the GNU/Linux operating system.

    No it doesn't. SELinux adds both MAC and RBAC to the Linux kernel.

    --
    Do you even lift?

    These aren't the 'roids you're looking for.

    1. Re:wrong by Anonymous Coward · · Score: 0, Flamebait

      I like to call it the GNU/KDE/Firefox/Apache/Perl/Linux operating system, you insensitive clod!

    2. Re:wrong by Anonymous Coward · · Score: 0, Troll

      Yes. And it's not "GNU/Linux" anyway - that term was just made up by Stallman. Everyone who matters has always just called the OS "Linux".

    3. Re:wrong by pablomme · · Score: 4, Funny

      I like to call it GNU/X11/Apache/Linux/TeX/Perl/Python/FreeCiv . FreeCiv is clearly at the core of it all.

      --
      The state you are in while your HEAD is detached... - wait, what?
    4. Re:wrong by harry666t · · Score: 2, Insightful

      > Everyone who matters has always just called the OS "Linux".

      Of course including the Debian people, who made one of the greatest distros so far?

      (NOT the greatest, but certainly one of the greatest)

    5. Re:wrong by pablomme · · Score: 3, Interesting

      Everyone who matters has always just called the OS "Linux". Right. Because none of the packages on this list matters at all.
      --
      The state you are in while your HEAD is detached... - wait, what?
    6. Re:wrong by Anpheus · · Score: 1

      If I create an extremely vital set of components for Windows that eventually everyone feels like they couldn't live without, but can actually be shipped without Windows, should I require everyone to refer to Windows as AnpheusIsAwesome/Windows?

    7. Re:wrong by ciggieposeur · · Score: 1

      SELinux has a userspace component, so it adds to both the "Linux kernel" AND the "GNU/Linux operating system".

    8. Re:wrong by schon · · Score: 1

      Funny, I didn't know SELinux user-space utilites were part of the GNU project.

      Someone might want to tell the folks who maintain savannah.gnu.org, because there's no mention of it anywhere on their site.

    9. Re:wrong by osgeek · · Score: 2, Funny

      I find firebrand statements like this to be divisive and petty.

      I prefer to say it more delicately, like "Everyone without a stick up his ass just calls the OS 'Linux'".

      I realize that his is also divisive since it could be "stick up her ass", but I hate to make the facts come across as so wordy when you have to say "his or her ass".

    10. Re:wrong by Haeleth · · Score: 2, Insightful

      Big difference: Windows was designed to be a complete OS in its own right, but Linux was specifically intended to be combined with the GNU software to form a complete OS.

      I can't deny that I normally call the combination "Linux" myself, but I don't understand why some people are actively hostile to the concept of calling it "GNU/Linux" instead.

    11. Re:wrong by Anonymous Coward · · Score: 0

      You don't seem to get it. Windows will still be Windows. But if they're using your software, they're using BOTH your software AND Windows. So yes, there is a good reason to say they'd be running AnpheseusIsAwesome ON (or OVER) Windows. Notice that the / form of the name (AnapheseusIsAwesome/Windows) is formally a fraction whose denominator is Windows.

      With some work, I can get the BSD tool chain to work on the Linux kernel, in which case I'd be running the BSD-user-space over Linux. BSDUS/Linux would not be a bad name for such a configuration. Or I can just use the GNU user-space over Linux, and legitimately be running GNU/Linux.

      Mind you, I don't have any particularly strong feelings about this issue, but I can see where Stallman was coming from. And I can see good reasons for people to adopt it. Imagine a domain where Photoshop is the end-all application. It might sound pretty stupid for a user to say they use Photoshop/Windows to edit images, but that is still a LOT less stupid sounding than saying they use Windows to edit images.

    12. Re:wrong by Blob+Pet · · Score: 1

      um you must be new here.

      --
      "...today consumers have been conditioned to think of beer when they see a bullfrog..."
    13. Re:wrong by pablomme · · Score: 1
      Your argument supports the GNU point of view. Chronologically, GNU was the existing (and incomplete) operating system, and along came Torvalds and created the "extremely vital set of components" you mention. Your argument can be taken even further: why should anyone refer to GNU as GNU/Linux?

      Having said that, I'm not particularly in favour of either naming.
      • - GNU software is (usually) great, and I don't mind acknowledging that.
      • - But you could replace essentially all GNU components with other free components and still be running, say, Ubuntu. Not as easily with the kernel, though.
      • - That brings up the point of the ability of telling between GNU/Linux, GNU/[OpenSolaris kernel], GNU/[FreeBSD kernel], etc, and between GNU/Linux and the OS for an embedded device which uses the Linux kernel but none of the GNU parts.
      • - ...

      [/internal_debate]

      In my opinion, just call it whatever you feel like calling it.
      --
      The state you are in while your HEAD is detached... - wait, what?
    14. Re:wrong by Anonymous Coward · · Score: 0

      I don't usually see people being hostile to the concept of calling it "GNU/Linux". What I do see is people getting cranky about the absence of the GNU part, and people telling those people to buzz off.

      I think the reason it usually gets left out is because "GNU/Linux" just looks and sounds awkward. Well, that and people have taken to using a distro name instead.

    15. Re:wrong by dbIII · · Score: 1
      It looks like we have another postliterate that prefers to make up their own definitions instead of using one that is written down - and there are quite a lot of them :(

      You will find "operating system" defined in textbooks. Using it other ways even for political purposes just confuses and annoys.

    16. Re:wrong by dbIII · · Score: 1
      That is a very good point. I've always sided with the view that whoever takes the trouble to put together the distribution gets to name it and not some outside political agency no matter how good their intentions are. That in my view makes "Debian GNU/Linux" the only gnu/linux until another distro decides they want to change the name.

      The whole LiGnuX renaming thing which became the gnu/linux renaming thing on the second attempt really just looked like gnu using linux as an advertising bandwagon from what the gnu newsletters said. Good cause but tacky behaviour IMHO.

    17. Re:wrong by larry+bagina · · Score: 2, Informative

      early versions of Linux used minix user space applications.

      --
      Do you even lift?

      These aren't the 'roids you're looking for.

    18. Re:wrong by ciggieposeur · · Score: 1

      Funny, I didn't know SELinux user-space utilites were part of the GNU project.

      It doesn't have to be owned by GNU to modify the GNU operating system. Next you'll tell me that the userspace component of a Windows driver isn't really a Windows program unless it's owned by Microsoft.

      The Unix-like OS that features the Linux kernel built by the GNU compiler running hundreds of GNU programs (via the GNU dynamic linker) that all communicate with the kernel through GNU libc is GNU/Linux. When the majority of Slackware, Sabayon, Debian, (k)Ubuntu, Centos/RedHat, SuSE, and Gentoo stop shipping a system with a kernel built by the GNU compiler that requires the GNU libc to do anything useful then I'll be happy to call what we normally mean by "general-purpose computer running Linux" something else, just as I'm happy calling the Debian distribution of the BSD kernel with the GNU userland the GNU/kFreeBSD OS.

  3. Released? Please, recapture it! by Monty+Worm · · Score: 1, Informative

    This is timely, if nothing else. I've spent the last working day wrestling with what turned out to be SELinux, while trying to write a postfix filter. The way these work is postfix gives emails as command line options and STDIO, and the software (usually) connects to SMTP on an alternative port to move the email on. Except with SELinux running (which is installed by default in some distros), it fails. Silently. Please, take it away!

    --
    ... and today's pet project has ... been discarded for lack of time.
    1. Re:Released? Please, recapture it! by HeroreV · · Score: 3, Insightful

      Why not just fix the silent failure? I don't understand this mentality of "There's a bug in the system! Scrap the whole thing!"

    2. Re:Released? Please, recapture it! by Znork · · Score: 1

      Make a note to make certain setroubleshoot or similar utility is always installed (on RH and derivatives it is, IIRC). That would have given you nice log output and instructions on how to resolve the problem.

      Silently.

      Yah, used to annoy the hell out of me. It's probably leaving a message in some audit log, but that isn't exactly friendly.

      With the appropriate daemons and utilities installed you should get a nice syslog message (or even a blinkety desktop icon if it's on your local machine). Then it's basically just a matter of using audit2allow to convert the audit alerts to selinux policy and loading it.

  4. Security vs Functionality tradeoff by redelm · · Score: 0
    While I have some interest in seeing these crackdowns, I feel the main topic goes undiscussed: What functionality is being sacrificed for security? I don't see any mention SEL will run Firefox.


    Microsloth is only very slowing coming around to the idea of user accounts and privilege isolation (badly implemented in MS-Windows-Vista) in spite of repeated warnings from the NIST and the longtime availability of NIST Registry patches. While MS might be suboptimizing for low early user-support calls, they are not entirely stupid and must have chosen low security defaults for some reasons.


    Until these reasons for low security are thoroughly discussed and refuted, that model will persist. "Better safe than sorry" convinces only those already convinced. I say: Better neither than either.

    1. Re:Security vs Functionality tradeoff by garett_spencley · · Score: 5, Informative

      I don't see any mention SEL will run Firefox.

      SEL doesn't "run" anything. It's basically access control lists implemented for the Linux kernel. So rather than using only the traditional unix-based filesystem permissions you can finely control what individual processes, groups and users can do in ways not possible with unix filesystem permissions alone.

      It's explained not just in TFA but the summary:

      "If you have a program that responds to socket requests but doesn't need to access the file system, then that program should be able to listen on a given socket but not have access to the file system. That way, if the program is exploited in some way, its access is explicitly minimized. This type of control is called mandatory access control (MAC). Another approach to controlling access is role-based access control (RBAC). In RBAC, permissions are provided based on roles that are granted by the security system. The concept of a role differs from that of a traditional group in that a group represents one or more users. A role can represent multiple users, but it also represents the permissions that a set of users can perform. SELinux adds both MAC and RBAC to the GNU/Linux operating system."

      You can think of SEL as being an "add-on" to the Linux kernel. I realize that the name can be confusing since it kind of implies that it may be a completely different "Linux system" all together. It's really just an implementation of access control lists for Linux and various Linux distrubitions (such as Redhat) ship with it. It doesn't alter what the system can and can't run. It simply provides a tool for the administrator to further control and lock down the system in ways that are otherwise not possible with vanilla kernel.

    2. Re:Security vs Functionality tradeoff by redelm · · Score: 1
      Yes, I realize SEL is more a security module[s]. But is there one/several for Firefox preconfigured? Flexibility (aka "power") is good, but requires admin effort. Some of this can be saved with intelligent defaults. When you haul them out of the base code, you owe the user some guidence.

    3. Re:Security vs Functionality tradeoff by sjames · · Score: 1

      Microsoft's problem is that they started out with single user (and single tasking) non-networked systems that had NO security at all. Apps programmers just did whatever they liked without any thought for permissions. Then MS just tacked on as little as possible later to add rudimentry multi-user (one at a time) support complete with some dirty hacks to make old software function in that environment, some more hacks to keep users from totally screwing things up, and some access control. They focused so hard on legacy support that they destroyed any chance to do things the right way.

      They had an opportunity with OS/2 to escape from that with a legacy compatability box inside a more advanced system, but they decided to go with NT instead. Why they've never revisited the idea of a legacy environment inside a real OS is beyond me.

      The result is applications that want to write in the program directories and worse, want to re-write themselves as the user that ran them to do updates with no real pressure to change until Vista. Vista has so many problems in itself that any problems are perceived to be Vista problems even when it's a 3rd party app that hasn't done the right thing. Also, MS decided to be user obnoxious with UAC rather than putting the apps in a "penelty box" to drive users to perceive them as old and clunky (and so drive them to update).

      People use Unix of various flavors daily without root capabilities and sometimes with no way to get them on work machines. That's because Unix apps know that configs go in $HOME and that they're not likely permitted to re-write themselves. For single user home machines, a select group of config tools are suid root. The point is that it's not necessary to neuter security to permit painless operation.

    4. Re:Security vs Functionality tradeoff by init100 · · Score: 1

      But is there one/several for Firefox preconfigured?

      Sure there is. Try any default install of Fedora, CentOS or RHEL, and you will be able to run Firefox just fine with SELinux enabled.

    5. Re:Security vs Functionality tradeoff by dave562 · · Score: 1

      You have a valid question about security versus functionality but I don't get the sense that SELinux is too concerned with that. There are dozens of distros out there that will give you "functionality" straight out of the box. Ubuntu seems to be a popular distro for those who want things to "just work". It seems to me like SELinux is one of those tools in the toolbox that you use in specific situations that call for it. If you're running a desktop where you want to tinker with things all the time, SELinux is probably just going to frustrate you. On the other hand, if you're developing a financial network that is supposed to pass secure, encrypted data around and be resistant to attack, then you might appreciate the very finely grained controls that are available in SELinux.

  5. RSBAC anyone ? by geekymachoman · · Score: 1

    I think RSBAC (linux kernel patch) covers that, and much more. http://www.rsbac.org/

  6. Do you really want NSA developing your OS? by Anonymous Coward · · Score: 0, Insightful

    Until we have a free government, I cannot see how anyone can trust software that comes from the NSA.

    1. Re:Do you really want NSA developing your OS? by diegocgteleline.es · · Score: 5, Insightful

      Uh...you can read the code. People has read the code and there's nothing "hidden" on it. People who thinks that SELinux allows the NSA to enter your computer are just clueless.

    2. Re:Do you really want NSA developing your OS? by AndGodSed · · Score: 2, Funny

      Here you go... and in your size too! Yep, a nice tinfoil hat, provided by the NSA no less!

    3. Re:Do you really want NSA developing your OS? by FurtiveGlancer · · Score: 1

      If it keeps them off my phone line, then I'm all for it!

      I hear voices, but they *usually* belong to people.

      --
      Invenio via vel creo
    4. Re:Do you really want NSA developing your OS? by Anonymous Coward · · Score: 0

      For the love of God...review the code you moron.

    5. Re:Do you really want NSA developing your OS? by EQ · · Score: 2, Insightful

      Put your nearly insane conspiracy theories to rest on this one, thats one of the reasons we have open source: to keep things like Microsoft's backdoors from being slipped in.

      And aside from that, lets see, they have arguably several hundred to thousands of the best crypto and security people working for them so yeah lets completely ignore what they have to say in favor of some nebulous conspiracy.

      Think about this: could such a conspiracy exist with that many people being informed of it? All it takes is one person to anonymusly leak stuff to the papers or internet. I mean really, the secret money tracing stuff they were doing got splashed on the front pages of the NYTimes, and the previous administration couldn't even keep a presidential blowjob a secret.

      But the bottom line is: It is OPEN SOURCE (and even GPL'd!). Read the code. They cannot hide a backdoor from the kernel group when those programmers and all the patchers, testers, and users have all the source.

      --
      Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo! http://goo.gl/J9bkO
    6. Re:Do you really want NSA developing your OS? by harry666t · · Score: 1

      They might be able to do that anyway. Who knows if they hadn't had secret deals with Intel, AMD, or whomever? You probably cannot review the source code of your CPU.

    7. Re:Do you really want NSA developing your OS? by Anonymous Coward · · Score: 0

      No but you could, at least in theory, stick an oscilloscope to the network cable and detect what is going out and coming in.

    8. Re:Do you really want NSA developing your OS? by diegocgteleline.es · · Score: 1

      They might be able to do that anyway. Who knows if they hadn't had secret deals with Intel, AMD, or whomever? You probably cannot review the source code of your CPU.

      Sorry, but I'm paranoid. What if you're a NSA agent? So I think you're lying me - my CPUs are safe.

    9. Re:Do you really want NSA developing your OS? by Truekaiser · · Score: 2, Insightful

      I'll bet money that 99% of the people who have access to the code would have no clue what it does. that only leaves those who are familiar with it and those that know the language it is written in but are not familiar with the specific code. the former would easily be silenced, the later can be dismissed as kooks and better yet other people will do it to them as well due to herd mentality.
      frankly i think it's wise to not trust the nsa even if you can see the code, because frankly it's just plain misplaced faith that a simple philosophy like oss can universally protect you from such malicious intent, Especially considering the history and track record of such a agency.

    10. Re:Do you really want NSA developing your OS? by diegocgteleline.es · · Score: 5, Funny

      But WHAT if the company who made the oscilloscope also had secret deals with the NSA???

    11. Re:Do you really want NSA developing your OS? by Anonymous Coward · · Score: 1, Funny

      So as long as the code doesn't execute the PWN instruction, we're safe.

    12. Re:Do you really want NSA developing your OS? by Anonymous Coward · · Score: 0

      Build your own. An oscilloscope is a remarkably simple device and you can literally make the components you need yourself.

      People often have this idea that all technology is something advanced and magical that only a high tech company can master. In reality many gadgets are merely more advanced and refined versions of a very simple phenomena. With some effort you can make a perfectly functional camera using a cardboard box as an example.

      One of the more extreme examples of this is probably a nuclear reactor. While you will probably need quite a bit if physics to deduce the proper dimensions, it is quite possible to produce a nuclear reactor by simply stacking graphite blocks and uranium in the right proportions. You need very pure uranium and graphite if you hope to do it without enrichment, but it is quite possible.

    13. Re:Do you really want NSA developing your OS? by Hal_Porter · · Score: 2, Informative

      Why do people say "you can read the code". Firstly, how many people who are actually skilled enough to read code critically have time to do that? And what's the chance out of the millions of lines of code in the kernel that they just happen to find the very few with bugs.

      And how many of those are looking to fix old bugs as opposed to add new features? Bugs can exist in code that lots of people look at for 25 years.

      http://it.slashdot.org/article.pl?sid=08/05/11/1339228

      Most subtle bugs can't be seen by reading code anyway, and you can't find them in a debugger because they are so hard to reproduce. Instead you need to form hypothesis about what the mechanism is, test them and then try possible fixes. And then get lots of people to test those.

      Most interesting bugs only get understood/fixed when someone is affected by them. Having millions of people stare at the code to find one chance in a million is pointless. In fact it's worse than that since those people will be tempted to refactor working but ugly code intead of hunting for those hard to find bugs.

      The concept is totally naive, IMO. Only people who've never found a very subtle bug would believe it.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    14. Re:Do you really want NSA developing your OS? by Darkness404 · · Score: 2, Insightful

      So some people don't understand the code very well. Thats why the 1% of people look for malicious changes and fix them. How many open-source projects have malware in them compared to all the Windows Freeware/Shareware/Adware that has it in them? Its like saying just because a recipe isn't verified by a chemist it must be designed to either A) Poison you or B) affect your mind to buy less of a competitors product. Source code can be compared to a recipe, and how many people who cook really know the science behind why they add in everything to bake a cake? I'm sure very few but how many die from incorrect recipes that were changed? I'm sure very very very few ton none.

      --
      Taxation is legalized theft, no more, no less.
    15. Re:Do you really want NSA developing your OS? by harry666t · · Score: 1

      You know that too much paranoia is bad? (: your thoughts make up your reality.

    16. Re:Do you really want NSA developing your OS? by Hal_Porter · · Score: 1

      Then your world has been virtualised out from under you, Matrix style.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    17. Re:Do you really want NSA developing your OS? by spiffmastercow · · Score: 1, Redundant

      You can read a EULA too, but how often do people do that? Now lets think here... How many Linux sysadmins are proficient in C (i.e. have at least the knowledge contained in K&R)? Of those, how many have enough knowledge to understand kernel code? Of those, how many have the spare time to do so? And of those, how many will bother? And of those, how many will build the OS from source to ensure that the binaries aren't compromised? Just because something is open source doesn't necessarily mean it's safe. I'm not saying I think there is or is not a devious plot here.. But I am saying that you shouldn't assume that open source code cannot be malicious.

    18. Re:Do you really want NSA developing your OS? by lkcl · · Score: 4, Interesting

      the "NSA" is not developing "your" OS. the NSA is (indirectly) verifying via (indirect) sponsorship and advocation that an (independent) university-developed scientific security model (FLASK) is (independently) implemented by a company and then (independently) maintained by (independent) people such as stephen smalley.

      look at the web site. it say "POSIX not good enough for proper security. therefore we make it better so that civil services, and other environments where security matters, have someone to go to to ask 'is this secure to level XYZ?' and get a certification"

      the bottom line is: be damn grateful for their involvement because it beefs up linux and allows it to be recommended for deployment in places where it would otherwise be hopelessly outclassed. remember: selinux allows linux to be "certified" as "secure", and mathematically provable as "secure". those certifications are absolutely vital for deployment in certain kinds of environments.

      so be glad that linux is getting a leg-up, thanks to the NSA.

    19. Re:Do you really want NSA developing your OS? by Anonymous Coward · · Score: 0

      use an oscilliscope made pre-NSA

    20. Re:Do you really want NSA developing your OS? by Anonymous Coward · · Score: 5, Funny

      Build your own. An oscilloscope is a remarkably simple device and you can literally make the components you need yourself.

      But what if YOU have a secret deal with the NSA?

    21. Re:Do you really want NSA developing your OS? by cobaltnova · · Score: 1

      Your metaphor (ok, simile, you grammar nazis) isn't the greatest. Almost all combinations of food are harmless to healthy persons. Cooking (i.e., undercooking or blackening) can, indeed, allow or create toxins. But, that's fairly well understood by almost all cooks. Very little chemistry is needed to determine if a food is toxic: most of the time you can tell by the taste.

    22. Re:Do you really want NSA developing your OS? by SGC+Sculler · · Score: 1

      But what if YOU have a secret deal with the NSA? Then you need to work on overcoming your schizophrenia.
    23. Re:Do you really want NSA developing your OS? by Haeleth · · Score: 4, Insightful

      I'll bet money that 99% of the people who have access to the code would have no clue what it does. that only leaves those who are familiar with it and those that know the language it is written in but are not familiar with the specific code. the former would easily be silenced
      How, and by whom exactly?

      You're forgetting that Linux development is distributed across the world. Maybe the NSA might conceivably be able to "silence" developers within the USA. But what hold exactly would the NSA have over developers in Europe and Asia? Even if you suppose that the USA's close allies such as Britain and Canada might be persuaded to join in some conspiracy, what would other countries have to gain? You would have to propose a global conspiracy, with governments the world over uniting to, um, stop themselves from finding out about the backdoors that America was using to spy on them? Sorry, but this is the most half-baked conspiracy theory I've ever heard.

      frankly i think it's wise to not trust the nsa even if you can see the code, because frankly it's just plain misplaced faith that a simple philosophy like oss can universally protect you from such malicious intent, Especially considering the history and track record of such a agency.
      Leaving aside the clear paranoia that is causing you to characterise the NSA as "malicious", they would have to be not only malicious but downright stupid to put backdoors into open-source code.

      For example, the Chinese government uses Linux themselves. It would be foolhardy in the extreme for NSA to assume that they will not have their best security experts scouring the code for backdoors. If they found one, they could use it themselves -- or they could expose it, seriously embarrassing the United States. Not exactly the kind of thing that's likely to result in NSA funding being maintained at its present high level...
    24. Re:Do you really want NSA developing your OS? by sjames · · Score: 2, Informative

      I've read that code, all of it. There are no back doors to be found there. It's all well structured and very clear. Various access functions in the kernel call into SELinux functions and get a simple Boolean result OK or not OK.

      The VFS contains bits to implement the security.* xattrs.

    25. Re:Do you really want NSA developing your OS? by AHuxley · · Score: 1

      And thats why you hand out MS like candy.
      Some smart person in China, Russia, Serbia,
      Australia, South Africa, the USA, Germany, ..., ... Brazil will be sitting in from of their computer
      one day reading source code that they are interested in.
      They will lol at the quality or think wow this is
      neat until they see something out of place.
      Then they go the the forum, chat room, blog or web page for 'help'.
      Game over back door.
      Best to just keep people using MS products.
      MS is the backdoor.

      --
      Domestic spying is now "Benign Information Gathering"
    26. Re:Do you really want NSA developing your OS? by Hyppy · · Score: 1

      But what if his schizophrenia is a direct result of NSA activity?

    27. Re:Do you really want NSA developing your OS? by Anonymous Coward · · Score: 0

      I would think the NSA would have an interest in keeping any server in the US secure to help protect infrastructure.

    28. Re:Do you really want NSA developing your OS? by Hyppy · · Score: 1

      The NSA actually has a very good track record in contributing to public knowledge of network security and hardening. The SNACs are amazing pieces of in-depth documentation for nearly any hardware and software platform.

    29. Re:Do you really want NSA developing your OS? by dave562 · · Score: 1
      I've known people who have been recruited by the NSA. The NSA and the government in general are just people. They are people who are focused on keeping the United States of America in the position of power that it has come to be in. The few guys I've known have been extremely intelligent. They are really good at solving problems and developing systems to address needs. They "understand" things on levels of complexity that most people don't even need to bother themselves with. I like using the tools that insanely smart people use. I don't have any problems standing on the shoulders of giants. It is in the best interests of the government for the information economy to be based on a solid foundation. One of the characteristics of a solid foundation is depth. Another characteristic is flexibility. It seems like SELinux has both of those. In fact it seems to embody them so much that it is a turn off to those without the time, inclination or capacity to fully exploit the foundation that has been provided.

      Systems like SELinux are necessary to prove that things can be done. When intensely complex trust relationships and roles can be setup within a system, legislation can follow to mandate those controls. Imagine if the financial sector was required to fully track who accesses your information. Imagine if they had to limit access to your information based on which entity wanted the access. Imagine they should have to limit specific entities to specific types of access that can only be granted by following strict, fully auditable procedures. With a system like SELinux, those kind of things can be done. The private sector can't throw up their hands and say, "Oh, it's too complex. We don't even have the tools to do it with."

    30. Re:Do you really want NSA developing your OS? by Anonymous Coward · · Score: 0

      Just like the NSA put a backdoor in DES right?

      I think at this point the government is more concerned about protecting their own secrets than getting at ours.

    31. Re:Do you really want NSA developing your OS? by mrmeval · · Score: 1

      The geek side of NSA is excellent and they've done a tremendous job with the US governments electronic security infrastructure. The political side is not so good but it is fortunate that we have rather fast turnover for elected officials so that they can't do too much damage.

      It's not perfect.

      What does the most harm is when any government agency is given too much power by the laws that are enacted. Then you should point the blame at the legislature and the executive.

      --
      I'd go on a Vegan diet but the delivery time from Vega is too long. --brownkitty
    32. Re:Do you really want NSA developing your OS? by Anonymous Coward · · Score: 0

      But what if we are just part of a simulation inside a supercomputer at the NSA?

      "Life and history as we know it" actually rendered in 47 minutes during the burn-in of the latest cluster.

      Fortunately, they will likely run the simulation long past our lifetimes, at least for a few more cpu hours.

      Afterall, quantum mechanics is floating-point rounding error.

    33. Re:Do you really want NSA developing your OS? by DragonWriter · · Score: 1

      Leaving aside the clear paranoia that is causing you to characterise the NSA as "malicious", they would have to be not only malicious but downright stupid to put backdoors into open-source code.


      Especially in open-source code designed to enable systems to meet certification requirements for sensitive US government use.

  7. Roles by Threni · · Score: 1

    Hasn't NT had Roles for 15 years?

    1. Re:Roles by Concerned+Onlooker · · Score: 4, Funny

      Yes, but they're usually just bit parts.

      --
      http://www.rootstrikers.org/
    2. Re:Roles by holophrastic · · Score: 1

      Yeah, and so have I. People like to find new information and call it "innovation", when really the impressive part is that the information was published, not that the technique was used. The technique's been used for ages.

      Hey, my own crappy Perl code in which I've build a few dozen web-sites solves potential SQL exploits by running SQL queries using a MySQL user with limited permissions. There's no reason for 95% of database queries to have write access (INSERT) to anything. And some database tables don't need to be read (SELECT) by 99% of database queries.

      So, simply put, when I'm looking up product information from the product catalogue, I use the MySQL user with general read access, which can't write anything at all, and can't read from things like the purchase table. And when the visitor makes a purchase, it happens through a MySQL user with INSERT access to the purchase table, but without UPDATE permission.

      So instead of throwing random SQL strings at the database, I effectively run it through a user that can't do much of anything else -- and the else that it can do is perfectly legitimately done by the site visitor -- simply not necessarily from that particular web page.

      And that's all above standard SQL injection dodging with escaping and such.

    3. Re:Roles by HuguesT · · Score: 1

      Yes, correct, but they are not being used by default, in particular in the common configuration where the default user is also the administrator :-(

  8. Roles and Groups by Anonymous Coward · · Score: 0

    "The concept of a role differs from that of a traditional group in that a group represents one or more users."

    And so does a traditional group in /etc/group, it represents on or more users. So what are they trying to say with this sentence?

  9. ...to the Next Level of confusion by Anonymous Coward · · Score: 0

    I would rather deal with the simple security that comes with Linux and already works well than to have to try to figure out a poorly implemented security system that emits an endless stream of crap into my log files and breaks something just about every time my distro updates it.

    Simple and understandable makes for better security than complicated and unfathomable.

  10. Roles vs Groups? by iamhigh · · Score: 1
    I guess I have never understood the fundamental difference; from TFS...

    The concept of a role differs from that of a traditional group in that a group represents one or more users. A role can represent multiple users, but it also represents the permissions that a set of users can perform. So a role is a group with permissions applied? WTF is the point of a group with no permissions applied?

    Now I understand you can have different kinds of groups: email/distro, file access, memory access, execute, etc. But even if you use one group to give all of these, that doesn't really make it different that a group with permissions.

    Is it all PHB/Marketing BS or am I missing something?
    --
    No comprende? Let me type that a little slower for you...
    1. Re:Roles vs Groups? by init100 · · Score: 1

      The difference is that a traditional group can change the permissions of files that it owns, but with SELinux roles, the permissions can only be changed by the policy administrator. This is actually a primary distinction between DAC security and MAC security.

    2. Re:Roles vs Groups? by Em+Adespoton · · Score: 1

      Is it all PHB/Marketing BS or am I missing something? Both :)

      The article should educate you a lot more than the summary does. Role-based-access controls tasks, whereas group-based-access controls resource access. SELinux doesn't supplant groups, it augments them.

      However, as usual, TFS is mostly PHP/Mareting BS aimed to get you to read the article and/or post in the comment thread.
  11. Learn how to use SELinux without disabling it... by Ang31us · · Score: 4, Informative

    Use SELinux commands like "restorecon" and "chcon" to fix SELinux context issues. Also, there is a GUI tool called "system-config-selinux" if you find that kind of stuff easier. If all else fails, use "setenforce" to put SELinux into WARN mode and look at the logs for clues about what is wrong.

  12. Interesting article, but confused definitions by mattpalmer1086 · · Score: 4, Informative

    The definitions used by the article for discretionary, mandatory and role-based access control are a bit confused. They mix up the type of control with mechanisms commonly used to implement them. To be fair, there are no standard definitions of them - or at least, there's more than one "standard" definition. However, having just completed a dissertation in which I attempted to define those things, allow me to offer them here.

    Discretionary - a user has discretion to decide who has access to what. A common form of discretionary control is access control lists (ACLs), but capabilities are also discretionary. A big problem with discretionary control is the amount of work the user has to do to grant and revoke permissions to everything. This often leads to systems configured with too much permission - the opposite of principle of least privilege.

    Mandatory - the system mandates who has access to what by enforcing a policy (a user may set the policy, but can't grant access outside of that policy). Mandatory systems can require less work to administer day-to-day, as authorisation has been automated. But its often a lot of work to set good policies and are obviously less capable of dealing with things that fall outside of normal working practices. Common forms of mandatory control include label based systems like Bell-LaPadula or Biba (e.g. Top Secret: nuclear;projectX) and protection rings in CPUs.

    Role-based (RBAC)- the permissions of a user are taken from their role or roles. Lots of people ask why this isn't the same as using groups and access control lists. You can implement bits of RBAC using groups and ACLs, but full RBAC is more abstract than this, and explicitly allows for greater control - like separation of duties. The current "standard" is the NIST RBAC definition http://csrc.nist.gov/groups/SNS/rbac/)

    Note that RBAC can be mandatory or discretionary - it doesn't say how the permissions are allocated to the roles, just how the user gets those permissions through the roles.

    1. Re:Interesting article, but confused definitions by 93+Escort+Wagon · · Score: 1

      Role-based (RBAC)- the permissions of a user are taken from their role or roles. Lots of people ask why this isn't the same as using groups and access control lists. You can implement bits of RBAC using groups and ACLs, but full RBAC is more abstract than this, and explicitly allows for greater control - like separation of duties. Couldn't you accomplish separation of duties with groups (by using different groups for different duties) and/or setting up permissions in a less sweeping way in sudoers (not just always using "fubar ALL=(ALL) ALL")? I freely admit I know just enough to be dangerous; but sometimes I wonder if the problem is really just the way user/group permissions have traditionally been used in Linux/Unix.
      --
      #DeleteChrome
    2. Re:Interesting article, but confused definitions by mattpalmer1086 · · Score: 1

      You can arbitrarily approximate bits of RBAC using ACLs and groups, to different degrees in different systems. I'm not expert enough with using sudo to comment on your proposal, but as far as I'm aware, no ACL based system allows the user to pick which groups will be active during their session, nor does it allow the selection of groups to be controlled (e.g. if you pick group A, you can't have group B at the same time).

  13. TrustedBSD by mi · · Score: 0, Troll

    Unless you are married to Linux already for some reason, you'll want TrustedBSD. Built on top of/as extension to FreeBSD, it had a substantial head-start...

    --
    In Soviet Washington the swamp drains you.
    1. Re:TrustedBSD by diegocgteleline.es · · Score: 4, Informative

      Yeah, that must be why TrustedBSD is copying SELinux (just like opensolaris)...

      People claims SELinux is difficult, but they often don't understand how insanely powerful it is....

    2. Re:TrustedBSD by lkcl · · Score: 4, Informative

      "they often don't understand how insanely powerful it is...."

      mwahahahah. yeah. nor how much money can be made from being able to program it and set up selinux policies that make normal people's brains bleed :) from scratch, selinux takes about 6 to 8 weeks to understand and program "policies". that means that anyone with the skill to program it is onto a goldmine, especially in the kinds of defense and civil contracts where selinux is "required".

      i did a contract for a veeery unusual selinux deployment, involving file transfers from a high security environment to a low security one and vice-versa (secure-ftp). the requirement was that files in "incoming" should be creatable-and-writeable from one side, and from the other side they should be "readable-and-deletable" on the other.

      the requirement was nothing to do with UNIX, it was implementing guidelines laid out in a policy document on security and was government-mandated for the type of environment (i wasn't told what that was but it was probably banking).

      when my friend analysed the requirements, he did a simple map of POSIX permissions onto the requirements. POSIX merges "write" with "delete". automatically and immediately, pure POSIX permissions made it absolutely impossible to fulfil the requirements. he looked at extended ACLs: that didn't help, either.

      on investigation of SElinux permissions, with extended separate permissions on directories as well as files, it was abundantly clear that SElinux fitted the requirements perfectly.

      in SElinux, every single OS primitive has its own ACL permission, so there are about twenty five ACLs for files and a further separate and distinct twenty five or so ACLs for subdirectories. thirty or more for sockets. network addresses can be represented in ACLs. it's just ... absolutely insanely powerful, just as you say.

      you could, if you were prepared to drive yourself up the wall, implement a per-user firewall for ssh. not using ssh configs but using selinux policy files! you could define the set of IP addresses which become relevant for a particular user context, which gets activated when the user logs in because PAM helps define the user's role, and then the combination of the user's role and the fact that the ssh "context" is entered, then network access is granted or denied because... ... i'm belabouring the point but you get the picture i'm sure. oh. and of course, you could even define that a particular ssh subsystem (sftp) be allowed from a particular range of IP addresses and ssh "shell" access only allowed from another range.

      it is truly truly absolutely amazing.

    3. Re:TrustedBSD by nguy · · Score: 1

      People claims SELinux is difficult, but they often don't understand how insanely powerful it is....

      No, it isn't powerful. "Powerful" doesn't just mean being able to get a lot done, it means getting a lot done with little time or effort.

    4. Re:TrustedBSD by CoderDevo · · Score: 1

      How do you give a post a (Score 10, Enlightening)?

      This is what I got from your post: I can define a role that allows its members to access defined sets of resources (files/directories/IP addresses+ports), where access is limited to those operations permitted for each resource, but only when using the application and protocol proscribed for each set.

      This will be very useful to my work. Thank you.

    5. Re:TrustedBSD by mi · · Score: 1

      Yeah, that must be why TrustedBSD is copying SELinux

      There is no "copying". They all implement the same features and ideas designed by the same people for the same purpose. From NSA's, DARPA's et al. perspective, this is simply "dual sourcing" — what customers with huge budgets and strict requirements are supposed to do for redundancy.

      They need them all for their multitude of servers. But since FreeBSD is better to begin with, you want it for your smaller establishment, unless already "married" to Linux for some other reason — just as I said before ;-)

      The page you sent me to describes SEBSD as a port, not a "copy". Guess what? Firefox is a port too. Does it make it somehow inferior?.. Mozilla's primary target-platform is Windows — what you have on Linux is also, what you'd call "a copy".

      --
      In Soviet Washington the swamp drains you.
    6. Re:TrustedBSD by Anonymous Coward · · Score: 0

      OpenSolaris had a lot of security features (RBAC Trusted Extensions) in parallel with SE Linux, or before SE Linux. It isn't accurate to say that one copied the other.

    7. Re:TrustedBSD by lkcl · · Score: 1

      yes, pretty much that's it - but, truly, don't say i didn't warn you about it being horrendous!

      basically, "roles" and "contexts" can "track" different stages in your application, across different boundaries. the triggers between boundaries are typically things like "exec()" is the most obvious one, but you can explicitly tell selinux - via a system call with a c interface - to "change context right now, please".

      typically this function call is made in a PAM module, and in this way, when someone authenticates, the application gets to change "context" - and of course because it's done in PAM there's no code changes required to your application.

      but there are many more system calls on which "context changes" can be made, thus subdividing your application up even further.

      the above scenario i described - where ssh shell access is only permitted from one set of ip addresses by one set of users, and sftp is allowed from a different set of ip addresses by a different set of users - is the extreeeeeme case.

      the "default" setup that selinux has is of course to "allow all incoming port 80 and 443 for any user on any interface" for httpd, etc. etc.

  14. RSBAC by Anonymous Coward · · Score: 0

    Why is rsbac never mentioned on slashdot? It is, in my opinion, a better technology. At the least, it is a different approach, and worth mentioning. I use it daily, find it easier to administer than selinux, it is more portable, and does not need LSM. Check it out at http://www.rsbac.org/

  15. Check the NSA FAQ by Anonymous Coward · · Score: 0

    http://www.nsa.gov/selinux/info/faq.cfm

  16. Re:Do you really trust NSA's Linux? by Anonymous Coward · · Score: 0, Flamebait

    I bet you run windows.

  17. Re:Do you really trust NSA's Linux? by Darkness404 · · Score: 2, Informative

    The code is open, anyone can review it. SELinux is open source, you can even edit the source code itself. Now had this been a proprietary product you would have no clue what is in the binary, but with Linux you can be assured that you can look it over. Compare that to Windows where you don't even know who is editing the source code. And really, how can you put in hidden code in the source code? You can't. Now granted, I hate SELinux for other reasons but it being developed by the NSA isn't one of them.

    --
    Taxation is legalized theft, no more, no less.
  18. Re:Do you really trust NSA's Linux? by Anonymous Coward · · Score: 0

    you are an idiot

  19. Example? by Anonymous Coward · · Score: 0

    "If you have a program that responds to socket requests but doesn't need to access the file system, then that program should be able to listen on a given socket but not have access to the file system."

    That sounds neat on a theoretical level, but how does it help me? Does my system have any programs which respond to socket requests but don't access the file system? Even my web server reads from my database, and writes to log files.

    I suppose I could use it to lock down my echo service, but I don't recall seeing many security advisories about that.

    Is there some real-world example that makes sense that you could explain to an idiot like me?

    1. Re:Example? by profplump · · Score: 1

      You web server only needs to listen on specific ports, and only needs to read from and write to specific paths. SELinux can enforce those limitations.

  20. Re:Do you really trust NSA's Linux? by Adeptus_Luminati · · Score: 0, Flamebait

    What's with people having so much faith in the security of open source software? Seriously, how many hundreds of thousands of lines makes up SELinux? Have you even reviewed 500 of those lines yourself? The vast size of it, makes it impossible for any one individual or even group of small individuals to KNOW for sure it is all perfectly safe. Now prove to me that some group expert coders that have actually reviewed every single god damn line of it and found nothing wrong with it, and maybe then I'll start trusting it.

    Rough Analogy: It's all about logistics people. Just because there is a freedom of information act out there, doesn't mean every single government document has ever been reviewed, and it doesn't make the government trustworthy.

    --
    No trees were killed in the making of this post; however, many trillions of electrons were horribly inconvenienced.
  21. Re:Do you really trust NSA's Linux? by growse · · Score: 1

    Well, if I shoot my foot with a gun, I get a hole in my foot. If I use SELinux, I end up with a pretty secure OS. These are different things.

    Now, if you have information that may be able to give me a secure OS using a gun, or perhaps more interestingly a hole in my foot using SELinux, feel free to enlighten me :)

    Oh, FWIW, paranoia is great up until the point it becomes easily confused with irrationality. Irrational paranoia is usually reserved for the domain of the mentally ill.

    --
    There is nothing interesting going on at my blog
  22. Re:Do you really trust NSA's Linux? by Darkness404 · · Score: 2, Insightful

    How many people have looked through all the lines in a recipe and understand all the chemical reactions? Seriously, whats with people having faith in how somehow someone wouldn't slip in something that would be poisonous that the maintainers of the recipe wouldn't notice? Compare recipe to SELinux and you get the general picture.

    And why would Debian, Red Hat, Ubuntu, and Fedora have it if it were malicious? Despite the fact that the US government could have made Red Hat put it in for Red Hat and Fedora, that still leaves Debian which is community (and is quite good about making sure its systems are secure) and Ubuntu which is based in the UK and is community much like Debian.

    Sure, healthy suspicion is good, but really, its just as stupid as saying because not everyone knows what the chemical reactions are when you are cooking it suddenly leaves you open to poison yourself with it.

    --
    Taxation is legalized theft, no more, no less.
  23. Wow by Anonymous Coward · · Score: 0

    Wow, adding permissions to groups! What a concept! Welcome to the late 20th century Linux.

  24. Re:Interesting article, missing Type Enforcement by Anonymous Coward · · Score: 0

    SELinux's security is rooted in Type Enforcement, which is similar to a mandatory RBAC but not built around user roles, but rather the roles of processes. For example, a mail filter may run as root to be able to write user mailboxes, but the various processes involved in it will not be able to, for example, read user documents (they will only be able to read files that are directly involved with the needs of mail delivery).

    The idea is that even if there is vulnerability with the mailer, at worse the attacker could read/delete user mail (and not, for example, install trojans into applications or reconfigure the network).

    This is orthogonal to any user based controls (i.e.,the mail filter may start out running as root or some mail daemon, and then later su to the user, but it will remain in the "mail filter" domain).

  25. Expect SElinux to be trojaned by Anonymous Coward · · Score: 0

    You're just not living in the real world.

    One should expect the NSA to have placed several non-obvious trojans in SElinux code, as well as in other areas of the kernel not directly tied to security. This is part of what they do, to acquire access pathways into systems worldwide for when they're needed, and undoubtedly it's the part of their Linux work for which they get funding most easily.

    After all, it would be totally unreal and naive to think that the NSA greeted the rise of Linux with total submission. "Oh dear, it's been so easy to place our access hooks into Windows with the assistance of Microsoft until now, but Linux is open source so we're totally defeated, you can take away half our funding now." Be real, that's not how the world works.

    The overall security of Linux dropped when the security modules framework was added to support SElinux and AppArmor, because this is complex code that is inherently involved with privilege manipulation. You can bet your bottom dollar that there is a compromiseable pathway in that code, hidden as a side effect of some seemingly innocuous operation.

    Without this, the NSA would not be doing the job expected of them, which is to undermine the rest of the world for the benefit of the USA. The rise of Linux represented a disastrous loss of control for the NSA. They would not have let that happen unchecked.

  26. wishful thinking by nguy · · Score: 0

    There is not a shred of evidence that SELinux is any more secure than other approaches to Linux security. In fact, in practice, it may well be less secure since it is so complex and hard to deploy: either people disable it entirely, or they configure it wrong and have a false sense of security.

    To me, SELinux represents a lot of what is wrong with security today: people think that they can achieve security by just tacking a bunch of complicated software on top of existing systems, and people think they can get away with ignoring usability and users.

    1. Re:wishful thinking by Sir_Lewk · · Score: 1

      If you are going to take competency of the admin into account when analyzing how secure a system can be, then you are pretty much already screwed.

      --
      "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
    2. Re:wishful thinking by HuguesT · · Score: 1

      This is not quite correct. With SELinux, the vendor can define precise roles for all the system daemons for instance. This definitely improves security because even if a buffer overflow is discovered in one of them, if they are barred from interacting with the filesystem for instance, the security breach cannot be exploited so easily.

      This should not forbid users to interact with the daemon in the way it was designed to work, in fact this should be totally transparent.

    3. Re:wishful thinking by nguy · · Score: 1

      If you are going to take competency of the admin into account when analyzing how secure a system can be, then you are pretty much already screwed.

      No, you are screwed if you don't take the competency of the admin into account.

      Besides, it's not just a question of competency, it's also a question of time. I'm not going to waste my time on a system designed by people who treat my time as being worthless.

      Thinking like yours is the reason why security sucks so badly.

  27. Re:Learn how to use SELinux without disabling it.. by Sir_Lewk · · Score: 1

    I may be wrong but I'm pretty sure 'system-config-selinux' is specific to Fedora (or at least Red Hat related distros). All the other system-config-* commands seem to be at least.

    --
    "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
  28. To Secret Government or not to Secret Government? by Anonymous Coward · · Score: 0

    To restate the OP more elegantly:

    Which would you rather have?

    A. Countless lines of obscure (but technically open source) code developed by the masters of deception who have unlimited resources at their disposal and who have a track record of intrusion where they have no business

    B. Open source governance, where everyone can develop and read the law (and btw there is no NSA anymore because there is transparency in everything)

  29. Complexity by Anonymous Coward · · Score: 0

    This is reality! How many Windows admins do you know that are thoroughly competent?

    How many "Linux Admins" do you know that are aware of, and can competently command and control all aspects of one Linux system, let alone 5, 20, or 200?

    "Security through complexity" didn't become cliche by accident..

  30. You have to be really lazy to disable SELinux by pembo13 · · Score: 1

    And I am referring to server environments where you aren't constant adding removing programs. If you think SELinux is a pain in the ass to use for any software that comes packaged for the distro you're using, either there is a problem with the package itself, or there is some strange thing wrong. If we were talking about SELinux in FC2 I would agree, but at F8 , EL5 level, there is really not excuse. The devs even made a tool which tells you exactly how ti fix issues that cause alerts|blocks.

    --
    "Thanks for all the money you paid to us. We've used it to buy off ISO among other things" -Microsoft
    1. Re:You have to be really lazy to disable SELinux by init100 · · Score: 1

      The problem is that people treat their systems like SELinux wasn't there, e.g. by moving stuff around without checking that the proper SELinux contexts are applied to the new location. Then when it doesn't work, they blame SELinux for not being able to read their minds.

  31. Think of sudoers by Anonymous Coward · · Score: 0

    You log in, you do your stuff. You need to bounce your network because of some guff.

    So you run sudo.

    You are still you, but your role includes "bouncing network to fix problems".

    Or you may have to be able to clear out the /var/log directory or other people's TMP space. Normally requires root, well you can have a role that says "can edit disk owned by others under /var/log or /tmp" and you don't have to be root. You just need to have "edit disk ...." as part of your role.

    And you can't use the power of root otherwise required to, say, hose the system.

  32. Re:To Secret Government or not to Secret Governmen by Anonymous Coward · · Score: 0

    Why don't we just run the NSA by wiki?

    I am sure everyone would go along with that.

  33. Not MAC? by andy753421 · · Score: 1

    If you have a program that responds to socket requests but doesn't need to access the file system, then that program should be able to listen on a given socket but not have access to the file system. ... This type of control is called mandatory access control (MAC).

    Am I mistaken, or does this have nothing to do with Mandatory Access Control? I was under the impressions that MAC (as opposed to DAC) was based on how the policy is implemented. In MAC the policy is defined by the administrator, whereas in DAC, the policy is defined by the users. The example seems like a policy is not an access control method.

    Perhaps the correct way to solve this misconception would be to find some better acronyms/names...

    1. Re:Not MAC? by shentino · · Score: 1

      I dunno either.

      Barring an exploit, a mode ?00 on a file owned by root will stop you just as thoroughly as any SELinux policy.

  34. Re:Learn how to use SELinux without disabling it.. by Ang31us · · Score: 1

    Here's a list of supported distributions (at least for that specific RPM). I first used it in RHEL 5 and CentOS is probably a good way to go if you want to get close to RHEL. Also, I forgot to mention that the "setsebool" command is also useful.

  35. Do we know by jandersen · · Score: 0, Redundant

    - that the NSA hasn't planted a backdoor somewhere in the code? Isn't that what they wanted in windows? I know it is OSS, but it is still a lot of code, and inspecting it all is a bit beyond me.

    1. Re:Do we know by shentino · · Score: 1

      If there is a back door, then it's a pretty good one.

      Last time I checked, the linux kernel is maintained in source form. Reviewed by MANY developers, rather than just mine truly.

      And we are talking about an OS used by geeks all over the place.

      If there was an NSA backdoor, we'd most likely have found it by now.

  36. Re:Do you really trust NSA's Linux? by Anonymous Coward · · Score: 0

    Now prove to me that some group expert coders that have actually reviewed every single god damn line of it and found nothing wrong with it, and maybe then I'll start trusting it.

    This is totally missing the point. The point is that the NSA would know that there is a significant chance that someone somewhere *could* find any malicious code and expose it or use it against US companies/interests. The risk is far too high.

  37. .NET Code Access Security by mark99 · · Score: 1

    Without reading the article in any detail and researching things - this sounds a lot like what the .NET CAS (Code Access Security)features do, and have been doing so for around 6-7 years now.

    It is quite easy so configure a set of operations that I want an executable to be able to do, or not to do.

    I suppose I will get flamed and modded down for mentioning this :)

    1. Re:.NET Code Access Security by corbettw · · Score: 1

      Even if .Net does do something similar, that's only going to apply to a given application. It won't be in play for the entire system. You're comparing apples and oranges.

      --
      God invented whiskey so the Irish would not rule the world.
    2. Re:.NET Code Access Security by mark99 · · Score: 1

      Well, for all .NET apps anyway.

  38. Black history by Anonymous Coward · · Score: 0

    Let me just remind people that NSA once published an improved version of the SHA encryption algorithm. Some time later, people have discovered a method of braking it really fast. What it meant in essence is that NSA was able to crack "safe" data with no sweat, while we thought their contribution was a friendly gesture. I'm not implying anything, I'm just saying: should it happen again, we should seriously consider revising all code contributed by them, and refusing their future contributions. We can always make the same thing based on their idea, and try and make it secure.