Rootkit

Rootkit

A rootkit is software that enables continued privileged access to a computer while actively hiding its presence from administrators by subverting standard operating system functionality or other applications. The term rootkit is a concatenation of "root" (the traditional name of the privileged account on Unix operating systems) and the word "kit" (which refers to the software components that implement the tool). The term "rootkit" has negative connotations through its association with malware.[1]

Typically, an attacker installs a rootkit on a computer after first obtaining root-level access, either by exploiting a known vulnerability or by obtaining a password (either by cracking the encryption, or through social engineering). Once a rootkit is installed, it allows an attacker to mask the ongoing intrusion and maintain privileged access to the computer by circumventing normal authentication and authorization mechanisms. Although rootkits can serve a variety of ends, they have gained notoriety primarily as malware, hiding applications that appropriate computing resources or steal passwords without the knowledge of administrators and users of affected systems. Rootkits can target firmware, a hypervisor, the kernel, or—most commonly—user-mode applications.

Rootkit detection is difficult because a rootkit may be able to subvert the software that is intended to find it. Detection methods include using an alternative, trusted operating system; behavioral-based methods; signature scanning; difference scanning; and memory dump analysis. Removal can be complicated or practically impossible, especially in cases where the rootkit resides in the kernel; reinstallation of the operating system may be the only available solution to the problem.

Contents

History

The first documented computer virus to target the PC platform, discovered in 1986, used cloaking techniques to hide itself: the Brain virus intercepted attempts to read the boot sector, and redirected these to elsewhere on the disk, where a copy of the original boot sector was kept.[1] Over time, DOS-virus cloaking methods became more sophisticated, with advanced techniques including the hooking of low-level disk INT 13H BIOS interrupt calls to hide unauthorized modifications to files.[1]

The term rootkit or root kit originally referred to a maliciously-modified set of administrative tools for a Unix-like operating system that granted "root" access.[2] If an intruder could replace the standard administrative tools on a system with a rootkit, the intruder could obtain root access over the system whilst simultaneously concealing these activities from the legitimate system administrator. These first generation rootkits were trivial to detect by using tools such as Tripwire that had not been compromised to access the same information.[3][4] Lane Davis and Steven Dake wrote the earliest known rootkit in 1990 for Sun Microsystems' SunOS UNIX operating system.[5] Ken Thompson of Bell Labs, one of the creators of Unix, subverted the C compiler in a Unix distribution and discussed the exploit in the lecture he gave upon receiving the Turing award in 1983. The modified compiler would detect attempts to compile the Unix "login" command and generate altered code that would accept not only the user's correct password, but an additional password known to the attacker. Additionally, the compiler would detect attempts to compile a new version of the compiler, and would insert the same exploits into the new compiler. A review of the source code for the "login" command or the updated compiler would not reveal any malicious code.[6] This exploit was equivalent to a rootkit.

The first malicious rootkit for the Windows NT operating system appeared in 1999: a trojan called NTRootkit created by Greg Hoglund.[7] It was followed by HackerDefender in 2003.[1] The first rootkit targeting Mac OS X appeared in 2009,[8] while the Stuxnet worm was the first to target programmable logic controllers (PLC).[9]

Sony BMG copy protection rootkit scandal

Screenshot of RootkitRevealer, showing the files hidden by the Extended Copy Protection rootkit

In 2005, Sony BMG published CDs with copy protection and digital rights management software called Extended Copy Protection, created by software company First 4 Internet. The software included a music player but silently installed a rootkit which limited the user's ability to access the CD.[10]

Software engineer Mark Russinovich, who created the rootkit detection tool RootkitRevealer, discovered the rootkit on one of his computers.[1] The ensuing scandal raised the public's awareness of rootkits.[11]

To cloak itself, the rootkit hid from the user any file starting with "$sys$". Soon after Russinovich's report, malware appeared which took advantage of that vulnerability of affected systems.[1]

One BBC analyst called it a "public relations nightmare."[12] Sony BMG released patches to uninstall the rootkit, but it exposed users to an even more serious vulnerability.[13] The company eventually recalled the CDs. In the United States, a class-action lawsuit was brought against Sony BMG.[14]

Greek wiretapping case 2004–2005

The Greek wiretapping case of 2004-2005, also referred to as Greek Watergate,[15] involved the illegal tapping of more than 100 mobile phones on the Vodafone Greece network belonging mostly to members of the Greek government and top-ranking civil servants. The taps began sometime near the beginning of August 2004 and were removed in March 2005 without discovering the identity of the perpetrators.

In order to carry out the wiretapping, the intruders installed a rootkit that targeted Ericsson's AXE telephone exchange. According to IEEE Spectrum, this was "the first time a rootkit has been observed on a special-purpose system, in this case an Ericsson telephone switch."[16] The rootkit was designed to patch the memory of the exchange while it was running, enable wiretapping whilst disabling audit logs, patch the commands that list active processes and active data blocks, and modify the data block checksum verification command. A backdoor allowed an operator with sysadmin status to deactivate the exchange's transaction log and alarms, and access commands related to the lawful intercept capability.[16] The rootkit was discovered after the intruders installed a faulty update, which caused SMS texts to be undelivered, leading to an automated failure report being generated. Ericsson engineers were called in to investigate the fault, and at this point discovered the hidden data blocks containing the list of phone numbers being monitored, along with the rootkit and illicit monitoring software that had been installed.

Uses

Modern rootkits do not elevate access,[2] but rather are used to make another software payload undetectable by adding stealth capabilities.[7] Most rootkits are classified as malware, because the payloads they are bundled with are malicious. For example, a payload might covertly steal user passwords, credit card information, computing resources, or conduct other unauthorized activities. A small number of rootkits may be considered utility applications by their users: for example, a rootkit might cloak a CD-ROM-emulation driver, allowing video game users to defeat anti-piracy measures that require insertion of the original installation media into a physical optical drive to verify that the software was legitimately purchased.

