Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×

Windows Rootkit Wars Escalate 342

An anonymous reader writes "The rootkit wars have started to escalate with a rootkit named Rustock which is able to remain hidden from all the popular anti-rootkit tools. It uses some new techniques including not only putting itself in a ADS (NTFS alternate data stream) which isn't seen by normal file system enumeration tools, but even blocks ADS aware tools from seeing the stream. Works in Vista, too! Analysis in both Symantec and F-Secure blogs."
This discussion has been archived. No new comments can be posted.

Windows Rootkit Wars Escalate

Comments Filter:
  • by Data Link Layer ( 743774 ) on Thursday July 13, 2006 @11:46AM (#15712909)
    I don't hate sony because they installed rootkits on some peoples computers, I hate them because of that incident the word rootkit became popular.
  • Whats ADS for? (Score:2, Interesting)

    by Viol8 ( 599362 ) on Thursday July 13, 2006 @11:47AM (#15712912) Homepage
    Was this designed simply an easy way to hide (system?) files in the filesystem
    or was it for something different entirely? I remember there being a "chmod +/-h"
    in old (perhaps even current, I no longer use it) versions of HP-UX that would hide
    files , is this something similar?
  • by tomstdenis ( 446163 ) <tomstdenis@gma[ ]com ['il.' in gap]> on Thursday July 13, 2006 @11:48AM (#15712920) Homepage
    Well it wouldn't happen in other OSes because NTFS is closed proprietary standard. :-)

    That and people, listen, stop running windows as root. Make yourself a less privileged user and learn to work in a non-root environment!!!

    Tom
  • Seems to effect (Score:2, Interesting)

    by Utopia ( 149375 ) on Thursday July 13, 2006 @12:12PM (#15713078)
    x86 versions only.

    Would be interesting to know if there will be or are 64-bit versions of rootkits.
  • Vista compatible? (Score:4, Interesting)

    by tlhIngan ( 30335 ) <slashdot.worf@net> on Thursday July 13, 2006 @12:17PM (#15713107)
    Don't rootkits need to hook into the kernel in some way, and the "some way" in Vista is via signed binaries? Overriding kernel hooks seem to imply that yes, signed binaries are needed as well...

    Also, would it be able to hide from a tool like SysInternal's rootkit detector which compares API return values for the registry and filesystem with an actual analysis of the registry files themselves, and a scan of the raw blocks on the disk? (Understands NTFS and FAT, and the registry hive format).
  • Re:Vista compatible? (Score:2, Interesting)

    by j00r0m4nc3r ( 959816 ) on Thursday July 13, 2006 @12:26PM (#15713168)
    Apparently it runs as a kernel-mode driver, and does not hook any API's or run any processes or threads...
  • Re:Vista compatible? (Score:5, Interesting)

    by Short Circuit ( 52384 ) * <mikemol@gmail.com> on Thursday July 13, 2006 @12:40PM (#15713254) Homepage Journal
    It doesn't hook any public APIs, but it does hook some internal ones. Quoth the Symantec link:
    Rootkit detectors also check for the integrity of some kernel structures like the Service Descriptor Table, but Rustock.A controls kernel functions by hooking MSR_SYSENTER and other special IRP functions. [2]


    If that's not functionality that should require Windows binaries to be signed, I don't know what is.
  • Re:Whats ADS for? (Score:4, Interesting)

    by Control-Z ( 321144 ) on Thursday July 13, 2006 @12:41PM (#15713266)
    It's much more than a "hidden" attribute on a file.

    I fought with the HackerDefender rootkit earlier this year. Best I can tell it got in through a vulnerability in the Finger port of my mail server. It installed itself as a legacy mode device driver. The device driver was set up to hide certain filenames from Windows. Once installed, you COULD NOT SEE the files the rootkit used. The files weren't files marked with the "hidden" attribute, they were simply hidden from Windows at all levels. You COULD NOT SEE the registry entries. You could not see the task in Task Manager. Very evil and took many hours of my time to fix.

  • by whitehatlurker ( 867714 ) on Thursday July 13, 2006 @12:45PM (#15713296) Journal
    Is ADS a Microsoft backdoor?

    Given that Microsoft has the keys to the front door (windows security update for example), why would they need a backdoor?

    I'm undecided as to whether alternative stream was a good idea with poor implementation (and bad documentation), or just a bad idea.

  • by dfloyd888 ( 672421 ) * on Thursday July 13, 2006 @12:45PM (#15713299)
    Long ago, in the days of MS-DOS, there was a program that was excellent at detecting unknown MS-DOS viruses. Called Integrity Master, for maximum security one ran it from a bootable floppy, scanned files on the hard disk, and stored the file with the scanned signatures on a floppy. It wasn't SHA or MD5 hashes, but at the time it was solid security.

    Then, one periodically (once or twice a week, as paranoia sees fit) ran the utility on their machine. If stuff in the MS-DOS directory was changed, it was immediately apparant. Integrity Master also was able to scan for some known viruses as well in addition to keeping a log of changed files.

    We need a utility like that for Windows XP and Vista. A bootable CD or DVD that not just can understand NTFS (and NTFS's file compression), but has the necessary software to mount hard disks which are encrypted with BitLocker, PGP, SafeBoot, PointSec, WinMagic, DriveCrypt Plus Pack. The utility should also allow for username/password entry so EFS-protected files can be checked too.

    This utility should use a CD or DVD to boot from, mount hard drive volumes, run checks for alternate data streams, system and nonsystem files, and finally the registry, perhaps including the encrypted parts like the SAM. It should not just save hashes of files, but perhaps have some ability to check file signatures as well (like sfc.exe and sigverif.exe do), so an update to Windows via a legitimate way doesn't set off a lot of false positives. Of course, the "manifest" file storing the file hashes on the file system would be stored on a removable USB drive, so the OS on the hard drive never has the ability to touch it.

    Because this checking is done offline, a rootkit would be a lot harder to hide (unless it uses a method that the integrity scanner wasn't programmed to detect, like perhaps pointing to unallocated disk space for executable code, or hiding in an EFS-protected file.)

    Of course, offline checking isn't perfect, because the machine being scanned has to be totally downed for a good amount of time which can't be done in a 24/7 environment.

    There are some hurdles though. Trying to reduce the amount of false positives is one, for example. A novice user presented with a notice that a lot of files were changed likely wouldn't know what was a bad change, and what was normal for system functioning. After that, its decoding files and registry keys. Finally, if a known rootkit database was used, keeping track of how rootkits encrypt their payload, and delivering timely program updates.
  • by KingMotley ( 944240 ) on Thursday July 13, 2006 @12:57PM (#15713363) Journal
    Actually, NTFS streams were pretty well discussed when they came out back in 1994. They have been there since Windows NT 3.1. They are similiar to the old macintosh's data and resource forks, and I believe Microsoft implemented it so that they could support Macintosh files when acting as a file server (or perhaps they were considering building a Macintosh compatability box on top of the NT kernel).

    I was actually suprised that Microsoft didn't take advantage of streams more often than they do. It would be a nice place to have put file meta-data (Like MP3 tags, creator, summary, etc), or image thumbnails (instead of thumbs.db). They probably wanted to support FAT32, and Windows 9x which is why they didn't.

    It's hardly a backdoor, it was a pretty big deal and a feature Microsoft made a pretty big deal of when it arrived. NTFS also supports another hardly used feature known as sparse files where you can allocate space within a file that doesn't actually take any disk space. Useful for some record/database applications. It also supports junction points as well, allowing you to map a drive into a folder (Similiar to linux's symbolic links).
  • by xtracto ( 837672 ) on Thursday July 13, 2006 @01:08PM (#15713423) Journal
    I have a legitimate question. What site can you visit to get the rootkit or discuss information about it?, When I was in university I usually went to neworder.box.sk to all my hacker/cracker needs, also the russian password crackers sites and crackstore to name a few.

    There was also fravia and other nice pages where you cold get that information but now I am not "on the song" anymore, can anyone enlighten me please?
  • by Lord Ender ( 156273 ) on Thursday July 13, 2006 @01:45PM (#15713616) Homepage
    Currently, there are no unpatched bugs (at least none that I'm aware of) that let you deliver malware straight to a connected computer.


    Before any of the hundreds of security holes in Windows XP were published, they were still there! If you have paid any attention to security, you would be very confident that there are many remote root, arbitrary code, no-interaction-required holes in Windows RIGHT NOW.

    They are no doubt being used. I can think of many ways to build a bot that connects home indetectably to all but the most paranoid and brilliant sysadmin.
  • Make your own ADS (Score:4, Interesting)

    by The MAZZTer ( 911996 ) <(megazzt) (at) (gmail.com)> on Thursday July 13, 2006 @02:16PM (#15713810) Homepage

    Go to the command prompt.

    echo Text! > text.txt:ADS

    Do a DIR and you'll see the size of text.txt is 0 bytes.

    The string "Text!" has ended up in an ADS stream called "ADS".

  • by Millenniumman ( 924859 ) on Thursday July 13, 2006 @02:33PM (#15713906)
    Cue the Mac OS-X / *Nix / *BSD zealotry.

    Psh, my graphing calculator is much more secure than any of those. No security exploits, ever.
  • by 99BottlesOfBeerInMyF ( 813746 ) on Thursday July 13, 2006 @02:42PM (#15713972)

    There is no 100% solution except to cease using the technology. That's a given. But that would be like saying we should stop using cars because accidents happen.

    What you advocated, however, was users not running software or opening data they don't trust. For most users, that cuts the functionality of their machine in half. Trust is a sliding scale. And given the relatively mild punishment for trusting too much, most users will chose functionality over security. The job of the OS should be to make sure they never have to make that choice.

    There is no technical solution to everything, though. You cannot "fool proof" everything. Would you go around fool-proofing cars or guns? I'd rather expect someone using either to have proper training and knows how to use it, so he is neither harm to himself nor others.

    Well, if I can get a gun or car to do exactly what I want without any risk or decrease in functionality, I'm all for it. As for training, the point is that the usability and functionality of the system has to be up to snuff before it can be effective. To bring cars to the equivalent level of functionality as a Windows machine you'd have to have no windshield and the user would have to just be guessing where they are going. Right now users are given basically no information about what is happening. Is that a program or data? What is it doing when I'm running it? Is it sending spam, or running a game? Is it reading my tax returns? No idea.

    The analogy of guns is an interesting one. Anyone who has had a traditional education concerning guns has heard that they should always treat the gun as if it is loaded and point it away from anything they don't want to shoot. Why? Why not only point it in a safe direction when it is loaded? There is no danger if the action is open and it is obviously empty. The answer is "conditioning." Nobody can concentrate on one thing all the time. By always treating the gun as loaded users condition themselves through repetition. That way, when they're thinking about something else (like is that a bear in those trees) they unconsciously point their gun in a safe direction and don't accidentally shoot their hunting buddy when they stumble.

    The reason this is such an appropriate comparison is because Windows uses conditioning as well. Every time it brings up the same cryptic dialogue box with (OK/Cancel) it conditions users to click "OK" to get their computer to work again. It also conditions them to click "OK" when being warned of a potential threat. It is one of the worst UI choices, ever and a classic example of what not to do. In many cases even reading the dialogue you don't know what each of the buttons will do since "OK" and "Cancel" are not appropriate responses and are not actions. It is the result of programmers ignoring the human component of computer/human interactions when it comes to security.

    First and foremost, you are responsible for what comes out of your computer.

    I'll accept that I am responsible, but that does not mean no one else is as well. Picture this, the computer sales guy talks a grandmother into buying a computer. She knows nothing about them, but he tells her it is as easy to use as a TV and will let her send e-mail to her grandkids. They install it and hook it up for her. She never patches it and it is not set to do so automatically. It is compromised. It sends spam. Is it her fault she was lied to? Is it her fault she assumed it would behave reasonably instead of doing things all on its own? Yes, but even more than that it is the fault of the salesman and the system designers.

    If someone is unfit to use a car, we don't let him use it.

    If more than 70% of people are unfit to use most cars on the road, but do just fine with an Audi, maybe we need to rethink our car designs rather than sending everyone back to driver's education.

    Likewise, if someone is unfit to use a computer because he cannot follow the most basic rules of common sense, he should not be on t

  • by Ash Vince ( 602485 ) on Thursday July 13, 2006 @03:04PM (#15714096) Journal
    even running as a normal luser, a program can hide from that user.

    Yes, but the program cannot make itself run automatically at bootup as this would require changing files which are owned by root
    So basically it will die at next reboot. It might be able to start when that same user logs in, but this can be fixed by forcing all config changes to come from root (Admin or whatever)

    It also means that if I scan for this software as root there isnt a thing it can do to avoid detection.

    Although this is written with my linux hat on I also happen to develop software for windows and can see no reason that the same principles cannot be applied to windows.

    Apart from one, it would cost MS a fortune to rewrite office, and they would lose the edge which office has over the competition (all the private hooks into the OS it uses which they dont publicise to other developers)
  • by gwayne ( 306174 ) on Thursday July 13, 2006 @03:15PM (#15714152)
    TCP/IP addresses are often hex-encoded in compiled code, so doing a text search for xxx.xxx.xxx.xxx probably wouldn't be useful anyway...
  • by robotsrule ( 805458 ) * on Thursday July 13, 2006 @05:27PM (#15714903) Homepage
    Somebody PLEASE mod the comment I'm replying to, up to the top. The poster is exactly right and his post needs to be heard, LOUDLY. The problem is that the Windows core was never designed to be connected to other computers. LAN's and then the Internet came later and Microsoft injected the necessary code to handle either of those new networking technologies in a quick and (very) dirty fashion. Heck, Windows XP is finally using memory write protection (NX technology) to stop at least some programs from writing to executable memory. It is astounding how long it took them to do that when you consider that the 80386, a chip well more than a decade old, had write-protection features for executable memory. When saddens me the most is the statement in the original post that Vista can be subject to a rootkit attack. What did they really learn?
  • Short answer: yes.

    Anecdotal evidence: I once set up a Linux machine behind a firewall, couldn't get to the Internet, but it could be seen from the Internet. Turns out there wasn't any requirement for it to see the Internet, so I checked "done" and moved on. This was a one-off deal.

    Got a call a month later: "login isn't working". Of course the machine was for dozens of desktop machines that logged in to run custom Universe scripts, so no one could do his/her work. So I go out there and notice that the network cables have been rearranged to go around the firewall. And there were quite a few email messages spooled up and going nowhere.

    Asked about the cable. "Oh. I tried that because I couldn't get to the Internet."

    "From this machine?"

    "Yeah."

    "Why did you want to get to the Internet from the Universe server?"

    "I wanted to surf the net while I was waiting for this other install thing that I was doing to finish."

    OK, so the machine is naked on the Internet, and login's broken. It takes the password, then another login prompt. Found a rootkit. Reinstalled the O/S, restored Universe from backups, put the machine back behind the firewall.

    Oh, the spooled-up email messages? Email to the rootkit installer. Even if the machine was pwned, s/he never found out. After poking around for a while, I discovered that it was a poorly implemented rootkit, e.g., the replacement for /bin/login dumped core when it couldn't send the captured passwords back home.

    Further, even if the elaborate cloaking schemes are followed, there must be communication back to the new pwner of the machine.

What is research but a blind date with knowledge? -- Will Harvey

Working...