In the following example of Zeus bot, an executable is injected into the explorer.exe process's memory at address 0x2c70000.

జీయస్ బాట్ యొక్క ఈ క్రింది ఉదాహరణలో, 0x2c70000 చిరునామా వద్ద explorer.exe ప్రక్రియ యొక్క మెమరీలోకి ఒక ఎగ్జిక్యూటబుల్ ఇంజెక్ట్ చేయబడింది.


The hooked API is then redirected to address 0x2c7ec48 (hook address).

అప్పుడు హుక్ చేయబడిన API చిరునామా 0x2c7ec48 (హుక్ చిరునామా)కి మళ్ళించబడుతుంది.


A malicious program such as rootkit can load a kernel driver to run the code in kernel mode.

రూట్‌కిట్ వంటి హానికరమైన ప్రోగ్రామ్ కెర్నల్ మోడ్‌లో కోడ్‌ను అమలు చేయడానికి కెర్నల్ డ్రైవర్‌ను లోడ్ చేయగలదు.


Once it's running in the kernel space, it has access to the internal operating system code.

ఒకసారి అది కెర్నల్ స్పేస్‌లో నడుస్తున్న తర్వాత, అది అంతర్గత ఆపరేటింగ్ సిస్టమ్ కోడ్‌ను యాక్సెస్ చేస్తుంది.


Windows has implemented various security mechanisms that are designed to prevent the execution of unauthorized code in the kernel space.

కెర్నల్ స్పేస్‌లో అనధికారిక కోడ్ అమలును నిరోధించడానికి రూపొందించబడిన వివిధ భద్రతా విధానాలను విండోస్ అమలు చేసింది.


This makes it difficult for a rootkit to install the kernel drivers.

ఇది రూట్‌కిట్ కెర్నల్ డ్రైవర్లను ఇన్‌స్టాల్ చేయడం కష్టతరం చేస్తుంది.


Another security mechanism is Kernel Patch Protection (KPP), also known as PatchGuard, which prevents modifications to core system components.

మరొక భద్రతా విధానం కెర్నల్ ప్యాచ్ ప్రొటెక్షన్ (KPP), దీనిని ప్యాచ్‌గార్డ్ అని కూడా పిలుస్తారు, ఇది ప్రధాన సిస్టమ్ భాగాలకు మార్పులను నిరోధిస్తుంది.


ఒక పద్ధతి ఏమిటంటే బూట్‌కిట్‌ను ఇన్‌స్టాల్ చేయడం.


A Bootkit infects the early stages of the system startup process, even before the operating system is fully loaded.

ఒక బూట్‌కిట్ ఆపరేటింగ్ సిస్టమ్ పూర్తిగా లోడ్ చేయడానికి ముందే సిస్టమ్ ప్రారంభ ప్రక్రియ యొక్క ప్రారంభ దశలను ప్రభావితం చేస్తుంది.


For the rest of this chapter, we will assume that an attacker has managed to install the kernel mode driver.

ఈ అధ్యాయం మిగిలిన వాటి కోసం, ఒక దాడి చేసే వ్యక్తి కెర్నల్ మోడ్ డ్రైవర్‌ను ఇన్‌స్టాల్ చేయగలిగాడని మేము భావిస్తాము.


We will start by listing the kernel modules.

మనం కెర్నల్ మాడ్యూల్స్‌ను జాబితా చేయడం ద్వారా ప్రారంభిస్తాము.


Listing kernel modules may not always help you identify the malicious kernel driver.

కెర్నల్ మాడ్యూల్స్‌ను జాబితా చేయడం వలన హానికరమైన కెర్నల్ డ్రైవర్‌ను గుర్తించడంలో మీకు ఎల్లప్పుడూ సహాయపడకపోవచ్చు.


The modules plugin lists the kernel modules in the order in which they were loaded.

మాడ్యూల్స్ ప్లగిన్ కెర్నల్ మాడ్యూల్స్‌ను అవి లోడ్ చేయబడిన క్రమంలో జాబితా చేస్తుంది.


Since walking the doubly linked list is susceptible to DKOM attacks.

డబ్లీ లింక్డ్ జాబితాను నడవడం DKOM దాడులకు గురయ్యే అవకాశం ఉంది.


To overcome this problem, you can use another plugin named modscan.

ఈ సమస్యను అధిగమించడానికి, మీరు modscan అనే మరొక ప్లగిన్‌ను ఉపయోగించవచ్చు.


