Slashdot Log In
NSA Releases High Security Version Of Linux
from the making-things-secure-=-good dept.
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....
"

Re:Government and GPL (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.
The end is near. (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
Mirror (Score:3)
No problem... (Score:5)
Re:Why Linux instead of OpenBSD? (Score:3)
The OpenBSD SMP branch is probably just waiting for code from NetBSD (where SMP is being worked on.)
Re:Wow. This is very cool. (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.
NSA is not that secretive (Score:4)
All they really want is a little human warmth.
Wow (Score:4)
...phil
Re:The end is near. (Score:4)
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.
NSA code in the kernel? Oh my! Uh...It already is! (Score:3)
Go to
Oh NO! All of those unaudited strcpy's in kernel space! IEEE! And I thought linux was safe! hehe.
Moderators::Note(humor)
---
man sig
Government and GPL (Score:4)
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!
What potential! (Score:5)
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.
Re:If they pull it, can Linus sue? (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.
Re:NSA is not that secretive (Score:4)
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."
rsh and WU-FTPd (Score:5)
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.
Re:Why Linux instead of OpenBSD? (Score:3)
Re:hahahahahahah (Score:3)
Maybe you missed the part of the article where they will be releasing source code?
...phil
Re:Why Linux instead of OpenBSD? (Score:3)
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.
Nice step forward (Score:5)
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!
Wow. This is very cool. (Score:4)
I like it. (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
Re:Nice step forward (Score:5)
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!"
Dont just assume. Audit it yourself (Score:5)
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.
I have to disagree (Score:5)
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."
Re:Dont just assume. Audit it yourself (Score:5)
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.
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.
Why Linux instead of OpenBSD? (Score:3)
Re:hahahahahahah (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.
Re:As long as they release the code... (Score:5)
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 [nsa.gov].
You may also find this note at the bottom of the main site interesting:
--
It's more about administration and usage (Score:3)
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.
Wow. (Score:3)
Wonder when they're going to have their IPO.
--