Scientists Unveil Lightweight Rootkit Protection 168
DangerFace writes "Scientists are set to unveil a lightweight system they say makes an operating system significantly more resistant to rootkits without degrading its performance. The hypervisor-based system is dubbed HookSafe, and it works by relocating kernel hooks in a guest OS to a dedicated page-aligned memory space that's tightly locked down. The team installed HookSafe on a machine running Ubuntu 8.04, and found the system successfully prevented nine real-world rootkits targeting that platform from installing or hiding themselves. The program was able to achieve that protection with only a 6 percent reduction in performance benchmarks."
I'll take one (Score:5, Funny)
Re: (Score:3, Funny)
Re:I'll take one (Score:5, Informative)
It wasn't Jefferson, it was Franklin
Re:I'll take one (Score:4, Funny)
Re: (Score:3, Funny)
Re:I'll take one (Score:5, Funny)
Re:I'll take one (Score:4, Funny)
Re: (Score:3, Informative)
Franklin was never President. He was part of the Committee Of Five that drafted the Declaration of Independence and the first Postmaster General though. He was also a polymath.
Re: (Score:2)
I admit I had no idea what polymathic meant. Now that I've wikipedia'd it I really like it. Kudos to you sir for giving me a word to toss into a random conversation that will make me sound smarter than I am.
No, that wasn't sarcasm I'm being serious.
Re: (Score:2)
I shall throw autodidact your way as well then :)
Re: (Score:2)
I'll bet Franklin had the sense of humor you seem to be missing. His kite would have whooshed right over your head.
And... (Score:2)
He was also a polymath.
And a poly-woman, for sure.
Re: (Score:2)
Re: (Score:2)
I think he also discovered evolution by tying a string to a Galapagos turtle.
Re: (Score:2)
Re: (Score:2)
Those who would give up an instant chain of Score 4:Funny comments for factual accuracy deserve neither humor nor accuracy.
Re:I'll take one (Score:5, Funny)
Re: (Score:3, Funny)
I would gladly give up 6% of the performance of my machine if I could be safe from rootkits. Now queue the "those who would give up system performance for system security deserve neither" posts.
Damn straight! The same goes for guns! It should be a law that computer admins have to carry guns in order to protect their machines! Have a computer in your house? Well then, you are required to have a gun by your machine - even if you live in NY City!
Re: (Score:2)
Merely carry guns? What kind of protection is that?
I say, it should be mandatory to have a USB firearm attached to your computer. If it detects someone trying to steal the computer, someone getting the password wrong, or someone trying to install unwanted software, the computer will now have a way to defend itself. I think we'd all be safer in a world where every computer has a USB assault rifle attached to it.
Re: (Score:2)
Re: (Score:2)
When they can shoot back it will be "No Sir Mr. Computer Sir, I was no where near the UPS when that event happened, you got to believe me, it was someone who resembles me pixel for pixel, OH PLEASE DON"T AIM AT MY GROIN AGAIN!"
Re:I'll take one (Score:4, Interesting)
Re: (Score:2)
If he did that now he would probably be arrested for something or the other: shooting the hard drive could be interpreted as a threat to shoot a person.
Re: (Score:2)
Re: (Score:2)
I'm actually amazed that you could shoot a bullet at a drive, and the drive would not shatter in 100 pieces...
Re: (Score:2)
I wouldn't volunteer to use one for armor; but it is pretty much to be expected that such a structure would either suffer a fairly neat hole(particularly if the round were jacketed) or just a significant dent(if it were softer lead only).
Re: (Score:2)
Re: (Score:2)
In the spirit of slashdot, I feel instead of a gun, it should be a +3 or great melee weapon of smiting.
Re:I'll take one (Score:5, Funny)
Those who would give up essential system performance for temporary system security... probably need to learn how to overclock their systems.
Re: (Score:2, Informative)
Re: (Score:2)
6% doesn't sound like much. But, this is for virtual machines. By definition, a VM is already handicapped. Take away 6% of the performance of Windows 7 inside my existing VM's, and they aren't worth having. An XP machine may still work alright, but that isn't certain.
Maybe I just need faster, more powerful hardware, then I won't notice another 6% decrease.
Re: (Score:2)
If the current state of programming is any indication, then yes, you obviously need faster, more powerful hardware.
Re: (Score:2)
I would gladly give up 6% of the performance of my machine if I could be safe from rootkits.
Worthwhile: yes.
Lightweight: no
Re: (Score:2)
How about, er, a microkernel?
It loses less than 6% ...
RamDisk (Score:2)
I believe liveCDs work because they create ramdisks which are modifiable in memory so that they could technically be exploited in memory until switched off. Unless of course they are read only ram disks.
So ... (Score:5, Interesting)
Re:So ... (Score:4, Informative)
http://www.chkrootkit.org/ [chkrootkit.org]
MOD Parent UP !!! (Score:3, Informative)
Together with Rkhunter (mentionned in another post bellow) Chkrootkit are both nice tools to use in helping preventing a linux machine being rooter.
Re:So ... (Score:5, Funny)
Re: (Score:2)
Re: (Score:2)
The reason it's called a root kit is that it hides the fact that your box has been root ed, and what kind of O/S has a root account? Hint: Not Windows.
Re: (Score:2)
Rootkit as a name has nothing to do with the OS it's running on.. the Sony rootkits targetted Windows for example.
Anyway, Windows has a whole class of root users called the administrators group, not just one user.
Re: (Score:2)
OK, badly phrased on my part, I was referring to the origin of the phrase.
Re: (Score:2)
[Members of the Administrators group in Windows] almost, but not quite have root privileges.
If a user can elevate to having a privilege without having to authenticate as anyone but the user himself, then the user effectively has that privilege. Members of the Adminstrators group under Windows have the privileges of the system account, and sudoers under Linux have the privileges of the root account.
Re: (Score:2)
That depends entirely on what rights are granted to the administrators group and what are given to the system account. On top of that, you have the permissions on specific resources that may be different. A properly hardened Windows box will have tighter rights-assignments and resource permissions (think registry keys and file permissions).
By default though, the Administrators group have more total rights granted than the system account itself. Run secpol.msc -> local policies -> user rights assign
Re:So ... (Score:4, Funny)
You're either insulated, or you suck at humor. By your logic windows boxes get administratored.
Well, with some of the messes I've had to clean up from previous Admins it isn't an unfair statement
Re: (Score:2)
Administratored? I know it's cool to talk about the paper you "authored" and all, but this is getting ridiculous.
Rootkit hunter (Score:5, Informative)
Anyone run into these or have any recommendations of good detection software?
Rootkit Hunter [sourceforge.net]
Re: (Score:2)
Rootkit Hunter [sourceforge.net]
Ubuntu users:
Any warnings about stuff in /dev [blogspot.com] is likely normal. [ubuntuforums.org]
Re: (Score:2)
Re: (Score:2)
The summary was incorrect - corrected below:
The team installed HookSafe on a machine running Windows Vista, and found the system successfully prevented 126, 000 real-world rootkits targeting that platform from installing or hiding themselves.
Re:So ... (Score:5, Informative)
There's actually nine rootkits out there for Linux?
The rootkits in question are:
Some of them are in the wild an some are just for research. For more information, I would check out this page. [packetstormsecurity.org]
Re: (Score:2)
Re: (Score:2)
No. Distributing virus information is illegal in Finland (where "virus" is "program or part of it which causes harm to computers or data networks").
Sorry for offtopic ...
Re: (Score:2)
Yes, they are supposed to be pretty scary, too. But what is worse, is that there is a ring 0 rootkit that rules them all.
Not degrading the performance? (Score:2)
Re: (Score:3, Funny)
Now, I might be nieve but why can't these memory aligning tricks be done in the kernel naively?
My spelling error detector just exploded! You jerk!
Re: (Score:2)
My native naive kernel naively is native!
Sorry about that, my caffeine level was way below optimum...
Re:Not degrading the performance? (Score:4, Funny)
Were you trying to say "Now, I might be native, but why can't these memory aligning tricks be done in the kernel naively?
Re: (Score:2, Informative)
Re: (Score:2)
Re: (Score:2)
You might be snow? And your kernel is naïve?
Re: (Score:2)
Re: (Score:2)
Now, I might be nieve but why can't these memory aligning tricks be done in the kernel naively?
What does the fact that you might be a fist ( http://www.yourdictionary.com/nieve [yourdictionary.com] )have to do with doing something naive in the kernel?
What were the rootkits? (Score:3, Interesting)
I'd like to know the 9 rootkits used. I know Ubuntu 8.04 is a generation behind the current stable version but I don't think there were any rootkits capable of installing. I'm assuming the people doing the test didn't install the kernel source on the box. It isn't installed by default and AFAIK you have to be able to build the kit using the kernel source. Anyone know of a rootkit that can be installed without creating modules from the kernel source? Maybe I'm just way out of the loop on owning a Linux box.
Re: (Score:3, Informative)
You don't need the full kernel source to build a module, just the header files. These are usually placed in a separate package. Is the kernel header package installed by default?
Re: (Score:2)
Is the kernel header package installed by default?
One of the first things that a programmer installs on Ubuntu is build-essential. This package brings in GCC, GNU Make, and libc6-dev (the C standard library headers). And libc6-dev brings in the kernel headers. So if you've installed anything from source on Ubuntu, you have the kernel headers.
Re: (Score:2)
I've installed an Ubuntu 9.04 Server recently and it didn't include the headers by default (neither the source).
I'm pretty sure it's also the case for 9.10.
Re: (Score:3, Informative)
8.04 isn't a full generation behind anything, it's the LTS version which is most likely to be used by people wanting Ubuntu on a server. They made an excellent choice with using 8.04 as their testbed for this.
Further, a rootkit absolutely doesn't require any kernel modules. A patched copy of /bin/sh works quite fine, but as always it all depends on what you want.
You're out of the loop. :(
Re: (Score:2)
How does an application, not part of the kernel, boot before the kernel? I guess if it is build into the BIOS. But, that wouldn't be a Linux rootkit would it?
Re: (Score:2)
I guess the eyes ARE the first to go. Thanks.
Sounds like a root kit. (Score:5, Funny)
So this thing acts as a hypervisor and loads its own hooks into the kernel. Sounds like something a root kit would do.
It reminds me of one approach to avoid a terrorist attack when flying. Carry your own bomb onto the plane. After all, what are the chances that there would be two bombs on the plane?
Re:Sounds like a root kit. (Score:5, Funny)
It reminds me of one approach to avoid a terrorist attack when flying. Carry your own bomb onto the plane. After all, what are the chances that there would be two bombs on the plane?
That's why the TSA's so harmful. If you outlaw bombs on a plane, then only terrorists will have bombs.
Re: (Score:2)
What? Spike Milligan must of come up with that strategy.
Re: (Score:2)
the a-priori probability
is very low, but if you know there already is a bomb in it, you have to apply the conditional probability
so you gain no extra security from this measurement... sorry to disappoint you... </smart ass>
Re: (Score:3, Funny)
Only symbolically, of course.
Re: (Score:2)
Better way: all the airplanes should be required to carry 72 UGLY virgins as stewardesses. When the Holy Terror sees he future reward, he'll give up.
I always thought that having all stewardesses be topless was the better idea. Not only would it dissuade the terrorists from even getting on the plane, it would easily triple the amount of business travel, restoring profitability to the airlines.
Hmm , is there a reason they didn't use Windows? (Score:4, Insightful)
... it being partly a microsoft research project and all. They wouldn't be trying to imply anything about Linux would they , or perish the thought , be unwilling to embarras themselves if Windows could *still* be rooted even after this solution was installed?
Re: (Score:2)
Probably more likely it's easier to test the theory on a kernel you can hack the source of quite easily than recompile Windows every time.. even if you have the souce license (which they may not have done even though they're funded by microsoft).
Re: (Score:2)
That may be true, but having encountered tied actions from purportedly independent MS funded groups before, I'm going to remain a bit dubious. I don't know what their agenda is, and I'll accept that it *MIGHT* be academic research. But it's going to take a bushel and a half of proof before I'll consider that a reasonable default assumption.
How well would this play with Anti Virus programs? (Score:2)
Anti Virus programs are effectively rootkits - at least for Windows - as they bury themselves deep in the OS and redirect various kernel hooks to themselves. I can see potential problems if this type of solution ever becomes common though I suppose you could argue that you shouldn't need anti virus protection if you have this hypervisor. And with both Linux and Windows how would it take into account someone attempting to load a driver/module from userland?
Re: (Score:3, Funny)
I think you had a little typo there, but I fixed it.
Re: (Score:2)
The Moon is Earth's only natural satellite and the fifth largest satellite in the Solar System
I think you made a typo on pretty much every one of your letters, but I fixed them all.
If it can be added, it can be removed (Score:2)
You cannot protect against root kits, all you can do is make it harder to get true root. How is this more effective than making key binaries immutable then removing the kernel ability to remove immutability during boot (performance cost 0%)?
Re: (Score:3, Informative)
If you can get a driver into ring 0 what the kernel can or can't do doesn't mean squat. Run everything under a hypervisor, however, and you never get direct access to the hardware hence it limits what you can do (doesn't mean you can't do it.. just makes it significantly harder).
Re: (Score:3, Insightful)
I predict that hypervisors will become very complex over the next 10 years, complete with malware detection heuristics, but will eventually fall prey to the same problems modern kernels have (that of being too complex to make bullet proof)
By any other name (Score:4, Insightful)
A root kit is just a sandbox that someone else has set up for you on what is now his or her computer.
6%?? Of what system? (Score:2)
6% of my mobile phone? Or 6% of the RoadRunner with its 1 petaflop?
I think a proper rootkit protection is a passive one. One that only takes resources, if there is actually something to do. How about that?
Sorry, 6% might sound small, but when you add it all together, rootkit-protection, anti-virus, anti-malware, intrusion detection system, honeypot, etc, etc, etc... and end up with only 6% of your cpu work actually being used for real work... you might start thinking about designing your OS in a proper way
Re:6%?? Of what system? (Score:5, Interesting)
But if the aforementioned 6% is because of swapping, then some changes to the page replacement algorithm may mitigate the performance hit somewhat. My feeling is that this kind of protection is worth it. By analogy, bounds-checking arrays prevents many kinds of overflow errors, and there's a penalty to pay for that protection, but in most cases it is well worth doing.
Re:6%?? Of what system? (Score:4, Informative)
Reading the research paper, the 6% overhead looks like it comes from having the kernel call into the hypervisor every time it allocates or frees an object that contains a kernel hook (a.k.a. function pointer). The designers explicitly state that they use non-paged memory to store the protected kernel hooks.
Lightweight? No, thank you. (Score:2)
The actual paper (Score:2)
The paper: http://discovery.csc.ncsu.edu/pubs/ccs09-HookSafe.pdf [ncsu.edu]
And the required Schneier blog post: http://www.schneier.com/blog/archives/2009/11/protecting_oss.html [schneier.com]
Link to the paper (Score:2)
http://discovery.csc.ncsu.edu/pubs/ccs09-HookSafe.pdf [ncsu.edu]
[Via Schneier [schneier.com]]
Re: (Score:3, Insightful)
Surely this problem was addressed in the 1960s or 1970s in the mainframe world, yet I've not heard much in the way of lessons we can apply to today's PC-type OSes.
Could be tough. Have computer in physically sealed room, only communicate with dumb terminals.
Re: (Score:2)
Re: (Score:2)
That's where the hypervisor idea comes from... (Score:2)
I think IBM invented hypervisors to allow running multiple OS's on the same hardware back in the 1960s...
Yep: http://en.wikipedia.org/wiki/Hypervisor#Mainframe_origins [wikipedia.org]
Re: (Score:2)
This approach was common a couple of decades ago where you had the OS in ROM and there wasn't any way to do this sort of nonsense. The Live CD approach works well enough, I guess(though it's seriously slow), but with the right technology(USB or flash/SDD port on most new motherboards comes to mind), it should be possible to load some version of *IX onto the device, plug it into the slot, and go. You would need some method of physical protection for the device you've plugged in. I don't know of any, though
Re: (Score:2)
The last model I know of that did this was the Mac classic the mid 90s - it had OS in ROM and was a fully functional machine if booted up this way. My favorite though was the old C128, because it was actually a usable modern computer and worked as well as a typical console in terms of ease of use and reliability. With Readyboost and similar slots now on some motherboards, you may see a return of these type of setups. The only worry of course is being able to lock down the volume in a manner that is BIOS
Re: (Score:2)
Does that mean that is is a typo in TFA as well "The team installed HookSafe on a machine running Ubuntu 8.04"