The modscan plugin relies on the pool tag scanning approach.

modscan ప్లగిన్ పూల్ ట్యాగ్ స్కానింగ్ విధానంపై ఆధారపడి ఉంటుంది.


The driverscan plugin gets the information related to kernel modules from a structure named DRIVER_OBJECT.

డ్రైవర్స్కాన్ ప్లగిన్ DRIVER_OBJECT అనే నిర్మాణం నుండి కెర్నల్ మాడ్యూల్స్‌కు సంబంధించిన సమాచారాన్ని పొందుతుంది.


After you identify the malicious kernel module, you can dump it from memory to disk using the moddump plugin.

మీరు హానికరమైన కెర్నల్ మాడ్యూల్‌ను గుర్తించిన తర్వాత, మీరు moddump ప్లగిన్‌ను ఉపయోగించి మెమరీ నుండి డిస్క్‌కు డంప్ చేయవచ్చు.


Typically, a rootkit consists of a user-mode component (EXE or DLL) and a kernel mode component (device driver).

సాధారణంగా, రూట్‌కిట్‌లో యూజర్-మోడ్ భాగం (EXE లేదా DLL) మరియు కెర్నల్ మోడ్ భాగం (పరికర డ్రైవర్) ఉంటాయి.


To overcome this problem, we can use another plugin named ldrmodules.

ఈ సమస్యను అధిగమించడానికి, మనం ldrmodules అనే మరొక ప్లగిన్‌ను ఉపయోగించవచ్చు.


The ldrmodules plugin compares module information from the three PEB lists with the information from a data structure residing in the kernel memory known as VADs.

ldrmodules ప్లగిన్ మూడు PEB జాబితాల నుండి వచ్చిన మాడ్యూల్ సమాచారాన్ని VADలు అని పిలువబడే కెర్నల్ మెమరీలో నివసించే డేటా స్ట్రక్చర్ నుండి వచ్చిన సమాచారంతో పోలుస్తుంది.


If the process memory region contains a memory-mapped file (such as an executable, DLL), then the VAD node stores information about its base address, file path, and memory protection.

ప్రక్రియ మెమరీ ప్రాంతంలో మెమరీ-మ్యాప్ చేయబడిన ఫైల్ (ఎగ్జిక్యూటబుల్, DLL వంటివి) ఉంటే, అప్పుడు VAD నోడ్ దాని బేస్ చిరునామా, ఫైల్ మార్గం మరియు మెమరీ రక్షణ గురించి సమాచారాన్ని నిల్వ చేస్తుంది.


Similarly, other VAD nodes will describe process memory ranges, including the ones that contain mapped executable images such as DLLs.

అదేవిధంగా, ఇతర VAD నోడ్‌లు DLLల వంటి మ్యాప్ చేయబడిన ఎగ్జిక్యూటబుల్ చిత్రాలను కలిగి ఉన్న వాటితో సహా ప్రాసెస్ మెమరీ పరిధులను వివరిస్తాయి.


To get the module's information, the ldrmodules plugin enumerates all the VAD nodes that contain mapped executable images and compares the results with the three PEB lists to identify any discrepancies.

మాడ్యూల్ సమాచారాన్ని పొందడానికి, ldrmodules ప్లగిన్ మ్యాప్ చేయబడిన ఎగ్జిక్యూటబుల్ చిత్రాలను కలిగి ఉన్న అన్ని VAD నోడ్‌లను లెక్కిస్తుంది మరియు ఏవైనా వ్యత్యాసాలను గుర్తించడానికి ఫలితాలను మూడు PEB జాబితాలతో పోలుస్తుంది.


You can see that the ldrmodules plugin was able to identify a malicious DLL called TDSSoiqh.dll, which hides from all the three PEB lists.

ldrmodules ప్లగిన్ TDSSoiqh.dll అనే హానికరమైన DLLని గుర్తించగలిగిందని మీరు చూడవచ్చు, ఇది మూడు PEB జాబితాల నుండి దాగి ఉంది.


To dump a process executable from memory to disk, you can use the procdump plugin.

మెమరీ నుండి డిస్క్‌కి ప్రాసెస్ ఎగ్జిక్యూటబుల్‌ను డంప్ చేయడానికి, మీరు procdump ప్లగిన్‌ను ఉపయోగించవచ్చు.


To dump the process executable, you need to know either its process ID or its physical offset.