Rootkits and their payloads have many uses:

  • Provide an attacker with full access via a backdoor, permitting unauthorized access to, for example, steal or falsify documents. One of the ways to carry this out is to subvert the login mechanism, such as the /bin/login program on Unix-like systems or GINA on Windows. The replacement appears to function normally, but also accepts a secret login combination that allows an attacker direct access to the system with administrative privileges, bypassing standard authentication and authorization mechanisms.
  • Conceal other malware, notably password-stealing key loggers and computer viruses.[17]
  • Appropriate the compromised machine as a zombie computer for attacks on other computers. (The attack originates from the compromised system or network, instead of the attacker's system.) "Zombie" computers are typically members of large botnets that can launch denial-of-service attacks and distribute e-mail spam.
  • Enforcement of digital rights management (DRM).

In some instances, rootkits provide beneficial functionality, and may be installed intentionally by the computer owner:

  • Conceal cheating in online games from software like Warden.[18]
  • Detect attacks, for example, in a honeypot.[19]
  • Enhance emulation software and security software.[20] Alcohol 120% and Daemon Tools are commercial examples of non-hostile rootkits used to defeat copy-protection mechanisms such as SafeDisc and SecuROM. Kaspersky antivirus software also uses techniques resembling rootkits to protect itself from malicious actions. It loads its own drivers to intercept system activity, and then prevents other processes from doing harm to itself. Its processes are not hidden, but cannot be terminated by standard methods.
  • Anti-theft protection: Laptops may have BIOS-based rootkit software that will periodically report to a central authority, allowing the laptop to be monitored, disabled or wiped of information in the event that it is stolen.[21]
  • Bypassing Windows Product Activation[22]

Types

There are at least five types of rootkit, ranging from those at the lowest level in firmware (with the highest privileges), through to the least privileged user-based variants that operate in Ring 3. Hybrid combinations of these may occur spanning, for example, user mode and kernel mode.[23]

User-mode

Computer security rings (Note that Ring ‑1 is not shown)

User-mode rootkits run in Ring 3, along with other applications as user, rather than low-level system processes.[24] They have a number of possible installation vectors to intercept and modify the standard behavior of application programming interfaces (APIs). Some inject a dynamically-linked library (such as a .DLL file on Windows, or a .dylib file on Mac OS X) into other processes, and are thereby able to execute inside any target process to spoof it; others with sufficient privileges simply overwrite the memory of a target application. Injection mechanisms include:[24]

...since user mode applications all run in their own memory space, the rootkit needs to perform this patching in the memory space of every running application. In addition, the rootkit needs to monitor the system for any new applications that execute and patch those programs' memory space before they fully execute.
—Windows Rootkit Overview, Symantec[2]

Kernel-mode

Kernel-mode rootkits run with the highest operating system privileges (Ring 0) by adding code or replacing portions of the core operating system, including both the kernel and associated device drivers. Most operating systems support kernel-mode device drivers, which execute with the same privileges as the operating system itself. As such, many kernel-mode rootkits are developed as device drivers or loadable modules, such as loadable kernel modules in Linux or device drivers in Microsoft Windows. This class of rootkit has unrestricted security access, but is more difficult to write.[26] The complexity makes bugs common, and any bugs in code operating at the kernel level may seriously impact system stability, leading to discovery of the rootkit.[26] One of the first widely-known kernel rootkits was developed for Windows NT 4.0 and released in Phrack magazine in 1999 by Greg Hoglund.[27][28][29]

Kernel rootkits can be especially difficult to detect and remove because they operate at the same security level as the operating system itself, and are thus able to intercept or subvert the most trusted operating system operations. Any software, such as antivirus software, running on the compromised system is equally vulnerable.[30] In this situation, no part of the system can be trusted.

A rootkit can modify data structures in the Windows kernel using a method known as direct kernel object modification (DKOM).[31] This method can hook kernel functions in the System Service Descriptor Table (SSDT), or modify the gates between user mode and kernel mode, in order to cloak itself.[2] Similarly for the Linux operating system, a rootkit can modify the system call table to subvert kernel functionality.[32] It's not uncommon for a rootkit to create a hidden, encrypted filesystem in which it can hide other malware or original copies of files it has infected.[33]

Operating systems are evolving to counter the threat of kernel-mode rootkits. For example, 64-bit editions of Microsoft Windows now implement mandatory signing of all kernel-level drivers in order to make it more difficult for untrusted code to execute with the highest privileges in a system.[34]

Bootkits

A kernel-mode rootkit variant called a bootkit is used predominantly to attack full disk encryption systems, for example as in the "Evil Maid Attack", in which a bootkit replaces the legitimate boot loader with one controlled by an attacker; typically the malware loader persists through the transition to protected mode when the kernel has loaded.[35][36][37][38] For example, the "Stoned Bootkit" subverts the system by using a compromised boot loader to intercept encryption keys and passwords.[39] More recently, the Alureon rootkit has successfully subverted the requirement for 64-bit kernel-mode driver signing in Windows 7 by modifying the master boot record.[40]

The only known defenses against bootkit attacks are the prevention of unauthorized physical access to the system—a problem for portable computers—or the use of a Trusted Platform Module configured to protect the boot path.[41]

Hypervisor level

Rootkits have been created as Type II Hypervisors in academia as proofs of concept. By exploiting hardware virtualization features such as Intel VT or AMD-V, this type of rootkit runs in Ring -1 and hosts the target operating system as a virtual machine, thereby enabling the rootkit to intercept hardware calls made by the original operating system.[4] Unlike normal hypervisors, they do not have to load before the operating system, but can load into an operating system before promoting it into a virtual machine.[4] A hypervisor rootkit does not have to make any modifications to the kernel of the target to subvert it; however, that does not mean that it cannot be detected by the guest operating system. For example, timing differences may be detectable in CPU instructions.[4] The "SubVirt" laboratory rootkit, developed jointly by Microsoft and University of Michigan researchers, is an academic example of a virtual machine–based rootkit (VMBR),[42] while Blue Pill is another.

In 2009, researchers from Microsoft and North Carolina State University demonstrated a hypervisor-layer anti-rootkit called Hooksafe, which provides generic protection against kernel-mode rootkits.[43]

Hardware/Firmware

A firmware rootkit uses device or platform firmware to create a persistent malware image in hardware, such as a network card,[44] hard drive, or the system BIOS.[24] The rootkit hides in firmware, because firmware is not usually inspected for code integrity. John Heasman demonstrated the viability of firmware rootkits in both ACPI firmware routines[45] and in a PCI expansion card ROM.[46]

In October 2008, criminals tampered with European credit-card-reading machines before they were installed. The devices intercepted and transmitted credit card details via a mobile phone network.[47] In March 2009, researchers Alfredo Ortega and Anibal Sacco published details of a BIOS-level Windows rootkit that was able to survive disk replacement and operating system re-installation.[48][49][50] A few months later they found that some laptops are sold with a legitimate rootkit, known as CompuTrace or LoJack for Laptops, preinstalled in the BIOS. This is an anti–theft technology system that researchers showed can be turned to malicious purposes.[51]

Installation and cloaking

Rootkits employ a variety of techniques to gain control of a system; the type of rootkit influences the choice of attack vector. The most common technique leverages security vulnerabilities to achieve surreptitious privilege escalation. Another approach is to use a Trojan horse, deceiving a computer user into trusting the rootkit's installation program as benign—in this case, social engineering convinces a user that the rootkit is beneficial.[26] The installation task is made easier if the principle of least privilege is not applied, since the rootkit then does not have to explicitly request elevated (administrator-level) privileges. Other classes of rootkits can be installed only by someone with physical access to the target system.

The installation of malicious rootkits is commercially driven, with a Pay-Per-Install (PPI) compensation method typical for distribution.[52][53]

Once installed, a rootkit takes active measures to obscure its presence within the host system through subversion or evasion of standard operating system security tools and APIs used for diagnosis, scanning, and monitoring. Rootkits achieve this by modifying the behavior of core parts of an operating system through loading code into other processes, the installation or modification of drivers, or kernel modules. Obfuscation techniques include concealing running processes from system-monitoring mechanisms and hiding system files and other configuration data.[54] It is not uncommon for a rootkit to disable the event logging capacity of an operating system, in an attempt to hide evidence of an attack. Rootkits can, in theory, subvert any operating system activities.[55] The "perfect rootkit" can be thought of as similar to a "perfect crime": one that nobody realizes has taken place.

Rootkits also take a number of measures to ensure their survival against detection and cleaning by antivirus software in addition to commonly installing into Ring 0 (kernel-mode), where they have complete access to a system. These include polymorphism, stealth techniques, regeneration, and disabling anti-malware software.[56]

Detection

The fundamental problem with rootkit detection is that if the operating system has been subverted, particularly by a kernel-level rootkit, it cannot be trusted to find unauthorized modifications to itself or its components.[55] Actions such as requesting a list of running processes, or a list of files in a directory, cannot be trusted to behave as expected. In other words, rootkit detectors that work while running on infected systems are only effective against rootkits that have some defect in their camouflage, or that run with lower user-mode privileges than the detection software in the kernel.[26] As with computer viruses, the detection and elimination of rootkits is an ongoing struggle between both sides of this conflict.[55]

Detection can take a number of different approaches, including signatures (e.g. antivirus software), integrity checking (e.g. digital signatures), difference-based detection (comparison of expected vs. actual results), and behavioral detection (e.g. monitoring CPU usage or network traffic).

Unix rootkit detection offerings include Zeppoo[57], chkrootkit, rkhunter and OSSEC. For Windows, detection tools include Microsoft Sysinternals RootkitRevealer,[58] Avast! Antivirus, Sophos Anti-Rootkit[59], F-Secure[60], Radix[61] and GMER.[62] Any rootkit detectors that prove effective ultimately contribute to their own ineffectiveness, as malware authors adapt and test their code to escape detection by well-used tools.[Notes 1]

Alternative trusted medium

The best and most reliable method for operating-system-level rootkit detection is to shut down the computer suspected of infection, and then to check its storage by booting from an alternative trusted medium (e.g. a rescue CD-ROM or USB flash drive).[63] The technique is effective because a rootkit cannot actively hide its presence if it is not running.

Behavioral-based

The behavioral-based approach to detecting rootkits attempts to infer the presence of a rootkit by looking for rootkit-like behavior. For example, by profiling a system, differences in the timing and frequency of API calls or in overall CPU utilization can be attributed to a rootkit. The method is complex and is hampered by a high incidence of false positives. Defective rootkits can sometimes introduce very obvious changes to a system: the Alureon rootkit crashed Windows systems after a security update exposed a design flaw in its code.[64][65]

Logs from a packet analyzer, firewall or intrusion prevention system may present evidence of rootkit behaviour in a networked environment.[23]

Signature-based

Antivirus products rarely catch all viruses in public tests (depending on what is used and to what extent ), even though security software vendors incorporate rootkit detection into their products. Should a rootkit attempt to hide during an antivirus scan, a stealth detector may notice; if the rootkit attempts to temporarily unload itself from the system, signature detection (or "fingerprinting") can still find it. This combined approach forces attackers to implement counterattack mechanisms, or "retro" routines, that attempt to terminate antivirus programs. Signature-based detection methods can be effective against well-published rootkits, but less so against specially-crafted, custom-root rootkits.[55]

Difference-based

Another method that can detect rootkits compares "trusted" raw data with "tainted" content returned by an API. For example, binaries present on disk can be compared with their copies within operating memory (as the in-memory image should be identical to the on-disk image), or the results returned from file system or Windows Registry APIs can be checked against raw structures on the underlying physical disks[55][66]—however, in the case of the former, some valid differences can be introduced by operating system mechanisms like memory relocation or shimming. Difference-based detection was used by Russinovich's RootkitRevealer tool to find the Sony DRM rootkit.[1]

Integrity checking

The rkhunter utility uses SHA-1 hashes to verify the integrity of system files.

A cryptographic hash function can be used to compute a "fingerprint", or digital signature, that can help detect subsequent unauthorized changes to on-disk code libraries.[67] However, unsophisticated schemes check only whether the code has been modified since release by the "publisher"; subversion prior to that time is not detectable. The fingerprint must be re-established each time changes are made to the system: for example, after installing security updates or a service pack. The hash function creates a message digest, a relatively short code calculated from each bit in the file using an algorithm that creates large changes in the message digest with even small changes to the original file. By recalculating and comparing the message digest of the installed files at regular intervals against a trusted list of fingerprints, changes in the system can be detected and monitored—as long as the original baseline fingerprint was created before the malware was added. More-sophisticated rootkits are able to subvert the verification process by presenting an unmodified copy of the file for inspection, or by making modifications only in memory, rather than on disk. The technique may therefore be effective only against unsophisticated rootkits—for example, those that replace Unix binaries like "ls" to mask the presence of a file.

Similarly, detection in firmware can be achieved by computing a cryptographic hash of the firmware and comparing it to a whitelist of expected values, or by extending the hash value into Trusted Platform Module (TPM) configuration registers, which are later compared to a whitelist of expected values.[68] The code that performs hash, compare, or extend operations must also be protected—in this context, the notion of an immutable root-of-trust holds that the very first code to measure security properties of a system must itself be trusted to ensure that a rootkit or bootkit does not compromise the system at its most fundamental level.[69]

Memory dumps

Forcing a complete dump of virtual memory will capture an active rootkit (or a kernel dump in the case of a kernel-mode rootkit), allowing offline analysis to be performed with a debugger against the resulting dump file, without the rootkit being able to take any measures to cloak itself. This technique is highly specialized, and may require access to non-public source code or debugging symbols. Memory dumps initiated by the operating system cannot be used to detect a hypervisor-based rootkit, which is able to intercept and subvert the lowest-level attempts to read memory[4]—a hardware device, such as one that implements a non-maskable interrupt, is required to dump memory in this scenario.[70][71]

Removal

Manual removal of a rootkit is often too difficult for a typical computer user,[24] but a number of security-software vendors offer tools to automatically detect and remove some rootkits, typically as part of an antivirus suite. As of 2005, Microsoft's monthly Windows Malicious Software Removal Tool is able to detect and remove some classes of rootkits.[72][73] Some antivirus scanners can bypass file system APIs, which are vulnerable to manipulation by a rootkit. Instead, they access raw filesystem structures directly, and use this information to validate the results from the system APIs to identify any differences that may be caused by a rootkit.[Notes 2][74][75][76][77]

There are experts who believe that the only reliable way to remove them is to re-install the operating system from trusted media.[78][79] This is because antivirus and malware removal tools running on an untrusted system may be ineffective against well-written kernel-mode rootkits. Booting an alternate operating system from trusted media can allow an infected system volume to be mounted and potentially safely cleaned and critical data to be copied off—or, alternatively, a forensic examination performed.[23] Lightweight operating systems such as Windows PE, Windows Recovery Console, Windows Recovery Environment, BartPE, or Live Distros can be used for this purpose, allowing the system to be cleaned.

Even if the type and nature of a rootkit is known, manual repair may be impractical, while re-installing the operating system and applications is safer, simpler and quicker.[78]

Public availability

Like much malware used by attackers, many rootkit implementations are shared and are easily available on the Internet. It is not uncommon to see a compromised system in which a sophisticated, publicly-available rootkit hides the presence of unsophisticated worms or attack tools apparently written by inexperienced programmers.[23]

Most of the rootkits available on the Internet originated as exploits or as academic "proofs of concept" to demonstrate varying methods of hiding things within a computer system and of taking unauthorized control of it.[80][dubious ] Often not fully optimized for stealth, such rootkits sometimes leave unintended evidence of their presence. Even so, when such rootkits are used in an attack, they are often effective. Other rootkits with keylogging features such as GameGuard are installed as part of online commercial games.[citation needed]

Defences

System hardening represents one of the first layers of defence against a rootkit, to prevent it from being able to install.[81] Applying security patches, implementing the principle of least privilege, reducing the attack surface and installing antivirus software are some standard security best practices that are effective against all classes of malware. Once these measures are in place, routine monitoring is required. In most cases however, the only defense against a rootkit is to reformat your hard drive to completely delete all files.[82]

New secure boot specifications like Unified Extensible Firmware Interface are currently being designed to address the threat of bootkits.

See also

Notes

  1. ^ The process name of Sysinternals RootkitRevealer was targeted by malware; in an attempt to counter this countermeasure, the tool now uses a randomly-generated process name.
  2. ^ In theory, a sufficiently sophisticated kernel-level rootkit could subvert read operations against raw filesystem data structures as well, so that they match the results returned by APIs.

References

  1. ^ a b c d e f g "Rootkits, Part 1 of 3: The Growing Threat" (PDF). McAfee. 2006-04-17. http://www.mcafee.com/us/local_content/white_papers/threat_center/wp_akapoor_rootkits1_en.pdf. Retrieved 2010-08-16. [dead link]
  2. ^ a b c d (PDF) Windows Rootkit Overview. Symantec. 2006-03-26. http://www.symantec.com/avcenter/reference/windows.rootkit.overview.pdf. Retrieved 2010-08-17. 
  3. ^ Sparks, Sherri; Butler, Jamie (2005-08-01). "Raising The Bar For Windows Rootkit Detection". Phrack 0xb (0x3d). 
  4. ^ a b c d e Myers, Michael; Youndt, Stephen (2007-08-07) (PDF). An Introduction to Hardware-Assisted Virtual Machine (HVM) Rootkits. Crucial Security. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.90.8832&rep=rep1&type=pdf. Retrieved 2010-11-21 
  5. ^ Andrew Hay, Daniel Cid, Rory Bray (2008). OSSEC Host-Based Intrusion Detection Guide. Syngress. p. 276. ISBN 159749240X. http://books.google.com/books?id=h37q2q3wvcUC&pg=PA276. 
  6. ^ Thompson, Ken (August 1984). "Reflections on Trusting Trust" (pdf). Communications of the ACM 27 (8): 761. doi:10.1145/358198.358210. http://www.ece.cmu.edu/~ganger/712.fall02/papers/p761-thompson.pdf. 
  7. ^ a b Greg Hoglund, James Butler (2006). Rootkits: Subverting the Windows kernel. Addison-Wesley. p. 4. ISBN 0321294319. http://books.google.com/books?id=fDxg1W3eT2gC. 
  8. ^ Dai Zovi, Dino (2009-07-26). "Advanced Mac OS X Rootkits" (PDF). Blackhat. Endgame Systems. http://www.blackhat.com/presentations/bh-usa-09/DAIZOVI/BHUSA09-Daizovi-AdvOSXRootkits-SLIDES.pdf. Retrieved 2010-11-23. 
  9. ^ "Stuxnet Introduces the First Known Rootkit for Industrial Control Systems". Symantec. 2010-08-06. http://www.symantec.com/connect/blogs/stuxnet-introduces-first-known-rootkit-scada-devices. Retrieved 2010-12-04. 
  10. ^ "Spyware Detail: XCP.Sony.Rootkit". Computer Associates. 2005-11-05. http://www.ca.com/us/securityadvisor/pest/pest.aspx?id=453096362. Retrieved 2010-08-19. 
  11. ^ Russinovich, Mark (2005-10-31). "Sony, Rootkits and Digital Rights Management Gone Too Far". TechNet Blogs. Microsoft. http://blogs.technet.com/b/markrussinovich/archive/2005/10/31/sony-rootkits-and-digital-rights-management-gone-too-far.aspx. Retrieved 2010-08-16. 
  12. ^ "Sony's long-term rootkit CD woes". BBC News. 2005-11-21. http://news.bbc.co.uk/2/hi/technology/4456970.stm. Retrieved 2008-09-15. 
  13. ^ Felton, Ed (2005-11-15). "Sony's Web-Based Uninstaller Opens a Big Security Hole; Sony to Recall Discs". http://www.freedom-to-tinker.com/?p=927. 
  14. ^ Knight, Will (2005-11-11). "Sony BMG sued over cloaking software on music CD". New Scientist (Sutton, UK: Reed Business Information). http://www.newscientist.com/article/dn8307. Retrieved 2010-11-21. 
  15. ^ Kyriakidou, Dina (March 2, 2006). ""Greek Watergate" Scandal Sends Political Shockwaves". Reuters. http://www.tiscali.co.uk/news/newswire.php/news/reuters/2006/02/03/odd/34greekwatergate34scandalsendspoliticalshockwaves.html. Retrieved 2007-11-24. 
  16. ^ a b Vassilis Prevelakis, Diomidis Spinellis (2007-07). "The Athens Affair". http://spectrum.ieee.org/telecom/security/the-athens-affair/0. 
  17. ^ Russinovich, Mark (June 2005). "Unearthing Root Kits". Windows IT Pro. http://www.windowsitpro.com/Article/ArticleID/46266/46266.html. Retrieved 2010-12-16. 
  18. ^ "World of Warcraft Hackers Using Sony BMG Rootkit". The Register. 2005-11-04. http://www.theregister.co.uk/2005/11/04/secfocus_wow_bot/. Retrieved 2010-08-23. 
  19. ^ Steve Hanna (September 2007) (PDF). Using Rootkit Technology for Honeypot-Based Malware Detection. CCEID Meeting. http://www.vividmachines.com/download/icsicceid.pdf. 
  20. ^ Russinovich, Mark (6 February 2006). "Using Rootkits to Defeat Digital Rights Management". Winternals. SysInternals. Archived from the original on 31 August 2006. http://blogs.technet.com/markrussinovich/archive/2006/02/06/using-rootkits-to-defeat-digital-rights-management.aspx. Retrieved 2006-08-13. 
  21. ^ Ortega, Alfredo; Sacco, Anibal (2009-07-24). "Deactivate the Rootkit: Attacks on BIOS anti-theft technologies". Black Hat USA 2009. Boston, Mass.: Core Security Technologies. http://www.blackhat.com/presentations/bh-usa-09/ORTEGA/BHUSA09-Ortega-DeactivateRootkit-PAPER.pdf. Retrieved 2010-11-21. 
  22. ^ Kleissner, Peter (2009-09-02) (PDF). Stoned Bootkit: The Rise of MBR Rootkits & Bootkits inthe Wild. http://www.stoned-vienna.com/downloads/The%20Rise%20of%20MBR%20Rootkits%20&%20Bootkits%20in%20the%20Wild.pdf. Retrieved 2010-11-23. 
  23. ^ a b c d Anson, Steve; Bunting, Steve (2007). Mastering Windows Network Forensics and Investigation. John Wiley and Sons. pp. 73–74. ISBN 0470097620. http://books.google.com/books?id=BhdP2PZy6SoC. 
  24. ^ a b c d "Rootkits Part 2: A Technical Primer" (PDF). McAfee. 2007-04-03. http://www.mcafee.com/us/local_content/white_papers/wp_rootkits_0407.pdf. Retrieved 2010-08-17. [dead link]
  25. ^ Kdm. "NTIllusion: A portable Win32 userland rootkit". Phrack 62 (12). http://www.phrack.org/issues.html?issue=62&id=12#article. 
  26. ^ a b c d "Understanding Anti-Malware Technologies" (PDF). Microsoft. http://download.microsoft.com/download/a/b/e/abefdf1c-96bd-40d6-a138-e320b6b25bd3/understandingantimalwaretechnologies.pdf. Retrieved 2010-08-17. 
  27. ^ Hoglund, Greg (1999-09-09). "A *REAL* NT Rootkit, Patching the NT Kernel". Phrack 9 (55). http://phrack.org/issues.html?issue=55&id=5. Retrieved 2010-11-21. 
  28. ^ Shevchenko, Alisa (2008-09-01). "Rootkit Evolution". Help Net Security. Help Net Security. p. 2. http://www.net-security.org/article.php?id=1173&p=1. 
  29. ^ Chuvakin, Anton (2003-02-02) (PDF). An Overview of Unix Rootkits (Report). Chantilly, Virginia: iDEFENSE. http://www.megasecurity.org/papers/Rootkits.pdf. Retrieved 2010-11-21. 
  30. ^ Butler, James; Sparks, Sherri (2005-11-16). "Windows Rootkits of 2005, Part Two". Symantec Connect. Symantec. http://www.symantec.com/connect/articles/windows-rootkits-2005-part-two. Retrieved 2010-11-13. 
  31. ^ Butler, James; Sparks, Sherri (2005-11-03). "Windows Rootkits of 2005, Part One". Symantec Connect. Symantec. http://www.symantec.com/connect/articles/windows-rootkits-2005-part-one. Retrieved 2010-11-12. 
  32. ^ Burdach, Mariusz (2004-11-17). "Detecting Rootkits And Kernel-level Compromises In Linux". Symantec. http://www.symantec.com/connect/articles/detecting-rootkits-and-kernel-level-compromises-linux. Retrieved 2010-11-23. 
  33. ^ Marco Giuliani (11 April 2011) (PDF). ZeroAccess – An Advanced Kernel Mode Rootkit. Webroot Software. http://pxnow.prevx.com/content/blog/zeroaccess_analysis.pdf. Retrieved 10 August 2011. 
  34. ^ "Driver Signing Requirements for Windows". Microsoft. http://www.microsoft.com/whdc/winlogo/drvsign/drvsign.mspx. Retrieved 2008-07-06. 
  35. ^ Soeder, Derek; Permeh, Ryan (2007-05-09). "Bootroot". eEye Digital Security. http://www.eeye.com/Resources/Security-Center/Research/Tools/BootRoot. Retrieved 2010-11-23. 
  36. ^ Schneier, Bruce (2009-10-23). "'Evil Maid' Attacks on Encrypted Hard Drives". http://www.schneier.com/blog/archives/2009/10/evil_maid_attac.html. Retrieved 2009-11-07. 
  37. ^ Kumar, Nitin; Kumar, Vipin (2007). "Vbootkit: Compromising Windows Vista Security" (PDF). Black Hat Europe 2007. https://www.blackhat.com/presentations/bh-europe-07/Kumar/Whitepaper/bh-eu-07-Kumar-WP-apr19.pdf. 
  38. ^ "BOOT KIT: Custom boot sector based Windows 2000/XP/2003 Subversion". NVlabs. 2007-02-04. http://www.nvlabs.in/archives/5-BOOT-KIT-Custom-boot-sector-based-Windows-2000XP2003-Subversion.html. Retrieved 2010-11-21. 
  39. ^ Kleissner, Peter (2009-10-19). "Stoned Bootkit". Peter Kleissner. http://www.stoned-vienna.com/. Retrieved 2009-11-07. [self-published source?]
  40. ^ Goodin, Dan (2010-11-16). "World's Most Advanced Rootkit Penetrates 64-bit Windows". The Register. http://www.theregister.co.uk/2010/11/16/tdl_rootkit_does_64_bit_windows/. Retrieved 2010-11-22. 
  41. ^ Scambray, Joel; McClure, Stuart (2007). Hacking Exposed Windows: Windows Security Secrets & Solutions. McGraw-Hill Professional. pp. 371–372. ISBN 007149426X. http://books.google.com/?id=-bkRryv377QC&pg=PA371&lpg=PA371&dq=TPM+rootkit+boot+sector. 
  42. ^ King, Samuel T.; Chen, Peter M.; Wang, Yi-Min; Verbowski, Chad; Wang, Helen J.; Lorch, Jacob R. (2006-04-03). "SubVirt: Implementing malware with virtual machines". In International Business Machines (ed.). 2006 IEEE Symposium on Security and Privacy. Institute of Electrical and Electronics Engineers. doi:10.1109/SP.2006.38. ISBN 0-7695-2574-1. http://www.eecs.umich.edu/virtual/papers/king06.pdf. Retrieved 2008-09-15. 
  43. ^ Wang, Zhi; Jiang, Xuxian; Cui, Weidong; Ning, Peng (2009-08-11). "Countering Kernel Rootkits with Lightweight Hook Protection". In Al-Shaer, Ehab (General Chair) (pdf). Proceedings of the 16th ACM Conference on Computer and Communications Security. CCS 2009: 16th ACM Conference on Computer and Communications Security, Jha, Somesh; Keromytis, Angelos D. (Program Chairs). New York: ACM New York. doi:10.1145/1653662.1653728. ISBN 978-1-60558-894-0. http://research.microsoft.com/en-us/um/people/wdcui/papers/hooksafe-ccs09.pdf. Retrieved 2009-11-11. 
  44. ^ Delugré, Guillaume (2010-11-21). "Reversing the Broacom NetExtreme's Firmware" (PDF). hack.lu. Sogeti. http://esec-lab.sogeti.com/dotclear/public/publications/10-hack.lu-nicreverse_slides.pdf. Retrieved 2010-11-25. 
  45. ^ Heasman, John (2006-01-25). "Implementing and Detecting an ACPI BIOS Rootkit" (PDF). Black Hat Federal 2006. NGS Consulting. http://www.blackhat.com/presentations/bh-europe-06/bh-eu-06-Heasman.pdf. Retrieved 2010-11-21. 
  46. ^ Heasman, John (2006-11-15). Implementing and Detecting a PCI Rootkit. Next Generation Security Software. doi:10.1.1.89.7305. http://www.ngsconsulting.com/research/papers/Implementing_And_Detecting_A_PCI_Rootkit.pdf. Retrieved 2010-11-13. 
  47. ^ Modine, Austin (2008-10-10). "Organized crime tampers with European card swipe devices: Customer data beamed overseas". The Register. Situation Publishing. http://www.theregister.co.uk/2008/10/10/organized_crime_doctors_chip_and_pin_machines/. Retrieved 2008-10-13. 
  48. ^ Sacco, Anibal; Ortéga, Alfredo (2009). "Persistent BIOS infection" (PDF). CanSecWest 2009. Core Security Technologies. http://cansecwest.com/csw09/csw09-sacco-ortega.pdf. Retrieved 2010-11-21. 
  49. ^ Goodin, Dan (2009-03-24). "Newfangled rootkits survive hard disk wiping". The Register. Situation Publishing. http://www.theregister.co.uk/2009/03/24/persistent_bios_rootkits/. Retrieved 2009-03-25. 
  50. ^ Sacco, Anibal; Ortéga, Alfredo (2009-06-01). "Persistent BIOS Infection: The Early Bird Catches the Worm". Phrack 66 (7). http://phrack.org/issues.html?issue=66&id=7. Retrieved 2010-11-13. 
  51. ^ Sacco, Anibal; Ortéga, Alfredo (2009-07-24). "Deactivate the Rootkit: Attacks on BIOS anti-theft technologies" (PDF). Black Hat USA 2009. Core Security Technologies. http://www.blackhat.com/presentations/bh-usa-09/ORTEGA/BHUSA09-Ortega-DeactivateRootkit-PAPER.pdf. 
  52. ^ Matrosov, Aleksandr; Rodionov, Eugene (2010-06-25). "TDL3: The Rootkit of All Evil?" (PDF). Moscow: ESET. p. 3. http://www.eset.com/resources/white-papers/TDL3-Analysis.pdf. Retrieved 2010-08-17. 
  53. ^ Matrosov, Aleksandr; Rodionov, Eugene (2011-06-27). "The Evolution of TDL: Conquering x64" (PDF). ESET. http://www.eset.com/us/resources/white-papers/The_Evolution_of_TDL.pdf. Retrieved 2011-08-08. 
  54. ^ Brumley, David (1999-11-16). "Invisible Intruders: rootkits in practice". USENIX. USENIX. http://www.usenix.org/publications/login/1999-9/features/rootkits.html. 
  55. ^ a b c d e Davis, Michael A.; Bodmer, Sean; LeMasters, Aaron (2009-09-03). "Chapter 10: Rootkit Detection" (PDF). Hacking Exposed Malware & Rootkits: Malware & rootkits security secrets & solutions. New York: McGraw Hill Professional. ISBN 9780071591188. http://www.mhprofessional.com/downloads/products/0071591184/0071591184_chap10.pdf. Retrieved 2010-08-14. 
  56. ^ Trlokom (2006-07-05). Defeating Rootkits and Keyloggers. Trlokom. http://www.trlokom.com/pdf/TrlokomRootkitDefenseWhitePaper.pdf. Retrieved 2010-08-17. 
  57. ^ "Zeppoo". SourceForge. 18 July 2009. http://sourceforge.net/projects/zeppoo/. Retrieved 8 August 2011. 
  58. ^ Cogswell, Bryce; Russinovich, Mark (2006-11-01). "RootkitRevealer v1.71". Microsoft. http://technet.microsoft.com/en-us/sysinternals/bb897445.aspx. Retrieved 2010-11-13. 
  59. ^ "Sophos Anti-Rootkit". Sophos. http://www.sophos.com/products/free-tools/sophos-anti-rootkit.html. Retrieved 8 August 2011. 
  60. ^ "BlackLight". F-Secure. http://www.f-secure.com/en_UK/security/security-lab/tools-and-services/blacklight/index.html. Retrieved 8 August 2011. 
  61. ^ "Radix Anti-Rootkit". usec.at. 
  62. ^ "GMER". http://www.gmer.net/. Retrieved 8 August 2011. 
  63. ^ Harriman, Josh (2007-10-19). A Testing Methodology for Rootkit Removal Effectiveness. Dublin, Ireland: Symantec Security Response. http://www.symantec.com/avcenter/reference/testing_methodology_for_rootkit_removal.pdf. Retrieved 2010-08-17. 
  64. ^ Cuibotariu, Mircea (2010-02-12). "Tidserv and MS10-015". Symantec. http://www.symantec.com/connect/blogs/tidserv-and-ms10-015. Retrieved 2010-08-19. 
  65. ^ "Restart Issues After Installing MS10-015". Microsoft. 2010-02-11. http://blogs.technet.com/b/msrc/archive/2010/02/11/restart-issues-after-installing-ms10-015.aspx. Retrieved 2010-10-05. 
  66. ^ "Strider GhostBuster Rootkit Detection". Microsoft Research. 2010-01-28. http://research.microsoft.com/en-us/um/redmond/projects/strider/rootkit/. Retrieved 2010-08-14. 
  67. ^ "Signing and Checking Code with Authenticode". Microsoft. http://msdn.microsoft.com/en-us/library/ms537364(VS.85).aspx. Retrieved 2008-09-15. 
  68. ^ "Stopping Rootkits at the Network Edge" (PDF). Beaverton, Oregon: Trusted Computing Group. January 2007. http://www.trustedcomputinggroup.org/files/resource_files/C2426F48-1D09-3519-AD02D13C71B888A6/Whitepaper_Rootkit_Strom_v3.pdf. Retrieved 2008-07-11. 
  69. ^ "TCG PC Specific Implementation Specification, Version 1.1" (PDF). Trusted Computing Group. 2003-08-18. http://www.trustedcomputinggroup.org/files/resource_files/87B92DAF-1D09-3519-AD80984BBE62D62D/TCG_PCSpecificSpecification_v1_1.pdf. Retrieved 2010-11-22. 
  70. ^ "How to generate a complete crash dump file or a kernel crash dump file by using an NMI on a Windows-based system". Microsoft. http://support.microsoft.com/kb/927069. Retrieved 2010-11-13. 
  71. ^ Seshadri, Arvind et al (2005). Pioneer: Verifying Code Integrity and Enforcing Untampered Code Execution on Legacy Systems. Carnegie Mellon University. http://sparrow.ece.cmu.edu/~adrian/projects/pioneer.pdf. Retrieved 2010-11-22. 
  72. ^ Dillard, Kurt (2005-08-03). "Rootkit battle: Rootkit Revealer vs. Hacker Defender". http://searchenterprisedesktop.techtarget.com/news/column/0,294698,sid192_gci1112754,00.html. 
  73. ^ "The Microsoft Windows Malicious Software Removal Tool helps remove specific, prevalent malicious software from computers that are running Windows 7, Windows Vista, Windows Server 2003, Windows Server 2008, or Windows XP". Microsoft. 2010-09-14. http://support.microsoft.com/?kbid=890830. 
  74. ^ Hultquist, Steve (2007-04-30). "Rootkits: The next big enterprise threat?". InfoWorld (IDG). http://www.infoworld.com/d/security-central/rootkits-next-big-enterprise-threat-781. Retrieved 2010-11-21. 
  75. ^ "Security Watch: Rootkits for fun and profit". CNET Reviews. 2007-01-19. http://reviews.cnet.com/4520-3513_7-6686763-1.html. Retrieved 2009-04-07. 
  76. ^ Bort, Julie (2007-09-29). "Six ways to fight back against botnets". PCWorld. San Francisco: PCWorld Communications. http://www.pcworld.com/businesscenter/article/137821/six_ways_to_fight_back_against_botnets.html. Retrieved 2009-04-07. 
  77. ^ Hoang, Mimi (2006-11-02). "Handling Today's Tough Security Threats: Rootkits". Symantec Connect. Symantec. http://www.symantec.com/connect/blogs/handling-todays-tough-security-threats-rootkits. Retrieved 2010-11-21. 
  78. ^ a b Danseglio, Mike; Bailey, Tony (2005-10-06). "Rootkits: The Obscure Hacker Attack". Microsoft. http://technet.microsoft.com/en-us/library/cc512642.aspx. 
  79. ^ Messmer, Ellen (2006-08-26). "Experts Divided Over Rootkit Detection and Removal". NetworkWorld.com (Framingham, Mass.: IDG). http://www.networkworld.com/news/2006/082806-rootkits.html. Retrieved 2010-08-15. 
  80. ^ Stevenson, Larry; Altholz, Nancy (2007). Rootkits for Dummies. John Wiley and Sons Ltd. p. 175. ISBN 0471917109. http://books.google.com/books?id=MTcep7V6heUC. 
  81. ^ Skoudis, Ed; Zeltser, Lenny (2004). Malware: Fighting Malicious Code. Prentice Hall PTR. p. 335. ISBN 0131014056. http://books.google.com/books?id=JHgX8_pVPpEC. 
  82. ^ Hannel, Jeromey (2003-01-23). "Linux RootKits For Beginners - From Prevention to Removal" (PDF). SANS Institute. http://www.sans.org/reading_room/whitepapers/linux/linux-rootkits-beginners-prevention-removal_901. Retrieved 2010-11-22. 

Further reading

  • Blunden, Bill (2009). The Rootkit Arsenal: Escape and Evasion in the Dark Corners of the System. Wordware. ISBN 978-1598220612. 
  • Grampp, F. T.; Morris, Robert H., Sr. (October 1984). "The UNIX System: UNIX Operating System Security". AT&T Bell Laboratories Technical Journal (AT&T) 62 (8): 1649–1672. 
  • Kong, Joseph (2007). Designing BSD Rootkits. No Starch Press. ISBN 1593271425. 
  • Veiler, Ric (2007). Professional Rootkits. Wrox. ISBN 978-0-470-10154-4. 

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Look at other dictionaries:

  • Rootkit — Saltar a navegación, búsqueda Un rootkit es una herramienta, o un grupo de ellas que tiene como finalidad esconderse a sí misma y esconder otros programas, procesos, archivos, directorios, claves de registro, y puertos que permiten al intruso… …   Wikipedia Español

  • Rootkit — (руткит, от англ. root kit, то есть «набор root а»)  программа или набор программ для скрытия следов присутствия злоумышленника или вредоносной программы в системе. Термин Rootkit исторически пришёл из мира UNIX, и под этим термином… …   Википедия

  • Rootkit — Pronunciation of Rootkit in US English Un rootkit (le nom « outil de dissimulation d activité » est également utilisé[1]), parfois simplement « kit », est un ensemble de techniques mises en œuvre par un ou plusieurs logiciels …   Wikipédia en Français

  • Rootkit — Ein Rootkit (englisch etwa: „Administratorenbausatz“; root ist bei unixähnlichen Betriebssystemen der Benutzer mit Administratorrechten) ist eine Sammlung von Softwarewerkzeugen, die nach dem Einbruch in ein Softwaresystem auf dem… …   Deutsch Wikipedia

  • Rootkit — Un rootkit es un conjunto de herramientas usadas frecuentemente por los intrusos o crackers que consiguen acceder ilícitamente a un sistema informático. Estas herramientas sirven para esconder los procesos y archivos que permiten al intruso… …   Enciclopedia Universal

  • Rootkit Unhooker — Rootkit Unhooker, également connu sous les noms de RkU et de RkUnhooker est un anti rootkit, un H IDS (utilitaire de détection des intrusions à usage individuel) pour Microsoft Windows, gracieusement mis à disposition des utilisateurs… …   Wikipédia en Français

  • RootKit — …   Википедия

  • rootkit — noun A set of software tools used by a third party after gaining access to a computer system in order to conceal the altering of files, or processes being executed by the third party without the users knowledge …   Wiktionary

  • rootkit — ● ►en n. m. ►SECU Ensemble d exploits réunis afin d avoir des chances maximales de piquer un compte root (administrateur, i.e. avec lequel on peut faire n importe quoi) sur une machine Unix …   Dictionnaire d'informatique francophone

  • rootkit — rootˈkit noun (computing) Software embedded within an operating system that performs operations without informing the user • • • Main Entry: ↑root …   Useful english dictionary

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”