Stories
Slash Boxes
Comments
typodupeerror delete not in

Comments: 168 +-   Scientists Unveil Lightweight Rootkit Protection on Wednesday November 11, @10:26AM

Posted by CmdrTaco on Wednesday November 11, @10:26AM
from the take-two-of-these dept.
security
linux
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."
story

Related Stories

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Reply
Loading... please wait.
  • by 2names (531755) on Wednesday November 11, @10:29AM (#30060642)
    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.
  • So ... (Score:5, Interesting)

    by Nerdfest (867930) on Wednesday November 11, @10:39AM (#30060802)
    There's actually nine rootkits out there for Linux? Anyone run into these or have any recommendations of good detection software? I've always been curious if an clamav run from a live CD will pick them up.
  • So the synopsis starts by saying it doesn't degrade performance and ends with "it only causes a 6% drop in performance." Now, I might be nieve but why can't these memory aligning tricks be done in the kernel naively?
    • Re: (Score:3, Funny)

      by Anonymous Coward

      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!

    • by bcmm (768152) on Wednesday November 11, @10:58AM (#30061088)

      Now, I might be nieve but why can't these memory aligning tricks be done in the kernel naively?

      Were you trying to say "Now, I might be native, but why can't these memory aligning tricks be done in the kernel naively?

    • Schneier's synopsis [schneier.com] is pretty good. Apparently, most hardware only provides page-level memory granularity, whereas protecting these hooks requires byte-level granularity.
    • You might be snow? And your kernel is naïve?

  • by sgt scrub (869860) <saintium@yaho o . c om> on Wednesday November 11, @10:45AM (#30060896) Homepage

    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:3, Informative)

      by Anonymous Coward

      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. :(

  • by Hatta (162192) on Wednesday November 11, @10:53AM (#30060998) Journal

    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?

  • by Viol8 (599362) on Wednesday November 11, @10:53AM (#30061006)

    ... 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?

    • 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).

  • 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?

    • Anti Virus programs are effectively worthless shareware with a pretty interface designed to have a tray icon look science-ey - at least for Windows

      I think you had a little typo there, but I fixed it.

  • 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)

        Add to this the fact that even with a fully updated Windows/Linux/OSX box, it is still possible for a userland program to snag ring-0 via known vulnerabilities.

        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)

    by fibonacci8 (260615) on Wednesday November 11, @11:24AM (#30061466)

    A root kit is just a sandbox that someone else has set up for you on what is now his or her computer.

    • 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.

    • How many rootkits were running around back then?
    • by raddan (519638) * on Wednesday November 11, @01:30PM (#30063302)
      I'd have to read the author's original paper here to know for sure, but that 6% performance hit may be because those kernel hook pages are being swapped out of memory. Relocating kernel hooks to read-only pages is proper design, and if this proof-of-concept really works, kernel developers across all operating systems would be foolish not to look into implementing it themselves.

      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.
      • by Charan (563851) on Wednesday November 11, @02:07PM (#30063970)

        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.

"I'm really enjoying not talking to you ... Let's not talk again ____REAL soon ..."