ప్రాసెస్ ఎగ్జిక్యూటబుల్‌ను డంప్ చేయడానికి, మీరు దాని ప్రాసెస్ ID లేదా దాని భౌతిక ఆఫ్‌సెట్‌ను తెలుసుకోవాలి.


With the -D (--dump-dir) option, you specify the name of the directory in which to dump executable files.

-D (--dump-dir) ఎంపికతో, మీరు ఎగ్జిక్యూటబుల్ ఫైల్‌లను డంప్ చేయడానికి డైరెక్టరీ పేరును పేర్కొంటారు.


To dump a process with the physical offset, you can use the -o (--offset) option.

భౌతిక ఆఫ్‌సెట్‌తో ఒక ప్రక్రియను డంప్ చేయడానికి, మీరు -o (--offset) ఎంపికను ఉపయోగించవచ్చు.


Similar, to the process executable, you can dump a malicious DLL to disk using the dlldump plugin.

ప్రాసెస్ ఎగ్జిక్యూటబుల్‌కు సమానంగా, మీరు dlldump ప్లగిన్‌ని ఉపయోగించి హానికరమైన DLLని డిస్క్‌కి డంప్ చేయవచ్చు.


Most malicious programs perform some network activity.

చాలా హానికరమైన ప్రోగ్రామ్‌లు కొంత నెట్‌వర్క్ కార్యాచరణను నిర్వహిస్తాయి.


Inspecting the networking activity will help you determine the network operations of the malware on the infected system.

నెట్‌వర్కింగ్ కార్యాచరణను పరిశీలించడం వలన సోకిన సిస్టమ్‌లో మాల్వేర్ యొక్క నెట్‌వర్క్ కార్యకలాపాలను గుర్తించడంలో మీకు సహాయపడుతుంది.


To determine the active network connections on pre-vista systems, you can use the connections plugin.

ప్రీ-విస్టా సిస్టమ్‌లలో యాక్టివ్ నెట్‌వర్క్ కనెక్షన్‌లను గుర్తించడానికి, మీరు కనెక్షన్‌ల ప్లగిన్‌ను ఉపయోగించవచ్చు.


Another plugin that you can use to list the network connections on pre-vista systems is connscan.

ప్రీ-విస్టా సిస్టమ్‌లలో నెట్‌వర్క్ కనెక్షన్‌లను జాబితా చేయడానికి మీరు ఉపయోగించగల మరొక ప్లగిన్ connscan.


Sometimes, you may want to get the information about the open sockets and their associated processes.

కొన్నిసార్లు, మీరు తెరిచిన సాకెట్‌లు మరియు వాటి అనుబంధ ప్రక్రియల గురించి సమాచారాన్ని పొందాలనుకోవచ్చు.


In addition to persistence, the malware uses the registry to store configuration data, encryption keys, and so on.

నిరంతరాయంగా ఉండటంతో పాటు, మాల్వేర్ కాన్ఫిగరేషన్ డేటా, ఎన్‌క్రిప్షన్ కీలు మొదలైనవాటిని నిల్వ చేయడానికి రిజిస్ట్రీని ఉపయోగిస్తుంది.


To print the registry key, subkeys, and its values, you can use the printkey plugin.

రిజిస్ట్రీ కీ, సబ్‌కీలు మరియు దాని విలువలను ప్రింట్ చేయడానికి, మీరు printkey ప్లగిన్‌ను ఉపయోగించవచ్చు.


The Userassist registry key contains a list of programs that have been executed by the user on the system and the time when the program was run.

Userassist రిజిస్ట్రీ కీలో సిస్టమ్‌లో వినియోగదారు ద్వారా అమలు చేయబడిన ప్రోగ్రామ్‌ల జాబితా మరియు ప్రోగ్రామ్ నడుస్తున్న సమయం ఉంటుంది.


Command history can provide valuable information about an attacker's activity on the compromised system.

కమాండ్ హిస్టరీ రాజీపడిన సిస్టమ్‌లో దాడి చేసేవారి కార్యాచరణ గురించి విలువైన సమాచారాన్ని అందించగలదు.


During initialization, the driver updates the Major function table with dispatch routine addresses.

ప్రారంభ సమయంలో, డ్రైవర్ మేజర్ ఫంక్షన్ పట్టికను డిస్పాచ్ రొటీన్ చిరునామాలతో అప్‌డేట్ చేస్తుంది.


Examining the major function table helps understand the operations supported by the driver.

