Rootkits are malicious software that gives hackers the full administrator rights of your PC. It helps hackers in changing or altering the system settings or files the way an administrator could do. It creates a backdoor for other users to log in and provides full access to the system.
What is Rootkit?
The rootkit is derived from two words Root and Kit. The Root is referred to as a full access user account in the Unix based operating systems. While the Kit word represents as a collection of tools. Meaning a collection of tools to access the root account.
Initially, the rootkit was developed as legitimate software. The developers of the operating system intended to use it as backdoor access to fix the software issues at a later stage. Unfortunately, now the rootkit is primarily used for illicit activities such as hacking.
The attackers could plant the rootkit in fake software to enter in your system, or they can directly attack the operating system and install the rootkit after getting access to the administrator account. Their primary objective is to get the access of the system without locking it down and getting detected. Rootkit help them to do that.
Rootkit gives the full access rights meaning they could even alter the program that is supposed to catch it so that it can hide in the plain sight. Your antivirus will tell you everything is Okay, while the hackers could access your system.
The First Rootkits
The first rootkit is believed written in 1990 by Lane Davis and Riley Dake. It was written for the Sun operating system which was based on Unix architecture. The first public Windows rootkit was NTRootkit appeared in 1999 written by Greg Hoglund. The first rootkit on the Mac OS appeared in 2009.
Since the first rootkit, there have been several advanced rootkits developed.
Why is it used?
A rootkit is primarily used for malicious activities like stealing confidential information such as password and credit card information. It is also used to enhance the security of the computer system by the users.
In Negative Way-
- Rootkits are used to get the full access of a system for stealing information. It bypasses the standard authentication mechanism and provides backdoor access to the hacker.
- It can be used to plan an attack on another computer system and use the infected system as a zombie computer. Cybercriminal does that to avoid getting caught after an attack. The infected computer could become a member of a massive botnet that could launch several attacks.
- Rootkits can also be used to hide other malware such as keyloggers and spyware. It can alter your antivirus so that it doesn’t catch them. It even hides the process and services.
- It can be used to hide a large number of illegal files on your computer without you noticing.
- Rootkits can be used to hide cheating activity in an online game.
- It is also used to bypass the Microsoft Product Activation.
In Positive Way-
- Rootkits are used to enforce Digital Rights Management (DRM). It prevents the copying, modifying, and distribution of digital content such as software, games, movies, and music.
- It can be used to detect attacks or to bait the cybercriminals.
- It is used to enhance the security software. For example, the security software could use the rootkits to monitor the system activity.
- Rootkits are used in anti-theft protection. It provides a backdoor to the owner to access, locate, wipe the information in case the device is stolen.
Types of Rootkits
There are several types of rootkits that have different purposes.
Such rootkits operate on the application level. They are intended to replace the files of the application to modify them. It could also inject the code in the applications to change their behavior.
Such rootkits operate with the highest system privileges. They could add or replace the core system files. Such rootkits are difficult to detect as they can change almost anything to avoid detection.
It changes the startup of the operating system by modifying MBR, VBR, or boot sector. The Bootkit is used to load the rootkit before the operating system start. It also operates at the kernel level and can be used to access the full disk encryption devices.
Memory rootkits operate from system memory. Such rootkits perform the payload from the RAM and hide there to avoid the detection.
Firmware and Hardware Rootkits
Such rootkits use the firmware or the hardware to attack. It could be in the BIOS, network card, or in the router. Firmware codes are not usually checked for infections, and that’s how they avoid the detection. Such rootkits are hard to remove as they come back even after re-installing the operating system. Only, detecting the hardware and replacing it is a solution.
How Rootkit enters in your System?
Rootkits use several strategies to enter in your system. The attacker could exploit a system vulnerability, or lure you with fake software, or can install rootkits physically.
Exploiting System Vulnerability
Hackers take advantage of the security vulnerability to infect the user’s computer. This vulnerability could be in the operating system or the applications. To protect yourself always install the security patches and updates to your OS and applications.
Using Trojan Horse
Attackers could use the trojan horse to infiltrate your system. They could decoy the rootkit as a legitimate software that has unique benefits. Hackers use social engineering methods to infect users with this method. To avoid getting infected, we should not install software from untrusted sources.
Attackers could infect your computer with rootkits, in case they have physical access to your device. Such methods are used to deploy the kernel rootkits and bootkit.
In some cases, the owner itself install rootkits in their device to obtain some task like monitoring the employees.
The Detection Techniques
Since the detection of rootkits is not easy, several techniques can be used all together to catch the culprit.
In this method, the behavior of programs are analyzed, and if they take actions like rootkits, they are detected. The action depicts when there is a change in system files, differences in the timing and frequency of API calls, or considering the overall CPU utilization.
Antivirus analyses the signature of the programs and detects the rootkits if its signature matches from the database. This strategy is beneficial catching known and well-published rootkits but won’t work in case if the rootkit is new and custom made.
In this method, the difference in the data returned by an API is calculated. It checks the difference between trusted raw data and tainted content. Such a mechanism was used by Russinovich’s RootkitRevealer tool. It was used to detect the Sony DRM Rootkit.
This method checks the system files for modifications since the installation. A cryptographic hash function can be used to create the fingerprint at the installation time, and it helps to know when a system change occurs. The fingerprint should be recreated in case of a system update.
Booting on Different Medium
This method of detection is reliable in case of kernel rootkits that gets loads up before the operating system loads. It is done by booting from a different medium and then analyzing the storage for rootkits. This method works excellent because rootkits couldn’t hide if it is not running.