Slashdot Mirror


NSA Releases High Security Version Of Linux

We had an extremely interesting submission from Ted T'so,, Linux kernel developer, who also has an obvious interest in security, given his work with Kerberos [?] . He wrote in concerning the release by the NSA (Yes, that NSA) of a high security version of Linux. I've included his comments below.

tytso writes: "I recently attended a DARPA workshop which focused on high security open source operating systems. It turns out that parts of the U.S. government are really interested this topic; having an operating system with the necessary high-security features which they need, and for which source code is available, would be a really good thing for them. Among other things, for example, it would mean that they wouldn't have to live in terror about what might happen if Sun, IBM, SGI, et. al decided to pull the plug on Trusted Solaris, Trusted AIX, or Trusted IRIX. And they're serious enough that DARPA's willing to throw money at the problem.

While I was at this workshop, I met some folks from the NSA and they told me about a really neat project that they've been working on, called Security-enhanced Linux. One of the cool things about it is that it separates enforcement and policy. So selinux can easily support many different security policies, from the old (some would say outdated/silly) Multi-Level Secure/Bell-LaPadula model, to Domain-Type enforcement and Rule-Based Access Control models. So if you think that high-security features means the old silly, Secret / Top Secret / CMW bullshit, and needing to make sure that Secret windows don't get expose events from Top Secret windows, think again. A number of folks have found Domain Type Enforcement and Rule-Based Access Control systems very useful for securing Web servers and other real world systems.

The NSA folks just recently got permission to make their stuff available on the Web. It's just a proof of concept, and no doubt a lot of changes will need to made before people will accept integrating it into the kernel, but they have released a working system (both kernel and userspace patches --- RPM's aren't quite ready yet) based on Linux 2.2 and RedHat 6.1. So it's definitely worth a look, and in fact some folks with specialized needs might find it useful, even though it's a prototype.