ప్రధాన ఫంక్షన్ పట్టికను పరిశీలించడం ద్వారా డ్రైవర్ ద్వారా మద్దతు ఇచ్చే కార్యకలాపాలను అర్థం చేసుకోవచ్చు.


The major function table is an array of 28 function pointers.

ప్రధాన ఫంక్షన్ పట్టిక 28 ఫంక్షన్ పాయింటర్ల శ్రేణి.


Index values 0 to 27 represent a particular operation.

సూచిక విలువలు 0 నుండి 27 వరకు ఒక నిర్దిష్ట ఆపరేషన్‌ను సూచిస్తాయి.


For example, index value 0 corresponds to IRP_MJ_CREATE.

ఉదాహరణకు, సూచిక విలువ 0 IRP_MJ_CREATEకి అనుగుణంగా ఉంటుంది.


If an application wants to open a file, the request goes to the I/O manager.

ఒక అప్లికేషన్ ఫైల్‌ను తెరవాలనుకుంటే, అభ్యర్థన I/O మేనేజర్‌కు వెళుతుంది.


The I/O manager uses IRP_MJ_CREATE to find the dispatch routine.

డిస్పాచ్ రొటీన్‌ను కనుగొనడానికి I/O మేనేజర్ IRP_MJ_CREATEని ఉపయోగిస్తుంది.


Similarly, IRP_MJ_READ is used for the read operation.

అదేవిధంగా, IRP_MJ_READ రీడ్ ఆపరేషన్ కోసం ఉపయోగించబడుతుంది.


The null.sys driver only supports specific operations.

null.sys డ్రైవర్ నిర్దిష్ట కార్యకలాపాలకు మాత్రమే మద్దతు ఇస్తుంది.


Supported operations are dispatched to the appropriate dispatch routine.

మద్దతు ఉన్న కార్యకలాపాలు తగిన డిస్పాచ్ రొటీన్‌కు పంపబడతాయి.


When a write operation is performed, the request goes to MajorFunction[IRP_MJ_WRITE].

రాత ఆపరేషన్ చేసినప్పుడు, అభ్యర్థన MajorFunction[IRP_MJ_WRITE]కి వెళుతుంది.


In the case of null.sys, all operations go to the same address.

null.sys విషయంలో, అన్ని కార్యకలాపాలు ఒకే చిరునామాకు వెళతాయి.


Normally, different operations have different routine addresses.

సాధారణంగా, వివిధ కార్యకలాపాలకు వేర్వేరు రొటీన్ చిరునామాలు ఉంటాయి.


The I/O manager creates an IRP to describe the I/O request.

I/O అభ్యర్థనను వివరించడానికి I/O మేనేజర్ ఒక IRPని సృష్టిస్తుంది.


The IRP contains a buffer for data transfer.

డేటా బదిలీ కోసం IRP ఒక బఫర్‌ను కలిగి ఉంటుంది.


The driver receives the IRP and performs a check.

డ్రైవర్ IRPని అందుకుంటుంది మరియు ఒక తనిఖీ చేస్తుంది.


The driver then initiates the I/O operation.

అప్పుడు డ్రైవర్ I/O ఆపరేషన్‌ను ప్రారంభిస్తుంది.


The driver returns the IRP to the I/O manager upon completion.

పూర్తయిన తర్వాత డ్రైవర్ IRPని I/O మేనేజర్‌కు తిరిగి ఇస్తుంది.


The I/O manager returns status and data to the user mode application.

I/O మేనేజర్ స్థితి మరియు డేటాను యూజర్ మోడ్ అప్లికేషన్‌కు తిరిగి ఇస్తుంది.


User-mode code communicates with the kernel-mode driver.

యూజర్-మోడ్ కోడ్ కెర్నల్-మోడ్ డ్రైవర్‌తో కమ్యూనికేట్ చేస్తుంది.


The program's execution can be interrupted with breakpoints.

బ్రోక్‌పాయింట్‌లతో ప్రోగ్రామ్ అమలును నిరోధించవచ్చు.


Conditional jumps are used in the program.

ప్రోగ్రామ్‌లో షరతులతో కూడిన జంప్‌లను ఉపయోగిస్తారు.


Disassembly is a challenge in reverse engineering.

రివర్స్ ఇంజనీరింగ్‌లో డిస్‌అసెంబ్లీ ఒక సవాలు.


If/else statements are fundamental to programming logic.

