Slashdot Log In
Remote Exploit Discovered for OpenBSD
Posted by
samzenpus
on Thu Mar 15, 2007 12:13 AM
from the patch-it-up dept.
from the patch-it-up dept.
An anonymous reader writes "OpenBSD is known for its security policies, and for its boast of "only one remote exploit in over 10 years". Well, make that two, because Core Security has found a remotely exploitable buffer overflow in the OpenBSD kernel. Upgrade your firewalls as soon as possible."
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Heh (Score:5, Funny)
Locally Exploitable: No
That right there is the biggest slap in the face! Everyone should have the freedom to fux0r their own machine!
Opensource my ass...
Well done, the OpenBSD team. (Score:5, Insightful)
Re:Well done, the OpenBSD team. (Score:4, Insightful)
Parent
Re:Well done, the OpenBSD team. (Score:5, Insightful)
Then someone pointed out the respective revenues of OpenBSD vs Microsoft, and the whole idea just seemed to evaporate.
Someone decided that people don't care enough about the number of remote exploits found in a given OS. They were probably right.
Parent
Re:Well done, the OpenBSD team. (Score:5, Insightful)
My company makes far more than the OpenBSD team brings in, and yet we still respect them and try to emulate their practices. I'm not sure what kind of hubris it takes to dismiss someone's ideas just because you have more money.
Parent
Re: (Score:3, Insightful)
Well done. It's not an easy feat to create an OS with so little exploits. The team and Microsoft should take a leaf out of your book.
It is when basically the only thing your OS does "in the default install" is allow SSH logins.
(Which is not to attack the excellent work of the OpenBSD team, but comparing it to Windows is in this fashion is just asinine.)
Re:Well done, the OpenBSD team. (Score:5, Funny)
Ok, make that "more intentional remote access"...
Parent
Re:Well done, the OpenBSD team. (Score:5, Insightful)
Parent
Re: (Score:3, Insightful)
The default install of OpenBSD includes (from memory, so this is not exhaustive) SSHd, bind, apache and sendmail, all of which are included in the term 'Only two remote holes in the default install' [...]
They're "included" in that the binaries are there, but they are not enabled (except SSH). Ie: they're not part of "the default install" as far as remote vulnerabilities goes.
Re:Well done, the OpenBSD team. (Score:5, Informative)
- The kernel contains a lot of exploit mitigation stuff, that may well turn an arbitrary code execution into a DoS.
- OpenBSD doesn't actually include Sendmail or Apache, it includes forks of both. These are heavily audited by the OpenBSD guys, and not all of the changes are merged upstream.
When a new category of bug is found in OpenBSD, the entire tree is searched for occurrences of it. This often means that seemingly innocuous changes in something like OpenBSD's httpd turn out to have fixed things that are later found to be security holes.Parent
Re: (Score:3, Funny)
What team, the A Team? Should take out Microsoft?
I love it when a plan comes together.
Re: (Score:3, Funny)
Uhh, they did. TCP/IP stack.
Of course, you can't ever say a leaf made the tree...
Re:Well done, the OpenBSD team. (Score:5, Funny)
Not really, since this has nothing to do with Linux. It's OpenBSD, not Linux.
Parent
Re:Well done, the OpenBSD team. (Score:5, Insightful)
Parent
It's a feature (Score:4, Funny)
I think they just found the Windows2003 Server Emulator.
Re:It's a feature (Score:5, Informative)
Parent
Re: (Score:3, Insightful)
Advisory Timeline (Score:4, Interesting)
I'm a bit surprised that the summary didn't mention the rather interesting timeline in the Core advisory [seclists.org], which implies an attempted cover up. I don't know all the facts, so I'll let the document speak for itself:
-Fyodor
Insecure.Org [insecure.org]
Re:Advisory Timeline (Score:5, Interesting)
Cover up? The OpenBSD team believed it was only a remote DoS vulnerability until proof of concept code was provided, and re-labeled it as such immediately.
What part seems suspicious to you?
Parent
Re: (Score:3, Informative)
Because, they've never come up with anything security wise:
http://en.wikipedia.org/wiki/OpenBSD_security_fea
Not at all.
Re:Advisory Timeline (Score:4, Informative)
A remote kernel panic is a reliability issue - you can't exploit a paniced system! The OpenBSD team couldn't see a way to exploit the issue, Core subsequently proved that a panic could be avoided and exploit code executed, at which time it was upgraded to a security issue by the OpenBSD team. No conspiracy necessary.
Parent
Re:Advisory Timeline (Score:4, Insightful)
Sure there is. Think, for example, of a data warehouse containing social security numbers. Would you prefer that that system go down entirely, or that the contents of the database is exposed. A system that detects trouble and shuts itself down until someone fixes it sounds good to me.
Also, by your standards, a power failure is a security hole. That's just not true.
Parent
Re: (Score:3, Insightful)
But, cover up? Yah right. Please, note that the OBSD team NEVER denied that a problem existed. They fixed it. It was only the wording that was in contest until remote execution was shown and they verified it.
Re: (Score:3, Informative)
From the bugtraq advisory:
From the OpenBSD CVS log:
They've earned a mulligan, I think (Score:4, Insightful)
As for a "cover up"... well, if such a thing happend I'd say they must really suck at coverups, since we all know about it.
Parent
Re:Advisory Timeline (Score:5, Informative)
That could be. And don't get me wrong -- I'm a big OpenBSD fan and even have one of their posters framed and hanging in my home. But I think they could have handled this better. Given that security is their main selling point, I'd like to see the OpenBSD guys treat all buffer overflows as potentially exploitable. In this case, it appears that the fix to 3.9 and 4.0 branches was delayed for an extra week until Core produced a working remote root exploit. The problem with requiring a working exploit from bug reporters is that most of them lack the ability or inclination (or both) to produce one. This bug just happened to be reported by some of the best exploit writers in the world.
Also, even if the bug did only allow anyone to cause remote kernel panic on your OpenBSD firewall or server with a single packet, that is still a security vulnerability. They can call it a DoS vulnerability if they are sure one cannot lead to code execution.
-Fyodor [insecure.org]
Parent
Re:Advisory Timeline (Score:4, Insightful)
I really like OpenBSD, but I really miss having an analogue of FreeBSD's portaudit utility. Since the source data used by portaudit provides OpenBSD and FreeBSD vulnerability info, I wonder if anyone has tried porting it...
Parent
Barely "remote" (Score:5, Informative)
Re:Barely "remote" (Score:5, Informative)
So nobody from the net can crack your machine, they must already me on your local net. This greatly reduces the scope of this attack.
Parent
OpenBSD - now TWICE as insecure (Score:3, Funny)
Holy Cow, an OpenBSD Vuln? (Score:5, Funny)
pablumfication (Score:3, Interesting)
Re: (Score:3, Interesting)
_In lower case, the word pablum is often used to describe anything bland, oversimplified and generally unsatisfying, especially a work of literature or speech. This usage is thought to derive from the cereal. Today, the word pablum and the original Latin word pabulum are often used interchangeably. In Canada, pablum remains as a generic reference to any instan
Re: (Score:3, Informative)
Wikipedia has a good entry on Pablum.
OpenBSD Website (Score:5, Informative)
Only two remote holes in the default install, in more than 10 years!
At least they don't hide it.
Fixed in OpenBSD 4.1 (Score:3, Interesting)
Can we now please stop using C? (Score:3)
Can we please stop using C?
http://it.slashdot.org/comments.pl?sid=224594&cid
Re:Can we now please stop using C? (Score:5, Informative)
C++ ? Out of the question. Too many hidden operations make development a nightmare.
Java? Are you even kiddin me? (yes, I know there are Java OSes, how those working out for you?)
C#?..
ooh ooh I know, Perl!!!
If you want to reduce your bugs [in any language] simple steps
1. Design code that you can verify and test
2. Write modular code
3. Re-use code as much as possible
In this case, it seems the mbuf pointer gets changed before it's accessed later in the function. If they had tracked the life of that variable they would have spotted it. That type of error could have happened in any language.
Parent
Forced release? (Score:5, Insightful)
FTFA:
Kudos to Core Security for finding an exploit in OpenBSD code. Seriously, that's impressive. However, it sounds like they're a little too pleased with themselves. "Forced release"? I guess that's technically true, in the sense that a feather exerts a gravitational force on the Earth.
In a nutshell, they reported a problem and OpenBSD fixed it. Then they demonstrated that it was a more serious problem, and OpenBSD backported the fix to the current releases and announced it on their website. After reading the whole timeline, I'm not sure what else they were supposed to have done so that Core wouldn't be "forced" to announce the vulnerability that OpenBSD publicized on their own site as a "security fix" three days earlier.
Re:Doesn't matter how good a C programmer you are (Score:4, Interesting)
Also, it's less efficient to simply use one heap for everything. Instead, an OS kernel written in a language with automatic memory management usually maintains large blocks of memory for the various tasks to work in, like an area for packet construction, an area for I/O buffers, etc. The automatic allocator and GC are told which area to work in, and then create or delete stuff in that area as needed.
So no, it's not generally reasonable to implement the lower levels of any OS with automatic memory management. You're free to try, though.
Parent
Re:Moo (Score:5, Funny)
Parent
Re:Moo (Score:4, Funny)
why, That's Communism!
Parent
Wrong... (Score:5, Interesting)
...it's roughly 5.67137278 × 10^28 IP's per person
Or, as a recent Ars article [arstechnica.com] put it (much better than I ever could):
Parent
Re:Not in the default install (Score:5, Informative)
Parent
Time to make a list... (Score:5, Funny)
-The Pope died
-Mac got Intel chips
-The Berlin Wall came down
-I out-lived 4 cats
-Man walked on the moon
-I got laid
and...
-BSD had a hole
Parent
Re:Time to make a list... (Score:5, Funny)
Parent
Re:WHOA WTF (Score:4, Interesting)
When was the last time a remote root exploit was found in the Linux kernel?
Parent
There (probably) was one in November 2004 (Score:4, Interesting)
Parent
Re:WHOA WTF (Score:4, Funny)
Parent
Re:WHOA WTF (Score:4, Informative)
They didn't simply dismiss it. They fixed the bug. At that point the question of how severe the vulnerability is only affects how critical getting the patch for the bug is. Being security conscious, they don't want to push out a patch without sufficient testing -- possibly causing new vulnerabilities -- unless they have to. When shown that the issue was in fact a remote exploit, they did not dismiss the issue then either, they upgraded the status of the issue and marked the patch as urgent.
All of this is perfectly consistent with security consciousness.
A team which does not take security seriously would have denied that there was a bug at all, would not have the fix, and would have found a way to claim that despite being shown exploit code for a remote vulnerability, it wasn't in fact a big deal. But that isn't what happened.
I've always thought of the BSDs (Net and Open anyway) as a smaller attack vector, nothing inherently more secure. They don't have a monopoly on smart developers and all humans make mistakes.
It is foolish to think that because all humans make mistakes, all humans make the same number and severity of mistakes, and have the same methods of identifying and correcting mistakes. For the same reason, it is foolish to think that because all software has bugs, that all software is equally buggy and the bugs are of equal severity. It is the attention payed to security, the methodologies of writing secure code, that help prevent bugs and make code that is truly inherently more secure.
OpenBSD gets a lot of scrutiny in the security world exactly for the reason that people deploy it because of its security. It may be a smaller attack vector due to market share, and due to it being harder to crack than what your typical army of script kiddies can handle. This does not mean it is not thoroughly poked and prodded by experts, nor does it mean that inherently superior security is an illusion.
Parent