Slashdot Log In
Cambridge Researcher Breaks OpenBSD Systrace
Posted by
kdawson
on Thu Aug 09, 2007 10:19 AM
from the without-a-trace dept.
from the without-a-trace dept.
An anonymous reader writes "University of Cambridge researcher Robert Watson has published a paper at the First USENIX Workshop On Offensive Technology in which he describes serious vulnerabilities in OpenBSD's Systrace, Sudo, Sysjail, the TIS GSWTK framework, and CerbNG. The technique is also effective against many commercially available anti-virus systems. His slides include sample exploit code that bypasses access control, virtualization, and intrusion detection in under 20 lines of C code consisting solely of memcpy() and fork(). Sysjail has now withdrawn their software, recommending against any use, and NetBSD has disabled Systrace by default in their upcoming release."
Related Stories
Firehose:OpenBSD's Systrace broken by Cambridge researcher by Anonymous Coward
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.
SELinux and the same ... (Score:5, Informative)
James Morris has put up an analysis [livejournal.com] of the same vulnerabilities.
And pushing the system code down into lower echelons of execution (i.e kernel), the way SELinux does it, is a valid fix.
Re:SELinux and the same ... (Score:5, Insightful)
Parent
No need for alarm! (Score:5, Funny)
Re:No need for alarm! (Score:5, Funny)
All twelve of them. :)
I like the thought of openbsd, though, having never used it. I'm sure everything will be fine.
Parent
Re:No need for alarm! (Score:5, Funny)
We yell really loud.
(And I actually yelled "Wow!". We're not a homogenous lot.)
Parent
OpenBSD Security (Score:4, Funny)
As long as I'm dreaming, I also want a pony.
No released version of sudo affected (Score:5, Informative)
- todd
Ha Ha (Score:5, Funny)
$#%#^&&!#$@$
[CONNNECTION LOST]
Brace for impact... (Score:5, Funny)
"cambrige researcher"... (Score:4, Informative)
This is exactly why I love OpenBSD! (Score:5, Insightful)
OpenBSD's man page for systrace mentions this? (Score:5, Informative)
OpenBSD's systrace manpage appears to mention this problem in the BUGS section:
Or see http://www.openbsd.org/cgi-bin/man.cgi?query=systr ace&apropos=0&sektion=0&manpath=OpenBSD+Current&ar ch=i386&format=html [openbsd.org]
Undeadly coverage (Score:4, Informative)
Coverage on Undeadly [undeadly.org].
To answer some anti-OpenBSD bias from the summary above: systrace is really Niels Provos toy, OpenBSD just includes it in the base install just as NetBSD does; regarding sudo, it has been addressed in a comment above (not vulnerable in the actual released version); and by saying that NetBSD has disabled systrace that implies that OpenBSD has it still enabled. Except that it is a tool that isn't used by the default install at all - you have to enable and configure it yourself. And as the Undeadly post states: Since 2002, the systrace(1) man page included a warning in the BUGS section about the possibility of escaping the policy enforcement because of the behavior of certain system calls..
Personally I have never liked the idea of systrace - leaves way to much to to me as a system administrator to fuck up.
Re:so much for... (Score:5, Informative)
And it still only has had two remote holes in the default install in more than 10 years. This isn't a remotely exploitable hole, it allows privilege escalation, which requires access to the system and thus is a local hole. It's still a whopper of a hole though...
Parent
Re:so much for... (Score:5, Funny)
In other words... it's in your list of the 5 best OSS projects.
(sorry)
Parent
Re:so much for... (Score:5, Funny)
Parent
Re:no (Score:5, Funny)
Parent
Re:I'm not worried (Score:5, Funny)
Parent
Re:I'm not worried (Score:4, Funny)
Parent
Re:fix shedules ? (Score:4, Informative)
Well, the fix for now appears to be don't use the vulnerable software, but considering that the vulnerability allows you to break the software such that it behaves as if it wasn't running, I have to wonder if people should use it anyway and just accept that for now anyone that knows how can bypass that particular security check. Also, if it was something simple like a buffer overrun that would be trivial to patch, but because of the way this particular vulnerability functions (concurrency attack) there's not simple solution. Some have suggested pushing the code to kernel space, but as they've also pointed out, that's rather risky in its own regard. Short of some kind of provision in the kernel to prevent the attacks I'm not sure how this could be fixed (although I haven't seen to many details, just that it involves re-writing some args after they've already been scanned by systrace).
Parent
Re:fix shedules ? (Score:4, Informative)
Parent
Re:why give much of a crap (Score:5, Insightful)
If you allow scripting on your server, then you've essentially given your users shell access, anyway.
Parent
Re:Why??? (Score:5, Interesting)
Because the fastest way to learn about something is to break it. Why do you think physicists spend all that time and money on particle accelerators?
Parent
Re:Linux? (Score:5, Informative)
Parent
Re:Linux? (Score:4, Interesting)
(It's a straight forward time-of-use vs. time-of-check attack. And we were at least partially aware of it when we wrote GSWTK. The problem is that the original system calls require memory in the processes space, so you can't just copy in the string after you validate it to keep the process from changing it. I wrote some methods for Linux that allocated extra pages in the processes memory space so we could copy in the string, but that just makes the attack harder via obscurity. It doesn't address the fundamental issue at all.)
Parent