ప్రోగ్రామింగ్ లాజిక్‌కు if/else స్టేట్‌మెంట్‌లు చాలా ముఖ్యమైనవి.


Unconditional jumps alter the program's flow.

షరతులు లేని జంప్‌లు ప్రోగ్రామ్ ప్రవాహాన్ని మారుస్తాయి.


Software breakpoints are a debugging technique.

సాఫ్ట్‌వేర్ బ్రేక్‌పాయింట్‌లు డీబగ్గింగ్ చేసే ఒక పద్ధతి.


Hardware breakpoints can be set for debugging.

డీబగ్గింగ్ కోసం హార్డ్‌వేర్ బ్రేక్‌పాయింట్‌లను సెట్ చేయవచ్చు.


Memory breakpoints help in identifying memory access.

మెమరీ యాక్సెస్‌ను గుర్తించడంలో మెమరీ బ్రేక్‌పాయింట్‌లు సహాయపడతాయి.


Setting breakpoints in IDA is a common practice.

IDAలో బ్రేక్‌పాయింట్‌లను సెట్ చేయడం ఒక సాధారణ పద్ధతి.


Setting breakpoints in x64dbg is also possible.

x64dbgలో బ్రేక్‌పాయింట్‌లను సెట్ చేయడం కూడా సాధ్యమే.


Code analysis is a crucial step in understanding malware.

మాల్వేర్‌ను అర్థం చేసుకోవడానికి కోడ్ విశ్లేషణ ఒక ముఖ్యమైన దశ.


DLL injection is a technique used by attackers.

DLL ఇంజెక్షన్ అనేది దాడి చేసేవారు ఉపయోగించే ఒక పద్ధతి.


Detecting code injection is important for security.

కోడ్ ఇంజెక్షన్‌ను గుర్తించడం భద్రతకు చాలా ముఖ్యం.


Command and Control (C2) is a key aspect of botnets.

కమాండ్ అండ్ కంట్రోల్ (C2) అనేది బాట్‌నెట్‌లకు సంబంధించిన ఒక ముఖ్యమైన అంశం.


Extracting command history can reveal malicious activity.

కమాండ్ హిస్టరీని సంగ్రహించడం ద్వారా హానికరమైన కార్యకలాపాలను వెల్లడి చేయవచ్చు.


CPU registers store important data during execution.

ఎగ్జిక్యూషన్ సమయంలో CPU రిజిస్టర్‌లు ముఖ్యమైన డేటాను నిల్వ చేస్తాయి.


The EFLAGS register contains flags for the CPU.

EFLAGS రిజిస్టర్ CPU కోసం ఫ్లాగ్‌లను కలిగి ఉంటుంది.


Data transfer instructions move data between registers and memory.

డేటా బదిలీ సూచనలు రిజిస్టర్‌లు మరియు మెమరీ మధ్య డేటాను తరలిస్తాయి.


Debugging concepts are essential for understanding program behavior.

ప్రోగ్రామ్ ప్రవర్తనను అర్థం చేసుకోవడానికి డీబగ్గింగ్ భావనలు చాలా అవసరం.


Dynamic analysis helps in understanding malware behavior during runtime.

రన్‌టైమ్‌లో మాల్వేర్ ప్రవర్తనను అర్థం చేసుకోవడానికి డైనమిక్ విశ్లేషణ సహాయపడుతుంది.


The output shows the entry from the clean system.

ఈ అవుట్‌పుట్ శుభ్రమైన సిస్టమ్ నుండి ఎంట్రీని చూపుతుంది.


You can see that the 0xC3 entry in the IDT is pointing to an address in the UNKNOWN module.

మీరు IDTలోని 0xC3 ఎంట్రీ UNKNOWN మాడ్యూల్‌లోని చిరునామాను సూచిస్తుందని చూడవచ్చు.


In other words, the hooked entry resides outside the range of the ntoskrnl.exe module.

అంటే, హుక్ చేయబడిన ఎంట్రీ ntoskrnl.exe మాడ్యూల్ పరిధికి వెలుపల ఉంది.


Detecting Advanced Malware Using Memory Forensics

మెమరీ ఫోరెన్సిక్స్ ఉపయోగించి అధునాతన మాల్వేర్‌ను గుర్తించడం


Instead of replacing the pointers in the SSDT, which makes it easy to recognize, an attacker can modify the kernel function.

గుర్తించడం సులభతరం చేసే SSDTలోని పాయింటర్‌లను మార్చడానికి బదులుగా, ఒక దాడి చేసే వ్యక్తి కెర్నల్ ఫంక్షన్‌ను సవరించవచ్చు.