Of course, the source code is all there, and we're encouraged to look at and audit the code. So paranoiacs who think that the NSA is trying to infiltrate trap doors into the Linux kernels needn't worry. (Besides, it's a different part of the government who's interested in spying on U.S. citizens, and it's much more efficient for them to break into your house, and insert a wiretapping device between your computer and your keyboard as part of a black bag job. :-)

The Web site is http://www.nsa.gov/selinux. I think it's really great that some folks at NSA's Information Assurance Research Office (IARO) have made this contribution to the Linux community. They're really nice folks (even if they can't talk about a lot of what they do at work :-).

P.S. Apparently it's not easy to get stuff published by the NSA, since their entire culture, not surprisingly, is based around not letting stuff out. This Web page went up a few days ago, and then some bureaucrats made the folks in the IARO take it down temporarily, much to their disappointment. At the moment it looks like they've finally crossed all of the bureaucratic t's and dotted all of the bureaucratic i's. But just in case, it might not be a bad idea if someone mirrored the entire tree just in case some flack in some other part of the agency tells them to take it down again....

"

30 of 257 comments (clear)

  1. Re:Government and GPL by tytso · · Score: 4

    Actually, they CAN'T release it under GPL! Huh? It's worse (better?) than that - It's public domain! We PAID for it.

    Yes, to the extent that the work is done by government employees, this is true --- however, since it is based on GPL'ed code, only the changes to the code are in the public domain. The overall piece of work is still covered by the GPL. This is part of the "infectious nature" of the GPL.

    Also, there's an absolutely trivial way to get around the "work done by government workers must be in the public domain". You just simply hire government contractors to do the work for you, in which case the rule doesn't apply any more. This is a really nasty loophole, especially since many senior government employees get tired of getting paid sh*t wages, and simply resign, and start working for a government contractors, who (after taking a cut, of course) resells that persons time back to the government at a much higher rate. It's a 100% lose all around for the taxpayer. We end up paying more for the same person's work, with a percentage cut being paid to the a third party as sheer overhead, and the work doesn't get have to get released into the public domain any more (the government contractor can resell code developed at government expense as some propietary, commercial product.) Lovely, eh? All because the idiots in Congress aren't willing to pay government workers --- especially in a hot field like software engineering --- what they're worth.

    If you'll note on the NSA SE Linux web page, you'll see that some of the work was indeed done by contractors. Fortunately, thanks to the GPL, the overall work still has to be released under the GPL, if it's going to be released at all.

  2. The end is near. by bmongar · · Score: 3

    First sign: Courts finding Microsoft guilty of leveraging a monopoly

    Second Sign : NSA releasing information to the public about security

    Third sign : Rivers turn to blood

    The end is coming just one more sign

    --
    As x approaches total apathy I couldn't care less.
    1. Re:The end is near. by Erasmus+Darwin · · Score: 4
      Second Sign : NSA releasing information to the public about security

      Err, ever hear of the rainbow books? They're a series of standards for classifying trusted computer systems. They were published by the DoD, which is the parent organization for the NSA; the odds are good that there was NSA involvement in the project.

  3. Mirror by PxT · · Score: 3

    Mirror being built Here.

  4. No problem... by G-Man · · Score: 5

    ...just be sure to comment out "backdoor.h" before compiling anything...

  5. Re:Why Linux instead of OpenBSD? by Dahan · · Score: 3
    Really. "At this time, we are not working on SMP. It's a lot of work, and not considered the most interesting thing to our developers."

    The OpenBSD SMP branch is probably just waiting for code from NetBSD (where SMP is being worked on.)

  6. Re:Wow. This is very cool. by tytso · · Score: 3

    Whatever your opinion of the NSA might be, this is going to be a real boost to fighting the argument that "an open source operating system can't be secure."

    While I agree with you, it's important to make the distinction between an operating system which is secure, and an operating system which has high-security features. After all, this is based on Red Hat 6.2, and if the version of WU-FTPD they used happens to have some stack overruns, you can still break into the darned thing. Of course, the fact mandatory access controls are in place means that the attacker can't do as much damage, but letting someone have shell access even on a trusted OS is still a bad thing.

    Having a high-security operating systems means that you both have to have the right set of features, *and* you still have to worry about fixing all of those little annoying stack overruns and format string bugs. Both parts of the story are very important.

  7. NSA is not that secretive by Anonymous Coward · · Score: 4

    Just go to the bars in Georgetown where the younger NSA members hang out, but them a few brews, and in an hour or two they're giving you their lifestory, and handing out floppies of classified algorithms.

    All they really want is a little human warmth.

    1. Re:NSA is not that secretive by mrzaph0d · · Score: 4

      "...and in an hour or two they're giving you their lifestory..."

      since they're the NSA, shouldn't that read "...and in an hour or two they're giving you your lifestory..."?

      "Leave the gun, take the canoli."

      --
      this is just a placeholder till i send back my real sig from the future.
  8. Wow by phil+reed · · Score: 4

    The only thing I can think of at the moment is how bad this is going to piss off Microsoft. Doesn't Microsoft have a web page someplace dedicated to dissing Linux? Isn't security one of Microsoft's hot buttons?


    ...phil

    --

    ...phil
    "For a list of the ways which technology has failed to improve our quality of life, press 3."
  9. NSA code in the kernel? Oh my! Uh...It already is! by sanemind · · Score: 3

    I have noticed several posts which have expressed some concern with the idea of NSA produced/approved code getting into the kernel, and therefore concievably providing a covert insurgence of back doors.

    ...Uhm, have you ever read the source for the D. Beckers networking drivers [and derived code]?
    Go to /usr/src/linux/drivers/net and run "grep "National Security Agency" *"
    Oh NO! All of those unaudited strcpy's in kernel space! IEEE! And I thought linux was safe! hehe.

    Moderators::Note(humor)


    ---
    man sig

    --

    ---
    the pen is mightier then the sword. the sword is mightier then the court. the court is mightier then the pen.
  10. Government and GPL by CharlieG · · Score: 4

    Actually, they CAN'T release it under GPL! Huh? It's worse (better?) than that - It's public domain! We PAID for it.

    There are other government groups that talk about this. There is a Linux probram called EMC (Enhanced Machine Controler) that has been let out by the government, and there was a whole discussion of the GPL issue, and they said "We can't GPL it, we MUST Public domain it"

    Go to www.linuxcnc.org for more details!

    --
    -- 73 de KG2V For the Children - RKBA! "You are what you do when it counts" - the Masso
  11. What potential! by dsplat · · Score: 5

    The NSA has a mandate to protect the information security of our government. I believe they would interpret that to include protection of the information security of the industrial base that supports our country. I would love to see a group within the NSA charged with working with the open source community to enhance the security of open source software. I would never trust software solely because it comes with a security seal of approval only from an agency which also has other priorities which may be at odds with my privacy. However, I would consider their assurance to be a valuable addition.

    I applaud the effort that these people within the NSA who brought this project to light went to. The fact that they have released this work at all is surprising. But they have demonstrated their good faith by honoring the GPL. Bravo.

    --
    The net will not be what we demand, but what we make it. Build it well.
  12. Re:If they pull it, can Linus sue? by Just+Some+Guy · · Score: 4

    If they pull the site again, would that be a violation of the GPL? And could the NSA be sued over it?

    IANAL, but my understanding is that:

    You only have to release changes that you re-distribute. This does not include changes that you keep entirely within your own organization, company, or whatever.

    The GPL would forbid the NSA from releasing a binary-only distribution without making the source code available, but it wouldn't have any effect on whether they can make their own in-house distribution.

    --
    Dewey, what part of this looks like authorities should be involved?
  13. rsh and WU-FTPd by pete-classic · · Score: 5

    According to the package list it includes rsh and WU-FTPd.

    Come on, an ultra-secure system with rsh and WU-FTPd?

    Okay, so it says WU-FTPd is untested, but there is no excuse for using rsh.

    This makes me skeptical of the whole thing.

  14. Re:Why Linux instead of OpenBSD? by Devi0us · · Score: 3

    There's also other simple reasons besides "Linux is the in thing". OpenBSD would probably have been a good place for them to start, except for some serious factors against it. OpenBSD isn't scalable. At all. It's great for small corporate networks, or home firewalls and such, but wiht no plans for SMP in the future, it can't compete as a server environment. OpenBSD is great for IDS sensors, and specific appliance type hardened boxes, but it's not well rounded enough to put into a big multi user production environment. Have you ever heard of any major e-commerce site using OBSD as their primary server software? Then there's the whole problem with Theo not playing well with others. And being Canadian. Because Theo wholly manages the project himself, it would cause issues. I believe the NSA folks are looking to put together something that can go into general release, possibly as an option on any distribution. OBSD can't do this, because a) the NSA would have to pay Theo to audit their code [see how OBSD architecture ports end up getting made.. its interesting], or he wouldn't let them integrate it into his source tree, and B) there's all kinds of weird issues with the project maintainer not being a US national. I'm not knocking OpenBSD. I'm a big supporter. I run it on a lot of appliance type boxes, rnuning security centric tasks. However, don't believe for a second its secure. It requires the same amount of tweaking as any other operating system to get it into shape. I've had OBSD machines get owned before, where there were serious user errors in judgement. Just because there aren't any *remote* exploits, doesn't mean your users aren't going to get drunk and give away their account. Trusted OSes are a little more forgiving when this kind of thing happens. My $.02 . Take it for what its worth. Or ask for change back.

  15. Re:hahahahahahah by phil+reed · · Score: 3
    Yeah, right. I'll trust a high security version of Linux from the NSA. No fucking way. I wonder how much spyware is in that one, considering the NSA key in Windows story in the past.

    Maybe you missed the part of the article where they will be releasing source code?


    ...phil

    --

    ...phil
    "For a list of the ways which technology has failed to improve our quality of life, press 3."
  16. Re:Why Linux instead of OpenBSD? by AJWM · · Score: 3
    Why are Canadians always treated differently from other NATO members (e.g. with the encryption ban)?


    Because Canada is also part of NORAD (NORth American [Air?] Defense). I don't recall all the details of the arrangment, but it goes back to the early cold war days with the setting up of the DEW (Distant Early Warning) line across northern Alaska and Canada, and various other arrangements that had to do mainly with protecting the US from Russian bombers (and later missiles) that might take the direct route over the North Pole and Canada.


    There are even a few Canadian officers routinely posted to the NORAD facility in Cheyenne Mountain, although I don't recall seeing any US military in the "Diefenbunker" underground facility north of Ottawa when I was posted there.


    All that said, however, there are plenty of US secrets that Canadians don't have access to.


    There's also the recognition that the border between the US and Canada is pretty open both to people and information, and that strong encryption can benefit the many companies that do business and have offices in both countries.

    --
    -- Alastair
  17. Nice step forward by CaptJay · · Score: 5

    Like it or not, NSA is an organization that really cares about tough and efficient security in computer systems. They also have alot of experts in that domain, and the fact that they make all of their modifications public is great for the open source software.

    Even without taking all their modifications directly and integrating them, they might just show developpers innovative ways to secure Linux, which can lead to better security for everyone and alot of other software in which security is critical.

    So in short, I think they're contributing to open source as a whole, not only to Linux. I also think their contribution is a BIG one. This sounds great!

    --
    "I remember Y1K, every abacus had to get another bead"
    1. Re:Nice step forward by Ranten_N_Raven · · Score: 5

      If you check the "background" page, you'll see the work is actually done by Secure Computing Corporation (SCC). SCC (http://www.securecomputing.com/) has a STRONG background in making "Trusted Systems." They invented Type Enforcement for the "LoCK" program, which is the basis of the LOCK Secure Server. They really know the business. LOCK is designed to be used to connect classified networks to the internet. You gotta really trust the OS to make the right decisions for the right reasons. It's now old and slow, but it remains trustworthy.

      An offshoot of LOCK is the Sidewinder firewall, which the AF picked as the standard firewall to protect all AF bases. (I don't, and haven't worked for SCC, but I did spend a year installing Sidewinders at AF bases.) While some hate it for its relatively slow throughput, I've *never* heard anyone say it was insecure. "Type Domain" security is a series of serious brick walls for an attacker to breach.

      Yes, NSA is usually reticent about most things, but not about Computer Security. When I worked at the National Computer Security Center (part of NSA), other NSA entities shunned us because we were so open. Ever heard of the old "Orange Book" and the rest of the "Rainbow Series?" All NSA stuff!

      History: NSA had an earlier project to secure Tannebaum's Minix in a similar way. It was targeted at the C2 level. I was saddened when they abandoned that effort.

      Now, I look eagerly forward to checking out SCC/NSA's "Secure Linux!"

      --

      READ the US Constitution, the Bill of Rights and the other amendments! http://lcweb2.loc.gov/const/const.html
  18. Wow. This is very cool. by Tin+Weasil · · Score: 4

    Whatever your opinion of the NSA might be, this is going to be a real boost to fighting the argument that "an open source operating system can't be secure." What I am looking forward to, though, is the incorporation of some of the NSA's code into some of the existing major Linux Distributions. Most of us would have a problem running the NSA's software right out of the box because we are so well trained to mistrust authority. Still... very cool.

  19. I like it. by bmongar · · Score: 4

    Wow the government is waking up to the fact that security through obscurity is not security at all.

    Plus think of all the money they save with all us crypto geeks hacking at their code testing for bugs, coming up with new additions just because it would be cool to say you helped write part of the NSA's security system

    --
    As x approaches total apathy I couldn't care less.
  20. Dont just assume. Audit it yourself by simpleguy · · Score: 5

    As we saw in the Red Hat pirahna saga, you should not assume that because something is open source, it must be secure. People assumed that because pirahna was open sourced, someone would have noticed the obvious password flaw within hours or just a few days after it was released. But NO, it took longer than that.

    Do not rely only on peer review. If you want to be sure about what you are using, especially in environments needing ultimate security, do your own damn auditing and testing or pay someone to do it.

    Oh, and Merry Christmas.

    1. Re:Dont just assume. Audit it yourself by John+Sullivan · · Score: 5
      People assumed that because pirahna was open sourced, someone would have noticed the obvious password flaw within hours or just a few days after it was released. But NO, it took longer than that.

      Of course it did, that's the point. Security isn't something you achieve overnight, the status of any particular system is very much the result of consensus building which takes time. It's down to how many eyeballs have looked at the system, how deep they've looked at it, and how long they've looked at it.

      Opening up the source results, eventually, in a more secure system because those people who do so can look deeper, and also because the skills to analyse source code are more widespread than the skills required to analyse a running binary, so hopefully more people will do so. But anyone who takes a newly released system and immediately relies on it for security has to be insane.

      Do not rely only on peer review. If you want to be sure about what you are using, especially in environments needing ultimate security, do your own damn auditing and testing or pay someone to do it.

      And while doing your own audit is good advice, the most valuable result will be a new data point to add to the global consensus. Relying on your own analysis isn't much better than relying on no analysis at all, but if 100 people have looked at the system over 5 years or so and not found it wanting, then we start to feel some level of confidence in it.

      Of course this is if you want to do security properly, but for most people, for most applications, this level of care is just not necessary.

      --
      This is my World Wide Web of Whatever
  21. I have to disagree by dizee · · Score: 5
    The more secure a computer is, the less useable it is.

    This statement is opinion and is fundamentally flawed. Of course it is possible to have a completely secure and completely usable multi-user system. Where did you get the idea that a secure system is less usable than an unsecure one?

    It is true that many vulnerabilities are discovered on a daily basis. These vulnerabilities are the result of only ONE thing: programmer error.

    Eliminate programmer error and, assuming we're not introducing vendor/admin error into the equation, you have a secure system. The largest causes of programmer error are:

    ignorance

    carelessness

    laziness

    Unfortunately, even the best coders in the world are still human, and that leaves the possibility for error. The larger and more complex the project, the larger the chance for error. So what's the answer? Collaboration. Peer review. Open source is the best method for peer review.

    You could also set it so you have NO ports open, but then you can't get on most irc networks because of no ident...

    This is a moot point. IRC is not something you would be running on a mission-critical must-be-secure box. You must also understand that just because a box has no ports open doesn't mean it's secure.

    so just stick with slak 7.1 with a chmod'd suid perl

    Are you implying that slackware 7.1 is a secure system? Have you audited the entire distribution yourself? Can you honestly say that you trust your distribution to be 100% secure?

    If you do, one of these days, you're going to be in for a rude awakening. Unfortunately, that's a problem with admins these days. They blindly trust their systems. I don't care if a specific OS wasn't vulnerable to ANY bugs disclosed in the last 3 years, that doesn't mean that that OS is secure. You should ALWAYS assume all systems to be insecure and untrusted.

    It's not really a question of secure/insecure, because no system is completely secure; it's more a question of faith and trust.

    Mike

    "I would kill everyone in this room for a drop of sweet beer."

  22. Why Linux instead of OpenBSD? by astrashe · · Score: 3

    Does anyone want to speculate why the NSA chose linux instead of OpenBSD, or some other BSD?

  23. Re:hahahahahahah by bmongar · · Score: 3

    Actually they aren't forced to make it public, they are only forced to give the source code to who the os is distributed. They could just distribute internally and make it avaliable to anyone who uses their systems. This release is really a decision they made based on the need for security or publicity. Which one doesn't matter, what matters is they were not forced to do this.

    --
    As x approaches total apathy I couldn't care less.
  24. Re:As long as they release the code... by Black+Parrot · · Score: 5
    > Considering their history, they will have to show us the code.

    I'm not one to read the articles either, but in this case I made a special exception, and yes, there is a download link.

    You may also find this note at the bottom of the main site interesting:
    Security-enhanced Linux is being released under the conditions of the GNU General Public License (GPL). The release includes documentation and source code for both the system and some system utilities that were modified to make use of the new features. Participation with comments, constructive criticism, and/or improvements is welcome.

    --
    --
    Sheesh, evil *and* a jerk. -- Jade
  25. It's more about administration and usage by Animats · · Score: 3
    NSA isn't claiming this system has been tested for security. It just has mandatory access controls, as the security community defines that term.

    The key concept of mandatory access controls is that ordinary users are prevented from leaking information even if they want to. Discretionary access controls, all standard UNIX has, allow any user to change their own file modes to 777 and allow access by anybody.

    Once you have mandatory access controls, you have to figure out new ways to do many administration tasks. Logging in as root isn't an option. Getting the Linux community thinking about how that can work is a major step forward.

    If Linux system administration and applications get worked around to where they can live with mandatory security, that's a big win. Then a kernel with mandatory security can become widely used.

  26. Wow. by Black+Parrot · · Score: 3

    Just think, soon you'll be hearing "Hi, I'm Bob and I run NSALinux."

    Wonder when they're going to have their IPO.

    --

    --
    Sheesh, evil *and* a jerk. -- Jade