You can use the apihooks plugin to detect inline hooking in the kernel space.

కెర్నల్ స్పేస్‌లో ఇన్‌లైన్ హుకింగ్‌ను గుర్తించడానికి మీరు apihooks ప్లగిన్‌ను ఉపయోగించవచ్చు.


The hooked API functions are redirected to the 0xb878dfb2 and 0xb878e6bb addresses within a malicious module.

హుక్ చేయబడిన API ఫంక్షన్లు 0xb878dfb2 మరియు 0xb878e6bb చిరునామాలకు ఒక హానికరమైన మాడ్యూల్‌లో మళ్లించబడతాయి.


Even though the name of the hooking module is unknown, it is still possible to detect the malicious kernel module.

హుకింగ్ మాడ్యూల్ పేరు తెలియకపోయినా, హానికరమైన కెర్నల్ మాడ్యూల్‌ను గుర్తించడం ఇప్పటికీ సాధ్యమే.


In this case, we know the API functions are redirected to addresses starting with 0xb87 within the malicious module.

ఈ సందర్భంలో, API ఫంక్షన్లు హానికరమైన మాడ్యూల్‌లో 0xb87తో ప్రారంభమయ్యే చిరునామాలకు మళ్లించబడతాయని మాకు తెలుసు.


Running the modules plugin does not detect any module at that address range.

మాడ్యూల్స్ ప్లగిన్‌ను అమలు చేయడం వలన ఆ చిరునామా పరిధిలో ఎటువంటి మాడ్యూల్‌ను గుర్తించదు.


You can clearly see that the hook addresses 0xb878dfb2 and 0xb878e6bb fall within the address range of TDSSserv.sys.

హుక్ చిరునామాలు 0xb878dfb2 మరియు 0xb878e6bb TDSSserv.sys చిరునామా పరిధిలోకి వస్తున్నాయని మీరు స్పష్టంగా చూడవచ్చు.


At this point, we have successfully identified the malicious driver.

ఈ సమయంలో, మేము విజయవంతంగా హానికరమైన డ్రైవర్‌ను గుర్తించాము.


You can now dump the driver to disk for further analysis.

మీరు ఇప్పుడు మరింత విశ్లేషణ కోసం డ్రైవర్‌ను డిస్క్‌కు డంప్ చేయవచ్చు.


Instead of hooking the kernel API functions, a rootkit can modify the entries in the major function table.

కెర్నల్ API ఫంక్షన్లను హుక్ చేయడానికి బదులుగా, రూట్‌కిట్ ప్రధాన ఫంక్షన్ పట్టికలోని ఎంట్రీలను సవరించవచ్చు.


For example, a rootkit can inspect the data buffer that is written to a disk or network.

ఉదాహరణకు, రూట్‌కిట్ డిస్క్ లేదా నెట్‌వర్క్‌కు వ్రాసిన డేటా బఫర్‌ను తనిఖీ చేయవచ్చు.


Normally, the IRP handler functions of a driver point within their own module.

సాధారణంగా, డ్రైవర్ యొక్క IRP హ్యాండ్లర్ ఫంక్షన్లు వాటి స్వంత మాడ్యూల్‌లో సూచిస్తాయి.


To detect IRP hooks, you can focus on IRP handler functions that point to another driver.

IRP హుక్‌లను గుర్తించడానికి, మీరు మరొక డ్రైవర్‌ను సూచించే IRP హ్యాండ్లర్ ఫంక్షన్లపై దృష్టి పెట్టవచ్చు.


If you are analyzing the rootkit in a lab setup, then you can list the IRP functions of all the drivers.

మీరు ల్యాబ్ సెటప్‌లో రూట్‌కిట్‌ను విశ్లేషిస్తుంటే, మీరు అన్ని డ్రైవర్ల IRP ఫంక్షన్లను జాబితా చేయవచ్చు.


The following output from the modscan displays the malicious driver.

modscan నుండి వచ్చిన కింది అవుట్‌పుట్ హానికరమైన డ్రైవర్‌ను ప్రదర్శిస్తుంది.


Some rootkits use indirect IRP hooking to avoid suspicion.

కొన్ని రూట్‌కిట్‌లు అనుమానాన్ని నివారించడానికి పరోక్ష IRP హుకింగ్‌ను ఉపయోగిస్తాయి.